Difference between revisions of "Gametype Scripting"

From Warfork
Jump to: navigation, search
(Add Cvar, fix some Vec3 stuff)
(Header file documentation is wrong)
Line 105: Line 105:
 
| CVAR_LATCH_VIDEO || Save changes until a video restart
 
| CVAR_LATCH_VIDEO || Save changes until a video restart
 
|-
 
|-
| CVAR_LATCH_AUDIO || Save changes until a video restart (!?)
+
| CVAR_LATCH_AUDIO || Save changes until a sound restart
 
|-
 
|-
 
| CVAR_CHEAT || Reset to default unless cheats are enabled
 
| CVAR_CHEAT || Reset to default unless cheats are enabled

Revision as of 21:25, 29 March 2020

Page in progress.

Types

Vec3

Constructor Description
Vec3() Initializes x,y,z to zero.
Vec3(float v) Initializes x,y,z to v.
Vec3(float x, float y, float z) Initializes x,y,z with the given values for each.
Vec3(Vec3 &in) Copy constructor. Initializes x,y,z to the values on the supplied Vec3.
Property Description R/W
float x The x component of the vector. RW
float y The y component of the vector. RW
float z The z component of the vector. RW
Method Description
void set(float x, float y, float z) Sets the x,y,z components on the vector to the supplied values.
float length() Returns the magnitude of the vector.
float normalize() Normalizes the vector and returns the magnitude pre-normalization.
float distance(Vec3 &other) Returns the distance between the tips of this vector and the supplied vector.
void angleVectors(Vec3 &f, Vec3 &r, Vec3 &u) Sets the provided vectors as rotations about the forward, right, and up axes (?)
Vec3 toAngles() Returns a vector representing the current vector as a rotation.
Vec3 perpendicular() Returns the vector perpendicular to this vector.
void makeNormalVectors(Vec3 &r, Vec3 &u) Returns the normal and binormal vector of the current vector (assumed to be the tangent/forward).

The mathematical operators are overloaded for vectors and perform the equivalent vector operation.

Cvar

Constructor Description
Cvar(String &name, String &value, uint flags) Creates the cvar "name" if it does not exist, with the given value and flags. If the cvar exists, the value is unused, and the supplied flags are set if they are not already set on the cvar.
Cvar(Cvar &other) Copy constructor.
Property Description R/W
bool modified Example RW
bool boolean The value of the cvar as a bool R
int integer The value of the cvar as an int R
float value The value of the cvar as a float R
String@ name The name of cvar R
String@ string The value of the cvar as a string R
String@ defaultString The default value of the cvar R
String@ latchedString If the cvar has CVAR_LATCH or a variant, the value after a map/video restart R
Header text Header text
void reset() Resets the value of the cvar to its default value.
void set(String &value) Sets the value of the cvar to the supplied string.
void set(float value) Sets the value of the cvar to the supplied float.
void set(int value) Sets the value of the cvar to the supplied integer. Note: cast to float internally
void set(double value) Sets the value of the cvar to the supplied double. Note: cast to float internally
Enum Value Description
CVAR_ARCHIVE Save to vars.rc
CVAR_USERINFO Added to userinfo when changed
CVAR_SERVERINFO Added to serverinfo when changed
CVAR_NOSET Only settable from command line
CVAR_LATCH Save changes until a map restart
CVAR_LATCH_VIDEO Save changes until a video restart
CVAR_LATCH_AUDIO Save changes until a sound restart
CVAR_CHEAT Reset to default unless cheats are enabled
CVAR_READONLY not user-changeable
[Not present in angelscript] CVAR_DEVELOPER only visible/changeable in dev builds