These are the files that make up the csqc module for the inventory.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1757 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
parent
23ae28f5e8
commit
2f4063ce2e
8 changed files with 639 additions and 0 deletions
9
quakec/fallout2/csprogs.src
Normal file
9
quakec/fallout2/csprogs.src
Normal file
|
@ -0,0 +1,9 @@
|
|||
../csprogs.dat
|
||||
|
||||
csqc/system.qc
|
||||
csqc/stdbuiltins.qc
|
||||
csqc/builtins.qc
|
||||
csqc/stdconstants.qc
|
||||
csqc/constants.qc
|
||||
csqc/invent.qc
|
||||
csqc/main.qc
|
75
quakec/fallout2/csqc/builtins.qc
Normal file
75
quakec/fallout2/csqc/builtins.qc
Normal file
|
@ -0,0 +1,75 @@
|
|||
|
||||
//csqc only builtins.
|
||||
|
||||
void() clearscene = #300; // (EXT_CSQC)
|
||||
void(float mask) addentities = #301; // (EXT_CSQC)
|
||||
void(entity ent) addentity = #302; // (EXT_CSQC)
|
||||
float(float property, ...) setviewprop = #303; // (EXT_CSQC)
|
||||
void() renderscene = #304; // (EXT_CSQC)
|
||||
|
||||
void(vector org, float radius, vector lightcolours) adddynamiclight = #305; // (EXT_CSQC)
|
||||
|
||||
//void(string texturename) R_BeginPolygon = #306; // (EXT_CSQC_???)
|
||||
//void(vector org, vector texcoords, vector rgb, float alpha) R_PolygonVertex = #307; // (EXT_CSQC_???)
|
||||
//void() R_EndPolygon = #308; // (EXT_CSQC_???)
|
||||
|
||||
//maths stuff that uses the current view settings.
|
||||
vector (vector v) unproject = #310; // (EXT_CSQC)
|
||||
vector (vector v) project = #311; // (EXT_CSQC)
|
||||
|
||||
//2d (immediate) operations
|
||||
void(float width, vector pos1, vector pos2) drawline = #315; // (EXT_CSQC)
|
||||
float(string name) iscachedpic = #316; // (EXT_CSQC)
|
||||
string(string name, float trywad) precache_pic = #317; // (EXT_CSQC)
|
||||
vector(string picname) draw_getimagesize = #318; // (EXT_CSQC)
|
||||
void(string name) freepic = #319; // (EXT_CSQC)
|
||||
float(vector position, float character, vector scale, vector rgb, float alpha, ...) drawcharacter = #320; // (EXT_CSQC, [EXT_CSQC_???])
|
||||
float(vector position, string text, vector scale, vector rgb, float alpha, ...) drawstring = #321; // (EXT_CSQC, [EXT_CSQC_???])
|
||||
float(vector position, string pic, vector size, vector rgb, float alpha, ...) drawpic = #322; // (EXT_CSQC, [EXT_CSQC_???])
|
||||
float(vector position, vector size, vector rgb, float alpha, ...) drawfill = #323; // (EXT_CSQC, [EXT_CSQC_???])
|
||||
void(float x, float y, float width, float height) drawsetcliparea = #324; // (EXT_CSQC_???)
|
||||
void(void) drawresetcliparea = #325; // (EXT_CSQC_???)
|
||||
|
||||
float(float stnum) getstatf = #330; // (EXT_CSQC)
|
||||
float(float stnum) getstati = #331; // (EXT_CSQC)
|
||||
float(float stnum, float first, float count) getstatbits = #331; // (EXT_CSQC)
|
||||
string(float firststnum) getstats = #332; // (EXT_CSQC)
|
||||
void(entity e, float mdlindex) setmodelindex = #333; // (EXT_CSQC)
|
||||
string(float mdlindex) modelnameforindex = #334; // (EXT_CSQC)
|
||||
|
||||
float(string effectname) particleeffectforname = #335; // (EXT_CSQC)
|
||||
void(float effectnum, entity ent, vector start, vector end) trailparticles = #336; // (EXT_CSQC),
|
||||
void(float effectnum, vector origin, ...) pointparticles = #337; // (EXT_CSQC)
|
||||
|
||||
void(string s, ...) cprint = #338; // (EXT_CSQC)
|
||||
void(string s, ...) print = #339; // (EXT_CSQC)
|
||||
|
||||
string(float keynum) keynumtostring = #340; // (EXT_CSQC)
|
||||
float(string keyname) stringtokeynum = #341; // (EXT_CSQC)
|
||||
string(float keynum) getkeybind = #342; // (EXT_CSQC)
|
||||
|
||||
float(float framenum) getinputstate = #345; // (EXT_CSQC)
|
||||
void(float sens) setsensitivityscaler = #346; // (EXT_CSQC)
|
||||
|
||||
void() runstandardplayerphysics = #347; // (EXT_CSQC)
|
||||
|
||||
string(float playernum, string keyname) getplayerkeyvalue = #348; // (EXT_CSQC)
|
||||
|
||||
float() isdemo = #349; // (EXT_CSQC)
|
||||
float() isserver = #350; // (EXT_CSQC)
|
||||
|
||||
void(vector origin, vector forward, vector right, vector up) SetListener = #351; // (EXT_CSQC)
|
||||
void(string cmdname) registercommand = #352; // (EXT_CSQC)
|
||||
float(entity ent) wasfreed = #353; // (EXT_CSQC) (should be availabe on server too)
|
||||
|
||||
string(string keyname) getserverinfo = #354; // (EXT_CSQC)
|
||||
|
||||
//note that 'ReadEntity' is pretty hard to implement reliably. Modders should use a combination of ReadShort, and findfloat, and remember that it might not be known clientside (pvs culled or other reason)
|
||||
float() readbyte = #360; // (EXT_CSQC)
|
||||
float() readchar = #361; // (EXT_CSQC)
|
||||
float() readshort = #362; // (EXT_CSQC)
|
||||
float() readlong = #363; // (EXT_CSQC)
|
||||
float() readcoord = #364; // (EXT_CSQC)
|
||||
float() readangle = #365; // (EXT_CSQC)
|
||||
string() readstring = #366; // (EXT_CSQC)
|
||||
string() readfloat = #367; // (EXT_CSQC)
|
107
quakec/fallout2/csqc/constants.qc
Normal file
107
quakec/fallout2/csqc/constants.qc
Normal file
|
@ -0,0 +1,107 @@
|
|||
//FIXME: most of this should be in common/constants.qc
|
||||
|
||||
//
|
||||
// constants
|
||||
//
|
||||
|
||||
// point content values
|
||||
|
||||
float CONTENT_EMPTY = -1;
|
||||
float CONTENT_SOLID = -2;
|
||||
float CONTENT_WATER = -3;
|
||||
float CONTENT_SLIME = -4;
|
||||
float CONTENT_LAVA = -5;
|
||||
float CONTENT_SKY = -6;
|
||||
|
||||
// sound channels
|
||||
// channel 0 never willingly overrides
|
||||
// other channels (1-7) allways override a playing sound on that channel
|
||||
float CHAN_AUTO = 0;
|
||||
float CHAN_WEAPON = 1;
|
||||
float CHAN_VOICE = 2;
|
||||
float CHAN_ITEM = 3;
|
||||
float CHAN_BODY = 4;
|
||||
|
||||
float ATTN_NONE = 0;
|
||||
float ATTN_NORM = 1;
|
||||
float ATTN_IDLE = 2;
|
||||
float ATTN_STATIC = 3;
|
||||
|
||||
|
||||
// entity effects
|
||||
|
||||
float EF_BRIGHTFIELD = 1;
|
||||
float EF_MUZZLEFLASH = 2;
|
||||
float EF_BRIGHTLIGHT = 4;
|
||||
float EF_DIMLIGHT = 8;
|
||||
|
||||
|
||||
|
||||
|
||||
float MASK_ENGINE = 1; //this is special. Any entities known by the engine but not the csqc will be added.
|
||||
//you can add any other masks below, remember, use bits.
|
||||
float MASK_NORMAL = 2;
|
||||
|
||||
|
||||
|
||||
float INPUT_KEYDOWN = 0;
|
||||
float INPUT_KEYUP = 1;
|
||||
float INPUT_MOUSEMOVE = 2;
|
||||
|
||||
|
||||
|
||||
//stats 0-31 are filled by the engine.
|
||||
//they are for the 'fixed function' stuff, that works without requiring csqc.
|
||||
//these stats need to be standardized amoung engines, so you're not allowed to mod them, so nur.
|
||||
#define STAT_HEALTH 0
|
||||
#define STAT_WEAPONMODEL 2 //weapon model index, as evalutated by server code.
|
||||
#define STAT_AMMO 3
|
||||
#define STAT_ARMOR 4
|
||||
#define STAT_WEAPONFRAME 5
|
||||
#define STAT_SHELLS 6
|
||||
#define STAT_NAILS 7
|
||||
#define STAT_ROCKETS 8
|
||||
#define STAT_CELLS 9
|
||||
#define STAT_ACTIVEWEAPON 10 //the one shown on the hud
|
||||
#define STAT_ITEMS 15
|
||||
//stats 32 onwards are filled by the csqc.
|
||||
|
||||
|
||||
#define FL_ONGROUND 1
|
||||
|
||||
|
||||
|
||||
enum
|
||||
{
|
||||
VF_MIN = 1,
|
||||
VF_MIN_X = 2,
|
||||
VF_MIN_Y = 3,
|
||||
VF_SIZE = 4,
|
||||
VF_SIZE_X = 5,
|
||||
VF_SIZE_Y = 6,
|
||||
VF_VIEWPORT = 7,
|
||||
VF_FOV = 8,
|
||||
VF_FOVX = 9,
|
||||
VF_FOVY = 10,
|
||||
VF_ORIGIN = 11,
|
||||
VF_ORIGIN_X = 12,
|
||||
VF_ORIGIN_Y = 13,
|
||||
VF_ORIGIN_Z = 14,
|
||||
VF_ANGLES = 15,
|
||||
VF_ANGLES_X = 16,
|
||||
VF_ANGLES_Y = 17,
|
||||
VF_ANGLES_Z = 18,
|
||||
VF_DRAWWORLD = 19,
|
||||
VF_DRAWENGINESBAR = 20,
|
||||
VF_DRAWCROSSHAIR = 21,
|
||||
VF_PERSPECTIVE = 200
|
||||
};
|
||||
|
||||
enumflags {
|
||||
RF_VIEWMODEL,
|
||||
RF_EXTERNALMODEL,
|
||||
RF_DEPTHHACK,
|
||||
RF_ADDATIVE,
|
||||
RF_USEAXIS
|
||||
};
|
||||
|
18
quakec/fallout2/csqc/invent.qc
Normal file
18
quakec/fallout2/csqc/invent.qc
Normal file
|
@ -0,0 +1,18 @@
|
|||
void bprint(float plev, string st, string s2){}
|
||||
float PRINT_MEDIUM = 1;
|
||||
#include "/../inventory.qc"
|
||||
|
||||
|
||||
void() Invent_Draw =
|
||||
{
|
||||
local float i;
|
||||
local float it;
|
||||
local string itname;
|
||||
|
||||
for (i = 0; i < 16; i++)
|
||||
{
|
||||
it = getstati(32+i);
|
||||
itname = GetItemName(ToIID(it));
|
||||
drawstring('0 32 0' + (i * '0 8 0'), strcat(itname, " (", ftos(ToStatus(it)), ")"), '8 8 0', '1 1 1', 1);
|
||||
}
|
||||
};
|
77
quakec/fallout2/csqc/main.qc
Normal file
77
quakec/fallout2/csqc/main.qc
Normal file
|
@ -0,0 +1,77 @@
|
|||
entity viewentity;
|
||||
float viewmodelindex;
|
||||
|
||||
.float lerptime;
|
||||
|
||||
void() DoThatViewModelThing =
|
||||
{
|
||||
float newframe, newmodel;
|
||||
|
||||
newframe = getstati(STAT_WEAPONFRAME);
|
||||
newmodel = getstati(STAT_WEAPONMODEL);
|
||||
|
||||
if (newmodel != viewmodelindex)
|
||||
{ //changed entirly.
|
||||
viewmodelindex = newmodel;
|
||||
self.frame2 = self.frame = newframe;
|
||||
self.lerptime = time;
|
||||
}
|
||||
else if (newframe != self.frame)
|
||||
{
|
||||
self.frame2 = self.frame;
|
||||
self.frame = newframe;
|
||||
self.lerptime = time;
|
||||
}
|
||||
self.lerpfrac = 1-(time-self.lerptime)*10;
|
||||
|
||||
if (self.lerpfrac < 0) self.lerpfrac = 0;
|
||||
|
||||
|
||||
self.modelindex = viewmodelindex;
|
||||
};
|
||||
|
||||
void() CSQC_Init =
|
||||
{
|
||||
viewentity = spawn();
|
||||
viewentity.predraw = DoThatViewModelThing;
|
||||
viewentity.drawmask = MASK_NORMAL;
|
||||
viewentity.renderflags = RF_VIEWMODEL | RF_DEPTHHACK;
|
||||
};
|
||||
|
||||
|
||||
|
||||
void(float do2d) CSQC_UpdateView =
|
||||
{
|
||||
float width,height;
|
||||
float usehud;
|
||||
width = cvar("vid_conwidth");
|
||||
height = cvar("vid_conheight");
|
||||
|
||||
clearscene();
|
||||
|
||||
if (0)//!cvar("cg_usehud"))
|
||||
{
|
||||
setviewprop(VF_DRAWENGINESBAR, 0);
|
||||
usehud = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
setviewprop(VF_DRAWENGINESBAR, 1);
|
||||
}
|
||||
|
||||
setviewprop(VF_DRAWCROSSHAIR, 1);
|
||||
|
||||
//force fullscreen views.
|
||||
setviewprop(VF_MIN, '0 0 0');
|
||||
setviewprop(VF_SIZE_X, width);
|
||||
setviewprop(VF_SIZE_Y, height);
|
||||
|
||||
addentities(MASK_ENGINE | MASK_NORMAL);
|
||||
|
||||
renderscene();
|
||||
|
||||
// if (usehud)
|
||||
// Hud_Draw();
|
||||
|
||||
Invent_Draw();
|
||||
};
|
148
quakec/fallout2/csqc/stdbuiltins.qc
Normal file
148
quakec/fallout2/csqc/stdbuiltins.qc
Normal file
|
@ -0,0 +1,148 @@
|
|||
//common builtins.
|
||||
|
||||
void(vector ang) makevectors = #1; // sets v_forward, etc globals
|
||||
void(entity e, vector o) setorigin = #2;
|
||||
void(entity e, string m) setmodel = #3; // set movetype and solid first
|
||||
void(entity e, vector min, vector max) setsize = #4;
|
||||
|
||||
void() break = #6;
|
||||
float() random = #7; // returns 0 - 1
|
||||
void(entity e, float chan, string samp, float vol, float atten) sound = #8;
|
||||
vector(vector v) normalize = #9;
|
||||
void(string e) error = #10;
|
||||
void(string e) objerror = #11;
|
||||
float(vector v) vlen = #12;
|
||||
float(vector v) vectoyaw = #13;
|
||||
entity() spawn = #14;
|
||||
void(entity e) remove = #15;
|
||||
|
||||
// sets trace_* globals
|
||||
// nomonsters can be:
|
||||
// An entity will also be ignored for testing if forent == test,
|
||||
// forent->owner == test, or test->owner == forent
|
||||
// a forent of world is ignored
|
||||
void(vector v1, vector v2, float nomonsters, entity forent) traceline = #16;
|
||||
|
||||
|
||||
entity(entity start, .string fld, string match) find = #18;
|
||||
string(string s) precache_sound = #19;
|
||||
string(string s) precache_model = #20;
|
||||
void(entity client, string s)stuffcmd = #21;
|
||||
entity(vector org, float rad) findradius = #22;
|
||||
|
||||
void(string s, ...) dprint = #25;
|
||||
string(float f) ftos = #26;
|
||||
string(vector v) vtos = #27;
|
||||
void() coredump = #28; // prints all edicts
|
||||
void() traceon = #29; // turns statment trace on
|
||||
void() traceoff = #30;
|
||||
void(entity e) eprint = #31; // prints an entire edict
|
||||
|
||||
float() droptofloor= #34; // TRUE if landed on floor
|
||||
|
||||
float(float v) rint = #36; // round to nearest int
|
||||
float(float v) floor = #37; // largest integer <= v
|
||||
float(float v) ceil = #38; // smallest integer >= v
|
||||
|
||||
float(vector v) pointcontents = #41; // returns a CONTENT_*
|
||||
|
||||
float(float f) fabs = #43;
|
||||
|
||||
float(string s) cvar = #45; // return cvar.value
|
||||
void(string s, ...) localcmd = #46; // put string into local que
|
||||
entity(entity e) nextent = #47; // for looping through all ents
|
||||
void(vector o, vector d, float color, float count) particle = #48;// start a particle effect
|
||||
void() ChangeYaw = #49; // turn towards self.ideal_yaw
|
||||
// at self.yaw_speed
|
||||
|
||||
vector(vector v) vectoangles = #51;
|
||||
|
||||
|
||||
|
||||
|
||||
void(string var, string val) cvar_set = #72; // sets cvar.value
|
||||
|
||||
|
||||
|
||||
//string(float modelindex) name_for_modelindex;
|
||||
//float(string modelname) modelindex_for_name;
|
||||
|
||||
string(string s) precache_file = #68; // no effect except for -copy
|
||||
string(string s) precache_model2 = #75; // registered version only
|
||||
string(string s) precache_sound2 = #76; // registered version only
|
||||
string(string s) precache_file2 = #77; // registered version only
|
||||
|
||||
|
||||
|
||||
float(string s) stof = #81;
|
||||
|
||||
|
||||
void(vector v1, vector min, vector max, vector v2, float nomonsters, entity forent) tracebox = #90;
|
||||
void(string name, string value) registercvar = #93;
|
||||
|
||||
entity(entity start, .entity fld, entity match) findentity = #98;
|
||||
entity(entity start, .float fld, float match) findfloat = #98;
|
||||
|
||||
|
||||
|
||||
float(string filename, float mode) fopen = #110;
|
||||
void(float fhandle) fclose = #111;
|
||||
string(float fhandle) fgets = #112;
|
||||
void(float fhandle, string s) fputs = #113;
|
||||
float(string s) strlen = #114;
|
||||
string(...) strcat = #115;
|
||||
string(string s, float start, float length) substring = #116;
|
||||
vector(string s) stov = #117;
|
||||
string(string s) strzone = #118;
|
||||
void(string s) strunzone = #119;
|
||||
float FILE_READ = 0;
|
||||
float FILE_WRITE = 1;
|
||||
float FILE_APPEND = 2;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
float(string s) tokenize = #441;
|
||||
string(float argnum) argv = #442;
|
||||
|
||||
|
||||
//DP_QC_SINCOSSQRTPOW
|
||||
//idea: id Software, LordHavoc
|
||||
//darkplaces implementation: id Software, LordHavoc
|
||||
//builtin definitions:
|
||||
float(float val) sin = #60;
|
||||
float(float val) cos = #61;
|
||||
float(float val) sqrt = #62;
|
||||
float(float a, float b) pow = #97;
|
||||
//description:
|
||||
//useful math functions, sine of val, cosine of val, square root of val, and raise a to power b, respectively.
|
||||
|
||||
|
||||
|
||||
|
||||
//FTE_STRINGS
|
||||
float(string str, string match) strstrofs = #221;
|
||||
float(string str, float ofs) str2chr = #222;
|
||||
string(float c, ...) chr2str = #223;
|
||||
string(float ccase, float redalpha, float redchars, string str) strconv = #224;
|
||||
string(string info, string key, string value) infoadd = #226;
|
||||
string(string info, string key) infoget = #227;
|
||||
float(string s1, string s2, float len) strncmp = #228;
|
||||
float(string s1, string s2) strcasecmp = #229;
|
||||
float(string s1, string s2, float len) strncasecmp = #230;
|
||||
|
||||
|
||||
float(entity ent, string tagname) gettagindex = #451;
|
||||
vector(entity ent, float tagnum) RotateVectorsByTag = #234;
|
||||
void(vector angle) RotateVectorsByAngle = #235;
|
||||
void(vector fwd, vector right, vector up) RotateVectorsByVectors = #236;
|
||||
|
||||
float(float modelindex, string skinname) skinforname = #237;
|
||||
float(string skinname) shaderforname = #238;
|
76
quakec/fallout2/csqc/stdconstants.qc
Normal file
76
quakec/fallout2/csqc/stdconstants.qc
Normal file
|
@ -0,0 +1,76 @@
|
|||
float FALSE = 0;
|
||||
float TRUE = 1;
|
||||
noref float false = FALSE;
|
||||
float true = TRUE;
|
||||
|
||||
// edict.flags
|
||||
float FL_FLY = 1;
|
||||
float FL_SWIM = 2;
|
||||
float FL_CLIENT = 8; // set for all client edicts
|
||||
float FL_INWATER = 16; // for enter / leave water splash
|
||||
float FL_MONSTER = 32;
|
||||
float FL_GODMODE = 64; // player cheat
|
||||
float FL_NOTARGET = 128; // player cheat
|
||||
float FL_ITEM = 256; // extra wide size for bonus items
|
||||
float FL_ONGROUND = 512; // standing on something
|
||||
float FL_PARTIALGROUND = 1024; // not all corners are valid
|
||||
float FL_WATERJUMP = 2048; // player jumping out of water
|
||||
float FL_JUMPRELEASED = 4096; // for jump debouncing
|
||||
|
||||
// edict.solid values
|
||||
float SOLID_TRIGGER = 1; // touch on edge, but not blocking
|
||||
float SOLID_BBOX = 2; // touch on edge, block
|
||||
float SOLID_SLIDEBOX = 3; // touch on edge, but not an onground
|
||||
float SOLID_BSP = 4; // bsp clip, touch on edge, block
|
||||
|
||||
// edict.movetype values
|
||||
float MOVETYPE_NONE = 0; // never moves
|
||||
//float MOVETYPE_ANGLENOCLIP = 1;
|
||||
//float MOVETYPE_ANGLECLIP = 2;
|
||||
float MOVETYPE_WALK = 3; // players only
|
||||
float MOVETYPE_STEP = 4; // discrete, not real time unless fall
|
||||
float MOVETYPE_FLY = 5;
|
||||
float MOVETYPE_TOSS = 6; // gravity
|
||||
float MOVETYPE_PUSH = 7; // no clip to world, push and crush
|
||||
float MOVETYPE_NOCLIP = 8;
|
||||
float MOVETYPE_FLYMISSILE = 9; // fly with extra size against monsters
|
||||
float MOVETYPE_BOUNCE = 10;
|
||||
float MOVETYPE_BOUNCEMISSILE = 11; // bounce with extra size
|
||||
|
||||
float SOLID_NOT=0;
|
||||
|
||||
vector VEC_ORIGIN = '0 0 0';
|
||||
vector VEC_HULL_MIN = '-16 -16 -24';
|
||||
vector VEC_HULL_MAX = '16 16 32';
|
||||
|
||||
vector VEC_HULL2_MIN = '-32 -32 -24';
|
||||
vector VEC_HULL2_MAX = '32 32 64';
|
||||
|
||||
// items
|
||||
float IT_AXE = 4096;
|
||||
float IT_SHOTGUN = 1;
|
||||
float IT_SUPER_SHOTGUN = 2;
|
||||
float IT_NAILGUN = 4;
|
||||
float IT_SUPER_NAILGUN = 8;
|
||||
float IT_GRENADE_LAUNCHER = 16;
|
||||
float IT_ROCKET_LAUNCHER = 32;
|
||||
float IT_LIGHTNING = 64;
|
||||
float IT_EXTRA_WEAPON = 128;
|
||||
|
||||
float IT_SHELLS = 256;
|
||||
float IT_NAILS = 512;
|
||||
float IT_ROCKETS = 1024;
|
||||
float IT_CELLS = 2048;
|
||||
|
||||
float IT_ARMOR1 = 8192;
|
||||
float IT_ARMOR2 = 16384;
|
||||
float IT_ARMOR3 = 32768;
|
||||
float IT_SUPERHEALTH = 65536;
|
||||
|
||||
float IT_KEY1 = 131072;
|
||||
float IT_KEY2 = 262144;
|
||||
|
||||
float IT_INVISIBILITY = 524288;
|
||||
float IT_INVULNERABILITY = 1048576;
|
||||
float IT_SUIT = 2097152;
|
||||
float IT_QUAD = 4194304;
|
129
quakec/fallout2/csqc/system.qc
Normal file
129
quakec/fallout2/csqc/system.qc
Normal file
|
@ -0,0 +1,129 @@
|
|||
//Don't modify this file
|
||||
/*
|
||||
==============================================================================
|
||||
|
||||
SOURCE FOR GLOBALVARS_T C STRUCTURE
|
||||
|
||||
==============================================================================
|
||||
*/
|
||||
|
||||
//
|
||||
// system globals
|
||||
//
|
||||
entity self;
|
||||
entity other;
|
||||
entity world;
|
||||
float time;
|
||||
float frametime;
|
||||
|
||||
float player_localentnum; //the entnum
|
||||
float player_localnum; //the playernum
|
||||
float maxclients; //a constant filled in by the engine. gah, portability eh?
|
||||
|
||||
float clientcommandframe; //player movement
|
||||
float servercommandframe; //clientframe echoed off the server
|
||||
|
||||
string mapname; //current brief map name
|
||||
float intermission; //non-zero if the server sent an svc_intermission.
|
||||
|
||||
//
|
||||
// global variables set by built in functions
|
||||
//
|
||||
vector v_forward, v_up, v_right; // set by makevectors()
|
||||
|
||||
// set by traceline / tracebox
|
||||
float trace_allsolid;
|
||||
float trace_startsolid;
|
||||
float trace_fraction;
|
||||
vector trace_endpos;
|
||||
vector trace_plane_normal;
|
||||
float trace_plane_dist;
|
||||
entity trace_ent;
|
||||
float trace_inopen;
|
||||
float trace_inwater;
|
||||
|
||||
//these fields are read and set by the default player physics
|
||||
vector pmove_org;
|
||||
vector pmove_vel;
|
||||
vector pmove_mins;
|
||||
vector pmove_maxs;
|
||||
//retrieved from the current movement commands (read by player physics)
|
||||
float input_timelength;
|
||||
vector input_angles;
|
||||
vector input_movevalues; //forwards, right, up.
|
||||
float input_buttons; //attack, use, jump (default physics only uses jump)
|
||||
|
||||
float movevar_gravity;
|
||||
float movevar_stopspeed;
|
||||
float movevar_maxspeed;
|
||||
float movevar_spectatormaxspeed; //used by NOCLIP movetypes.
|
||||
float movevar_accelerate;
|
||||
float movevar_airaccelerate;
|
||||
float movevar_wateraccelerate;
|
||||
float movevar_friction;
|
||||
float movevar_waterfriction;
|
||||
float movevar_entgravity; //the local player's gravity field. Is a multiple (1 is the normal value)
|
||||
|
||||
//================================================
|
||||
void end_sys_globals; // flag for structure dumping
|
||||
//================================================
|
||||
|
||||
/*
|
||||
==============================================================================
|
||||
|
||||
SOURCE FOR ENTVARS_T C STRUCTURE
|
||||
|
||||
==============================================================================
|
||||
*/
|
||||
|
||||
//
|
||||
// system fields (*** = do not set in prog code, maintained by C code)
|
||||
//
|
||||
.float modelindex; // *** model index in the precached list
|
||||
.vector absmin, absmax; // *** origin + mins / maxs
|
||||
|
||||
.float entnum; // *** the ent number as on the server
|
||||
.float drawmask;
|
||||
.void() predraw;
|
||||
|
||||
.float movetype;
|
||||
.float solid;
|
||||
|
||||
.vector origin; // ***
|
||||
.vector oldorigin; // ***
|
||||
.vector velocity;
|
||||
.vector angles;
|
||||
.vector avelocity;
|
||||
|
||||
.string classname; // spawn function
|
||||
|
||||
.float renderflags;
|
||||
.string model;
|
||||
.float frame;
|
||||
.float frame2;
|
||||
.float lerpfrac; //the ammount of frame2 to use.
|
||||
.float skin;
|
||||
|
||||
.vector mins, maxs; // bounding box extents reletive to origin
|
||||
.vector size; // maxs - mins
|
||||
|
||||
.void() touch;
|
||||
.void() use;
|
||||
.void() think;
|
||||
.void() blocked; // for doors or plats, called when can't push other
|
||||
|
||||
.float nextthink;
|
||||
|
||||
.entity chain;
|
||||
|
||||
.entity enemy;
|
||||
|
||||
.float flags;
|
||||
|
||||
.float colormap;
|
||||
|
||||
.entity owner; // who launched a missile
|
||||
|
||||
//================================================
|
||||
void end_sys_fields; // flag for structure dumping
|
||||
//================================================
|
Loading…
Reference in a new issue