void() CSQC_Shutdown;
float(float f, float t, float n) CSQC_InputEvent;
void(float w, float h) CSQC_UpdateView;
-float(string s) CSQC_ConsoleCommand;
+bool(string s) CSQC_ConsoleCommand;
//these fields are read and set by the default player physics
vector pmove_org;
//
// system fields (*** = do not set in prog code, maintained by C code)
//
-.float modelindex; // *** model index in the precached list
+.int modelindex; // *** model index in the precached list
.vector absmin, absmax; // *** origin + mins / maxs
.int entnum; // *** the ent number as on the server
.string classname; // spawn function
.string model;
-.float frame;
-.float skin;
+.int frame;
+.int skin;
.int effects;
.vector mins, maxs; // bounding box extents reletive to origin
const int VF_PERSPECTIVE = 200;
-const int STAT_HEALTH = 0;
-const int STAT_WEAPONMODEL = 2;
-const int STAT_AMMO = 3;
-const int STAT_ARMOR = 4;
-const int STAT_WEAPONFRAME = 5;
-const int STAT_SHELLS = 6;
-const int STAT_NAILS = 7;
-const int STAT_ROCKETS = 8;
-const int STAT_CELLS = 9;
-const int STAT_ACTIVEWEAPON = 10;
-const int STAT_TOTALSECRETS = 11;
-const int STAT_TOTALMONSTERS = 12;
-const int STAT_SECRETS = 13;
-const int STAT_MONSTERS = 14;
-const int STAT_ITEMS = 15;
-const int STAT_VIEWHEIGHT = 16;
+//const int STAT_HEALTH = 0;
+//const int STAT_WEAPONMODEL = 2;
+//const int STAT_AMMO = 3;
+//const int STAT_ARMOR = 4;
+//const int STAT_WEAPONFRAME = 5;
+//const int STAT_SHELLS = 6;
+//const int STAT_NAILS = 7;
+//const int STAT_ROCKETS = 8;
+//const int STAT_CELLS = 9;
+//const int STAT_ACTIVEWEAPON = 10;
+//const int STAT_TOTALSECRETS = 11;
+//const int STAT_TOTALMONSTERS = 12;
+//const int STAT_SECRETS = 13;
+//const int STAT_MONSTERS = 14;
+//const int STAT_ITEMS = 15;
+//const int STAT_VIEWHEIGHT = 16;
// Quake Sound Constants
const int CHAN_AUTO = 0;
const vector VEC_0 = '0 0 0';
const vector VEC_M1 = '-1 -1 -1';
-const float M_PI = 3.14159265358979323846;
+//const float M_PI = 3.14159265358979323846;
vector VEC_HULL_MIN = '-16 -16 -24';
vector VEC_HULL_MAX = '16 16 32';
float(string s) checkextension = #99;
// FrikaC and Telejano range #100-#199
-float(string filename, float mode) fopen = #110;
+int(string filename, int mode) fopen = #110;
void(float fhandle) fclose = #111;
string(float fhandle) fgets = #112;
void(float fhandle, string s) fputs = #113;
float(vector position, string text, vector scale, float alpha, float flag) drawcolorcodedstring = #326;
vector(vector position, string text, vector scale, vector rgb, float alpha, float flag) drawcolorcodedstring2 = #326;
-float(float stnum) getstatf = #330;
-float(float stnum, ...) getstati = #331; // can optionally take first bit and count
+float(int stnum) getstatf = #330;
+int(int stnum, ...) getstati = #331; // can optionally take first bit and count
string(float firststnum) getstats = #332;
void(entity e, float mdlindex) setmodelindex = #333;
string(float mdlindex) modelnameforindex = #334;
-float(string effectname) particleeffectnum = #335;
+int(string effectname) particleeffectnum = #335;
void(entity ent, float effectnum, vector start, vector end) trailparticles = #336;
//void(float effectnum, vector origin [, vector dir, float count]) pointparticles = #337;
void(float effectnum, vector origin , vector dir, float count) pointparticles = #337;
void(entity own, vector start, vector end) te_beam = #431;
void(vector dir) vectorvectors = #432;
void(vector org) te_plasmaburn = #433;
-float(entity e, float s) getsurfacenumpoints = #434;
-vector(entity e, float s, float n) getsurfacepoint = #435;
-vector(entity e, float s) getsurfacenormal = #436;
-string(entity e, float s) getsurfacetexture = #437;
-float(entity e, vector p) getsurfacenearpoint = #438;
-vector(entity e, float s, vector p) getsurfaceclippedpoint = #439;
-
-float(string s) tokenize = #441;
+//float(entity e, float s) getsurfacenumpoints = #434;
+//vector(entity e, float s, float n) getsurfacepoint = #435;
+//vector(entity e, float s) getsurfacenormal = #436;
+//string(entity e, float s) getsurfacetexture = #437;
+//float(entity e, vector p) getsurfacenearpoint = #438;
+//vector(entity e, float s, vector p) getsurfaceclippedpoint = #439;
+
+int(string s) tokenize = #441;
string(float n) argv = #442;
void(entity e, entity tagentity, string tagname) setattachment = #443;
float(string pattern, float caseinsensitive, float quiet) search_begin = #444;
string(string s) cvar_string = #448;
entity(entity start, .float fld, float match) findflags = #449;
entity(.float fld, float match) findchainflags = #450;
-float(entity ent, string tagname) gettagindex = #451;
+int(entity ent, string tagname) gettagindex = #451;
vector(entity ent, float tagindex) gettaginfo = #452;
void(vector org, vector vel, float howmany) te_flamejet = #457;
entity(float num) entitybyindex = #459;
-float() buf_create = #460;
+int() buf_create = #460;
void(float bufhandle) buf_del = #461;
float(float bufhandle) buf_getsize = #462;
void(float bufhandle_from, float bufhandle_to) buf_copy = #463;
float(float bufhandle, string str, float order) bufstr_add = #468;
void(float bufhandle, float string_index) bufstr_free = #469;
-float(float s) asin = #471;
-float(float c) acos = #472;
-float(float t) atan = #473;
-float(float c, float s) atan2 = #474;
-float(float a) tan = #475;
+//float(float s) asin = #471;
+//float(float c) acos = #472;
+//float(float t) atan = #473;
+//float(float c, float s) atan2 = #474;
+//float(float a) tan = #475;
float(string s) strippedstringlen = #476;
float(string s) strlennocol = #476; // This is the correct name for the function, but not removing the decolorizedstring mapping.
string(string s) decolorizedstring = #477;
void(vector origin, string sample, float volume, float attenuation) pointsound = #483;
string(string search, string replace, string subject) strreplace = #484;
string(string search, string replace, string subject) strireplace = #485;
-vector(entity e, float s, float n, float a) getsurfacepointattribute = #486;
+//vector(entity e, float s, float n, float a) getsurfacepointattribute = #486;
#ifdef SUPPORT_GECKO
float gecko_create( string name ) = #487;
void gecko_destroy( string name ) = #488;
//idea: Electro, SavageX, LordHavoc
//darkplaces implementation: LordHavoc
//builtin definitions:
-float(string s, string separator1, ...) tokenizebyseparator = #479;
+int(string s, string separator1, ...) tokenizebyseparator = #479;
//description:
//this function returns tokens separated by any of the supplied separator strings, example:
//numnumbers = tokenizebyseparator("10.2.3.4", ".");
//idea: divVerent
//darkplaces implementation: divVerent
//builtin definitions:
-float(string s) tokenize_console = #514;
-float(float i) argv_start_index = #515;
-float(float i) argv_end_index = #516;
+int(string s) tokenize_console = #514;
+int(float i) argv_start_index = #515;
+int(float i) argv_end_index = #516;
//description:
//this function returns tokens separated just like the console does
//also, functions are provided to get the index of the first and last character of each token in the original string
float(float modlindex, float framenum) frameduration = #277; // returns the intended play time (in seconds) of the specified framegroup, if it does not exist the result is 0, if it is a single frame it may be a small value around 0.1 or 0.
//fields:
.float skeletonindex; // active skeleton overriding standard animation on model
-.float frame; // primary framegroup animation (strength = 1 - lerpfrac - lerpfrac3 - lerpfrac4)
-.float frame2; // secondary framegroup animation (strength = lerpfrac)
-.float frame3; // tertiary framegroup animation (strength = lerpfrac3)
-.float frame4; // quaternary framegroup animation (strength = lerpfrac4)
+.int frame; // primary framegroup animation (strength = 1 - lerpfrac - lerpfrac3 - lerpfrac4)
+.int frame2; // secondary framegroup animation (strength = lerpfrac)
+.int frame3; // tertiary framegroup animation (strength = lerpfrac3)
+.int frame4; // quaternary framegroup animation (strength = lerpfrac4)
.float lerpfrac; // strength of framegroup blend
.float lerpfrac3; // strength of framegroup blend
.float lerpfrac4; // strength of framegroup blend
v_y = u * parentright;
v_z = u * parentup;
vector ang = vectoangles2(v, relup);
- ang_x = 0 - ang_x;
+ ang_x = 0 - ang.x;
makevectors(ang);
// set the relative bone matrix
skel_set_bone(self.skeletonindex, bonenum, relorg);
void(entity e, string s) parseentitydata = #608;
// assorted builtins
-const float STAT_MOVEVARS_TICRATE = 240;
-const float STAT_MOVEVARS_TIMESCALE = 241;
-const float STAT_FRAGLIMIT = 235;
-const float STAT_TIMELIMIT = 236;
-const float STAT_MOVEVARS_GRAVITY = 242;
-string(void) ReadPicture = #501;
+//const int STAT_MOVEVARS_TICRATE = 240;
+//const int STAT_MOVEVARS_TIMESCALE = 241;
+//const int STAT_FRAGLIMIT = 235;
+//const int STAT_TIMELIMIT = 236;
+//const int STAT_MOVEVARS_GRAVITY = 242;
+string(void) ReadPicture = #501;
const int PARTICLES_USEALPHA = 1;
float particles_alphamin, particles_alphamax;
const int PARTICLES_USECOLOR = 2;