Quake c string
Quake C strings are one of the primitive types of Quake C. They are zero-terminated sequences of characters (meaning a series of ascii letters). Vanilla quake c offers no straightforward ways to modify a string once it is created and no way to combine existing strings into a new string.
In quake-c code, double quotation marks delimit the start and end of a string.
local string myString = "The Rune of Black Magic throbs evilly in your hand";
Escape Charaters
Much like the C programming language, strings in QuakeC have escape characters:
character | result |
---|---|
\n | new line |
\" | " |
\0 | unknown |
{{ | { |
}} | } |
Uses
In Quake-C strings are used for
- FileNames
precache_model ("progs/wizard.mdl");
- text output
sprint (self, "not enough ammo.\n");
- identifiers
if (self.classname == "monster_ogre")
- lighting
lightstyle(1, "mmnmmommommnonmmonqnmmo");
- commands
stuffcmd (other, "bf\n");
- cvars
timelimit = cvar("timelimit") * 60;
- find
le2 = find( le1, target, "lightning");
Trivia
The 2021 release uses curly-braces as a delimiter/replacement shorthand
Searching through the existing entities in the world of quake can be done by strings
Strings can be printed/output to screen with a number of different methods
The maximum length of a string is 2048 characters
see also:
ftos creates a string from a floating point number
vtos creates a string representation of a vector
WriteString - sends a string to the quake engine