movevars and pmove are obsolete. Bit of a code cleanup.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3213 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
parent
691f57ee80
commit
54f6c830de
12 changed files with 172 additions and 96 deletions
|
@ -26,12 +26,12 @@ 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_???)
|
||||
void(vector position, float character, vector scale, vector rgb, float alpha, ...) drawcharacter = #320; // (EXT_CSQC, [EXT_CSQC_???])
|
||||
void(vector position, string text, vector scale, vector rgb, float alpha, ...) drawrawstring = #321; // (EXT_CSQC, [EXT_CSQC_???])
|
||||
void(vector position, string pic, vector size, vector rgb, float alpha, ...) drawpic = #322; // (EXT_CSQC, [EXT_CSQC_???])
|
||||
void(vector position, vector size, vector rgb, float alpha, ...) drawfill = #323; // (EXT_CSQC, [EXT_CSQC_???])
|
||||
|
||||
void(vector position, string text, vector scale, float alpha, ...) drawstring = #326; // (EXT_CSQC_1)
|
||||
|
||||
float(float stnum) getstatf = #330; // (EXT_CSQC)
|
||||
float(float stnum) getstati = #331; // (EXT_CSQC)
|
||||
|
@ -42,6 +42,7 @@ string(float mdlindex) modelnameforindex = #334; // (EXT_CSQC)
|
|||
|
||||
float(string effectname) particleeffectforname = #335; // (EXT_CSQC)
|
||||
#ifdef WORKINDP
|
||||
//DP got the arguments the wrong way around...
|
||||
void(entity ent, float effectnum, vector start, vector end) trailparticles_dp = #336; // (EXT_CSQC),
|
||||
void(float effectnum, entity ent, vector start, vector end) trailparticles =
|
||||
{
|
||||
|
@ -81,4 +82,16 @@ 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)
|
||||
string() readfloat = #367; // (EXT_CSQC)
|
||||
|
||||
void(string model, void(float isnew) updatefunc, float flags) deltalisten = #371;
|
||||
//void(float flags, float simtime) readserverentitystate = #369;
|
||||
#define RSES_NOLERP 1 //only really for use on predicted player entities
|
||||
#define RSES_AUTOROTATE 0
|
||||
#define RSES_NOROTATE 2
|
||||
#define RSES_AUTOTRAILS 0
|
||||
#define RSES_NOTRAILS 4
|
||||
#define RSES_AUTOLIGHTS 0
|
||||
#define RSES_NOLIGHTS 8
|
||||
|
||||
void(string evname, string argdesc, ...) sendevent = #359;
|
||||
|
|
|
@ -1,18 +1,9 @@
|
|||
void(string model, void(float isnew) updatefunc, float flags) deltalisten = #371;
|
||||
void(float flags, float simtime) readserverentitystate = #369;
|
||||
#define RSES_NOLERP 1 //only really for use on predicted player entities
|
||||
#define RSES_AUTOROTATE 0
|
||||
#define RSES_NOROTATE 2
|
||||
#define RSES_AUTOTRAILS 0
|
||||
#define RSES_NOTRAILS 4
|
||||
#define RSES_AUTOLIGHTS 0
|
||||
#define RSES_NOLIGHTS 8
|
||||
|
||||
#ifdef WORKINDP
|
||||
#define show_scoreboard sb_showscores
|
||||
#endif
|
||||
|
||||
float show_scoreboard;
|
||||
string dbgstr;
|
||||
|
||||
//check engine extensions, and give suitable warning
|
||||
void() checkengineversion =
|
||||
|
@ -38,6 +29,14 @@ float(float f1, float f2) testfunc2 =
|
|||
return f1+f2;
|
||||
}
|
||||
float testarray[2];
|
||||
|
||||
float(float p1, float p2) a = {return p1+p2+5;};
|
||||
float() b = {return 86;};
|
||||
float(float p1) c = {return p1+566;};
|
||||
float() d = {return 7773;};
|
||||
|
||||
#pragma TARGET ID
|
||||
|
||||
void() checkcompilerversion =
|
||||
{
|
||||
local entity testent;
|
||||
|
@ -53,6 +52,8 @@ void() checkcompilerversion =
|
|||
testarray[0] = 5;
|
||||
testarray[1] = 6;
|
||||
|
||||
if (testfunc (a(b(), c(d()))) != 86+5+7773+566)
|
||||
print("compiler failed on a(b(), c(d()))\n");
|
||||
if (testfunc(5)+testfunc(6) != 11)
|
||||
print("compiler failed on f()+f()\n");
|
||||
if (testfunc2(5, testfunc(6)) != 11)
|
||||
|
@ -63,6 +64,9 @@ void() checkcompilerversion =
|
|||
print("compiler failed on a[0]+a[1]\n");
|
||||
};
|
||||
|
||||
#ifdef FTEDEPENDANT
|
||||
# pragma TARGET FTE
|
||||
#endif
|
||||
|
||||
|
||||
void(float isnew) RefreshPlayer;
|
||||
|
@ -141,6 +145,9 @@ float(string str) CSQC_ConsoleCommand =
|
|||
args = tokenize(str);
|
||||
switch(argv(0))
|
||||
{
|
||||
case "test":
|
||||
sendevent("testevent", "fsev", 64, "hello world", player_local, '73 72 71');
|
||||
break;
|
||||
case "tetris":
|
||||
Menu_Tetris();
|
||||
break;
|
||||
|
@ -181,6 +188,18 @@ float(string str) CSQC_ConsoleCommand =
|
|||
return true;
|
||||
};
|
||||
|
||||
void(string msg, float type) CSQC_Parse_Print =
|
||||
{
|
||||
print("parse_print(", ftos(type), "): ");
|
||||
print(msg);
|
||||
|
||||
cprint(msg);
|
||||
|
||||
if (dbgstr)
|
||||
strunzone(dbgstr);
|
||||
dbgstr = strzone(msg);
|
||||
};
|
||||
|
||||
void() CSQC_Ent_Remove = //the ent disappeared on the server.
|
||||
{
|
||||
if (self.removefunc)
|
||||
|
@ -334,7 +353,12 @@ void(float width, float height, float do2d) CSQC_UpdateView =
|
|||
setviewprop(VF_MIN, '0 0 0');
|
||||
setviewprop(VF_SIZE_X, width);
|
||||
setviewprop(VF_SIZE_Y, height);
|
||||
|
||||
#if 0
|
||||
setviewprop(VF_MIN_X, width/2);
|
||||
setviewprop(VF_MIN_Y, height/2);
|
||||
setviewprop(VF_SIZE_X, width/2);
|
||||
setviewprop(VF_SIZE_Y, height/2);
|
||||
#endif
|
||||
addentities(MASK_NORMAL|MASK_ENGINE);
|
||||
|
||||
if (player_local)
|
||||
|
@ -357,7 +381,15 @@ void(float width, float height, float do2d) CSQC_UpdateView =
|
|||
}
|
||||
|
||||
renderscene();
|
||||
|
||||
#if 0
|
||||
clearscene();
|
||||
setviewprop(VF_MIN_X, 0);
|
||||
setviewprop(VF_MIN_Y, 0);
|
||||
setviewprop(VF_SIZE_X, width/2);
|
||||
setviewprop(VF_SIZE_Y, height/2);
|
||||
addentities(MASK_NORMAL|MASK_ENGINE);
|
||||
renderscene();
|
||||
#endif
|
||||
if (do2d)
|
||||
{
|
||||
if (hudtype)
|
||||
|
@ -365,5 +397,11 @@ void(float width, float height, float do2d) CSQC_UpdateView =
|
|||
|
||||
Menu_Think();
|
||||
}
|
||||
|
||||
if (dbgstr)
|
||||
{
|
||||
drawrawstring('16 64 0', dbgstr, '16 16 16', '1 1 1', 0.5);
|
||||
drawstring('16 80 0', dbgstr, '16 16 16', 0.5);
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -23,7 +23,7 @@ string anumber[10] = {
|
|||
"anum_8",
|
||||
"anum_9"
|
||||
};
|
||||
void Hud_Init(void)
|
||||
void() Hud_Init
|
||||
{
|
||||
float i;
|
||||
precache_pic("sbar", true);
|
||||
|
@ -37,7 +37,7 @@ void Hud_Init(void)
|
|||
vector screensize;
|
||||
float items, items2;
|
||||
|
||||
void Hud_DrawLargeValue(vector pos, float value, float threshhold)
|
||||
void(vector pos, float value, float threshhold) Hud_DrawLargeValue =
|
||||
{
|
||||
float c;
|
||||
float len;
|
||||
|
@ -77,7 +77,7 @@ void Hud_DrawLargeValue(vector pos, float value, float threshhold)
|
|||
}
|
||||
};
|
||||
|
||||
void Hud_DrawAmmoCount(float type, vector pos, float drawback)
|
||||
void(float type, vector pos, float drawback) Hud_DrawAmmoCount =
|
||||
{
|
||||
string s;
|
||||
float value;
|
||||
|
@ -110,11 +110,11 @@ string weaponnames[7] = {
|
|||
"inv_srlaunch",
|
||||
"inv_lightng"
|
||||
};
|
||||
void Hud_DrawWeapon(float num, vector pos)
|
||||
void(float num, vector pos) Hud_DrawWeapon
|
||||
{
|
||||
drawpic(pos, weaponnames[num], '24 16 0', '1 1 1', 1, 0);
|
||||
};
|
||||
void Hud_DrawWeaponWide(float num, vector pos) //for LG
|
||||
void(float num, vector pos) Hud_DrawWeaponWide //for LG
|
||||
{
|
||||
drawpic(pos, weaponnames[num], '48 16 0', '1 1 1', 1, 0);
|
||||
};
|
||||
|
@ -131,7 +131,7 @@ string(float f, float chars, string lead) FormatFloat
|
|||
return s;
|
||||
};
|
||||
|
||||
void() Hud_CoopScores_SBar =
|
||||
void(vector pos) Hud_CoopScores_SBar =
|
||||
{
|
||||
string s;
|
||||
float secs;
|
||||
|
@ -141,57 +141,53 @@ void() Hud_CoopScores_SBar =
|
|||
drawpic(sbar, "scorebar", '320 24 0', '1 1 1', 0.333, 0);
|
||||
|
||||
s = strcat("Monsters:", FormatFloat(getstati(STAT_KILLEDMONSTERS), 3, " "), "/", FormatFloat(getstati(STAT_TOTALMONSTERS), 3, " "));
|
||||
drawstring(sbar + '8 4', s, '8 8 8', '1 1 1', 1, 0);
|
||||
drawstring(sbar + '8 4', s, '8 8 8', 1, 0);
|
||||
s = strcat("Secrets :", FormatFloat(getstati(STAT_FOUNDSECRETS), 3, " "), "/", FormatFloat(getstati(STAT_TOTALSECRETS), 3, " "));
|
||||
drawstring(sbar + '8 12', s, '8 8 8', '1 1 1', 1, 0);
|
||||
drawstring(sbar + '8 12', s, '8 8 8', 1, 0);
|
||||
|
||||
mins = floor(time/60);
|
||||
secs = floor(time - mins*60);
|
||||
s = strcat("Time :", FormatFloat(mins, 3, " "), ":", FormatFloat(secs, 2, "0"));
|
||||
drawstring(sbar + '184 4', s, '8 8 8', '1 1 1', 1, 0);
|
||||
drawstring(sbar + '184 4', s, '8 8 8', 1, 0);
|
||||
|
||||
drawstring(sbar + '232 12' - strlen(levelname)*'4 0', levelname, '8 8 8', '1 1 1', 1, 0);
|
||||
drawstring(sbar + '232 12' - strlen(levelname)*'4 0', levelname, '8 8 8', 1, 0);
|
||||
};
|
||||
|
||||
void Hud_DrawSBar(void)
|
||||
void Hud_DrawSBar(vector pos)
|
||||
{
|
||||
vector sbar;
|
||||
sbar = screensize_y * ' 0 1 0' - '0 24 0';
|
||||
drawpic(sbar, "sbar", '320 24 0', '1 1 1', 0.333, 0);
|
||||
drawpic(pos, "sbar", '320 24 0', '1 1 1', 0.333, 0);
|
||||
|
||||
if (items & IT_INVULNERABILITY)
|
||||
{
|
||||
drawpic(sbar, "disc", '24 24 0', '1 1 1', 1, 0);
|
||||
Hud_DrawLargeValue(sbar+'24 0 0', 999, 25);
|
||||
drawpic(pos, "disc", '24 24 0', '1 1 1', 1, 0);
|
||||
Hud_DrawLargeValue(pos+'24 0 0', 999, 25);
|
||||
}
|
||||
else
|
||||
{
|
||||
Hud_DrawLargeValue(sbar+'24 0 0', getstati(STAT_ARMOR), 25);
|
||||
Hud_DrawLargeValue(pos+'24 0 0', getstati(STAT_ARMOR), 25);
|
||||
if (items & IT_ARMOR3)
|
||||
drawpic(sbar, "sb_armor3", '24 24 0', '1 1 1', 1, 0);
|
||||
drawpic(pos, "sb_armor3", '24 24 0', '1 1 1', 1, 0);
|
||||
else if (items & IT_ARMOR2)
|
||||
drawpic(sbar, "sb_armor2", '24 24 0', '1 1 1', 1, 0);
|
||||
drawpic(pos, "sb_armor2", '24 24 0', '1 1 1', 1, 0);
|
||||
else if (items & IT_ARMOR1)
|
||||
drawpic(sbar, "sb_armor1", '24 24 0', '1 1 1', 1, 0);
|
||||
drawpic(pos, "sb_armor1", '24 24 0', '1 1 1', 1, 0);
|
||||
}
|
||||
|
||||
Hud_DrawLargeValue(sbar+'136 0 0', getstati(STAT_HEALTH), 25);
|
||||
Hud_DrawLargeValue(pos+'136 0 0', getstati(STAT_HEALTH), 25);
|
||||
|
||||
if (items & IT_SHELLS)
|
||||
drawpic(sbar+'224 0 0', "sb_shells", '24 24 0', '1 1 1', 1, 0);
|
||||
drawpic(pos+'224 0 0', "sb_shells", '24 24 0', '1 1 1', 1, 0);
|
||||
else if (items & IT_NAILS)
|
||||
drawpic(sbar+'224 0 0', "sb_nails", '24 24 0', '1 1 1', 1, 0);
|
||||
drawpic(pos+'224 0 0', "sb_nails", '24 24 0', '1 1 1', 1, 0);
|
||||
else if (items & IT_ROCKETS)
|
||||
drawpic(sbar+'224 0 0', "sb_rocket", '24 24 0', '1 1 1', 1, 0);
|
||||
drawpic(pos+'224 0 0', "sb_rocket", '24 24 0', '1 1 1', 1, 0);
|
||||
else if (items & IT_CELLS)
|
||||
drawpic(sbar+'224 0 0', "sb_cells", '24 24 0', '1 1 1', 1, 0);
|
||||
Hud_DrawLargeValue(sbar+'248 0 0', getstati(STAT_AMMO), 10);
|
||||
drawpic(pos+'224 0 0', "sb_cells", '24 24 0', '1 1 1', 1, 0);
|
||||
Hud_DrawLargeValue(pos+'248 0 0', getstati(STAT_AMMO), 10);
|
||||
};
|
||||
|
||||
void Hud_DrawIBar(void)
|
||||
void Hud_DrawIBar(vector pos)
|
||||
{
|
||||
vector pos;
|
||||
pos= screensize_y * ' 0 1 0' - '0 48 0';
|
||||
drawpic(pos, "ibar", '320 24 0', '1 1 1', 0.333, 0);
|
||||
|
||||
if (items & IT_SHOTGUN)
|
||||
|
@ -209,10 +205,10 @@ void Hud_DrawIBar(void)
|
|||
if (items & IT_LIGHTNING)
|
||||
Hud_DrawWeaponWide(6, pos+'144 8 0');
|
||||
|
||||
Hud_DrawAmmoCount(0, pos + '6 0 0', false);
|
||||
Hud_DrawAmmoCount(1, pos + '54 0 0', false);
|
||||
Hud_DrawAmmoCount(2, pos + '102 0 0', false);
|
||||
Hud_DrawAmmoCount(3, pos + '150 0 0', false);
|
||||
Hud_DrawAmmoCount(0, pos + '10 0 0', false);
|
||||
Hud_DrawAmmoCount(1, pos + '58 0 0', false);
|
||||
Hud_DrawAmmoCount(2, pos + '106 0 0', false);
|
||||
Hud_DrawAmmoCount(3, pos + '154 0 0', false);
|
||||
|
||||
if (items & IT_KEY1)
|
||||
drawpic(pos+'192 8 0', "sb_key1", '16 16 0', '1 1 1', 1, 0);
|
||||
|
@ -343,26 +339,27 @@ void Hud_DrawQ3Head(vector topleft, vector sz, string skinname, vector ang)
|
|||
hud3ditem.skin = 0;
|
||||
}
|
||||
|
||||
void Hud_Q3(void)
|
||||
void Hud_Q3(vector pos)
|
||||
{
|
||||
vector sbar;
|
||||
sbar = screensize_y * ' 0 1 0' - '0 24 0';
|
||||
Hud_Draw3dItem(pos+'224 0', '24 24', "models/powerups/ammo/rocketam.md3", '70 0 0', '0 90 0' + ('0 1 0'*20)*sin(time));
|
||||
Hud_Draw3dItem(pos+'0 0', '24 24', "models/powerups/armor/armor_red.md3", '80 0 -10', '0 1 0'*360*(time/6));
|
||||
Hud_DrawQ3Head(pos+'112 0', '24 24', cvar_string("cg_forceskin"), '0 180 0'+'0 20 0'*sin(time));
|
||||
|
||||
Hud_Draw3dItem(sbar+'224 0', '24 24', "models/powerups/ammo/rocketam.md3", '70 0 0', '0 90 0' + ('0 1 0'*20)*sin(time));
|
||||
Hud_Draw3dItem(sbar+'0 0', '24 24', "models/powerups/armor/armor_red.md3", '80 0 -10', '0 1 0'*360*(time/6));
|
||||
Hud_DrawQ3Head(sbar+'112 0', '24 24', cvar_string("cg_forceskin"), '0 180 0'+'0 20 0'*sin(time));
|
||||
|
||||
Hud_DrawQ3Number(sbar+'24 0 0', getstati(STAT_ARMOR), '1 1 1');
|
||||
Hud_DrawQ3Number(sbar+'136 0 0', getstati(STAT_HEALTH), '1 1 1');
|
||||
Hud_DrawQ3Number(sbar+'248 0 0', getstati(STAT_AMMO), '1 1 1');
|
||||
Hud_DrawQ3Number(pos+'24 0 0', getstati(STAT_ARMOR), '1 1 1');
|
||||
Hud_DrawQ3Number(pos+'136 0 0', getstati(STAT_HEALTH), '1 1 1');
|
||||
Hud_DrawQ3Number(pos+'248 0 0', getstati(STAT_AMMO), '1 1 1');
|
||||
}
|
||||
|
||||
nonstatic void Hud_Draw(float hudtype, float scoreboard, float width, float height)
|
||||
{
|
||||
vector pos;
|
||||
screensize_x = width;
|
||||
screensize_y = height;
|
||||
screensize_z = 0;
|
||||
|
||||
pos_x = (screensize_x-320)/2;
|
||||
pos_y = screensize_y;
|
||||
|
||||
items = getstatbits(STAT_ITEMS, 0, 23);
|
||||
items2 = getstatbits(STAT_ITEMS, 23, 9);
|
||||
|
||||
|
@ -376,12 +373,12 @@ nonstatic void Hud_Draw(float hudtype, float scoreboard, float width, float heig
|
|||
{
|
||||
if (scoreboard)
|
||||
{
|
||||
Hud_CoopScores_SBar();
|
||||
Hud_CoopScores_SBar(pos - '0 24 0');
|
||||
}
|
||||
else
|
||||
{
|
||||
Hud_DrawSBar();
|
||||
Hud_DrawSBar(pos - '0 24 0');
|
||||
}
|
||||
Hud_DrawIBar();
|
||||
Hud_DrawIBar(pos - '0 48 0');
|
||||
}
|
||||
};
|
||||
|
|
|
@ -181,7 +181,7 @@ nonstatic void(entity ent) Pred_UpdateLocalMovement =
|
|||
|
||||
Pred_RunMovement(ent, clientcommandframe);
|
||||
|
||||
if (ent.origin_z > pmove_step_oldz+8 && ent.origin_z < pmove_step_oldz+24 && pmove_vel_z == 0)
|
||||
if (ent.origin_z > pmove_step_oldz+8 && ent.origin_z < pmove_step_oldz+24 && ent.velocity_z == 0)
|
||||
{
|
||||
//evaluate out the remaining old step
|
||||
if (pmove_steptime - time > 0)
|
||||
|
|
|
@ -15,7 +15,9 @@
|
|||
#define CSQC 1
|
||||
#endif
|
||||
|
||||
#pragma noref 1
|
||||
#ifdef FTEQCC
|
||||
#pragma noref 1 //remove warnings about unreferenced variables.
|
||||
#endif
|
||||
|
||||
/*
|
||||
==============================================================================
|
||||
|
@ -32,6 +34,7 @@ entity self;
|
|||
entity other;
|
||||
entity world;
|
||||
float time;
|
||||
float cltime;
|
||||
float frametime;
|
||||
|
||||
float player_localentnum; //the entnum
|
||||
|
@ -51,6 +54,9 @@ 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()
|
||||
#ifndef WORKINDP
|
||||
vector view_angles;
|
||||
#endif
|
||||
|
||||
// set by traceline / tracebox
|
||||
float trace_allsolid;
|
||||
|
@ -69,19 +75,22 @@ void() CSQC_Shutdown;
|
|||
float(float f, float t, float n) CSQC_InputEvent;
|
||||
void(float width, float height, float do2d) CSQC_UpdateView;
|
||||
float(string s) CSQC_ConsoleCommand;
|
||||
#endif
|
||||
|
||||
//these fields are read and set by the default player physics
|
||||
vector pmove_org;
|
||||
vector pmove_vel;
|
||||
vector pmove_mins;
|
||||
vector pmove_maxs;
|
||||
#endif
|
||||
|
||||
//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 input_impulse;
|
||||
|
||||
#ifdef WORKINDP
|
||||
float movevar_gravity;
|
||||
float movevar_stopspeed;
|
||||
float movevar_maxspeed;
|
||||
|
@ -92,6 +101,7 @@ 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)
|
||||
#endif
|
||||
|
||||
//================================================
|
||||
void end_sys_globals; // flag for structure dumping
|
||||
|
@ -123,6 +133,9 @@ void end_sys_globals; // flag for structure dumping
|
|||
.vector velocity;
|
||||
.vector angles;
|
||||
.vector avelocity;
|
||||
#ifndef WORKINDP
|
||||
.float pmove_flags;
|
||||
#endif
|
||||
|
||||
.string classname; // spawn function
|
||||
|
||||
|
@ -132,20 +145,22 @@ void end_sys_globals; // flag for structure dumping
|
|||
.string model;
|
||||
.float frame;
|
||||
#ifndef WORKINDP
|
||||
.float frame1time; //for automatic framegroups.
|
||||
.float frame2;
|
||||
.float frame2time;
|
||||
.float lerpfrac; //the ammount of frame2 to use.
|
||||
#endif
|
||||
.float skin;
|
||||
|
||||
#ifdef WORKINDP
|
||||
.float effects;
|
||||
#endif
|
||||
|
||||
.vector mins, maxs; // bounding box extents reletive to origin
|
||||
.vector size; // maxs - mins
|
||||
|
||||
.void() touch;
|
||||
#ifdef WORKINDP
|
||||
.void() use;
|
||||
#endif
|
||||
.void() think;
|
||||
.void() blocked; // for doors or plats, called when can't push other
|
||||
|
||||
|
@ -157,7 +172,7 @@ void end_sys_globals; // flag for structure dumping
|
|||
.string netname;
|
||||
#endif
|
||||
|
||||
.entity enemy;
|
||||
.entity enemy;
|
||||
|
||||
.float flags;
|
||||
|
||||
|
@ -169,24 +184,23 @@ void end_sys_globals; // flag for structure dumping
|
|||
void end_sys_fields; // flag for structure dumping
|
||||
//================================================
|
||||
|
||||
#ifdef WORKINDP
|
||||
.float frame2;
|
||||
.float renderflags;
|
||||
.float lerpfrac;
|
||||
#ifdef FTEQCC
|
||||
#pragma noref 0
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef WORKINDP
|
||||
.float frame2;
|
||||
.float frame1time;
|
||||
.float frame2time;
|
||||
.float renderflags;
|
||||
.float lerpfrac;
|
||||
|
||||
vector view_angles;
|
||||
#endif
|
||||
|
||||
//optional extras
|
||||
.float alpha;
|
||||
.float scale;
|
||||
.float forceshader; //an fte extension, to force a q3 shader upon a model
|
||||
.float fatness; //an fte feature, to expand alias models along thier normals.
|
||||
|
||||
float pmove_jump_held;
|
||||
float pmove_waterjumptime;
|
||||
|
||||
.float frame1time; //for automatic framegroups.
|
||||
.float frame2time;
|
||||
|
||||
#pragma noref 0
|
|
@ -1 +1,2 @@
|
|||
#define CSQC
|
||||
#define CSQC
|
||||
//#pragma compress 1
|
||||
|
|
2
quakec/csqctest/src/progs.src
Normal file
2
quakec/csqctest/src/progs.src
Normal file
|
@ -0,0 +1,2 @@
|
|||
#pragma sourcefile csprogs.src
|
||||
#pragma sourcefile ssqc.src
|
|
@ -440,7 +440,7 @@ stagger back a bit
|
|||
*/
|
||||
void(float dist) ai_pain =
|
||||
{
|
||||
self.Version++; //if nothing else happened, we animated.
|
||||
self.SendFlags = FULLSEND; //if nothing else happened, we animated.
|
||||
|
||||
ai_back (dist);
|
||||
/*
|
||||
|
@ -462,7 +462,7 @@ stagger back a bit
|
|||
*/
|
||||
void(float dist) ai_painforward =
|
||||
{
|
||||
self.Version++; //if nothing else happened, we animated.
|
||||
self.SendFlags = FULLSEND; //if nothing else happened, we animated.
|
||||
|
||||
walkmove (self.ideal_yaw, dist);
|
||||
};
|
||||
|
@ -476,7 +476,7 @@ The monster is walking it's beat
|
|||
*/
|
||||
void(float dist) ai_walk =
|
||||
{
|
||||
self.Version++; //if nothing else happened, we animated.
|
||||
self.SendFlags = FULLSEND; //if nothing else happened, we animated.
|
||||
|
||||
movedist = dist;
|
||||
|
||||
|
@ -502,7 +502,7 @@ The monster is staying in one place for a while, with slight angle turns
|
|||
*/
|
||||
void() ai_stand =
|
||||
{
|
||||
self.Version++; //if nothing else happened, we animated.
|
||||
self.SendFlags = FULLSEND; //if nothing else happened, we animated.
|
||||
|
||||
if (FindTarget ())
|
||||
return;
|
||||
|
@ -681,7 +681,7 @@ The monster has an enemy it is trying to kill
|
|||
*/
|
||||
void(float dist) ai_run =
|
||||
{
|
||||
self.Version++; //if nothing else happened, we animated.
|
||||
self.SendFlags = FULLSEND; //if nothing else happened, we animated.
|
||||
|
||||
movedist = dist;
|
||||
// see if the enemy is dead
|
||||
|
|
|
@ -546,7 +546,7 @@ void() PutClientInServer =
|
|||
if (serverusingcsqc)
|
||||
{
|
||||
self.SendEntity = SendPlayer;
|
||||
self.Version = self.Version+1;
|
||||
self.SendFlags = FULLSEND;
|
||||
}
|
||||
|
||||
DecodeLevelParms ();
|
||||
|
@ -960,7 +960,7 @@ void() PlayerPreThink =
|
|||
if (self.view_ofs == '0 0 0')
|
||||
return; // intermission or finale
|
||||
|
||||
self.Version++;
|
||||
self.SendFlags = FULLSEND;
|
||||
|
||||
makevectors (self.v_angle); // is this still used
|
||||
|
||||
|
|
|
@ -503,5 +503,6 @@ float(entity targ, entity inflictor) CanDamage;
|
|||
float serverusingcsqc;
|
||||
|
||||
.float(entity to) SendEntity;
|
||||
.float Version;
|
||||
.float SendFlags;
|
||||
#define FULLSEND 0xffffff
|
||||
float MSG_ENTITY = 5;
|
|
@ -515,7 +515,7 @@ float(entity ent) WriteGibs =
|
|||
void(float type) ThrowCSQCGibs =
|
||||
{
|
||||
self.cnt = type;
|
||||
self.Version = self.Version+1;
|
||||
self.SendFlags = FULLSEND;
|
||||
self.SendEntity = WriteGibs;
|
||||
if (type != GIB_PLAYER)
|
||||
{ //schedule removal after a second.
|
||||
|
|
|
@ -370,7 +370,17 @@ void() BecomeExplosion =
|
|||
|
||||
self.dimension_seen = 2;
|
||||
dimension_send = 2;
|
||||
|
||||
#if 1
|
||||
WriteByte (MSG_BROADCAST, SVC_TEMPENTITY);
|
||||
WriteByte (MSG_BROADCAST, TE_EXPLOSION);
|
||||
WriteCoord (MSG_BROADCAST, self.origin_x);
|
||||
WriteCoord (MSG_BROADCAST, self.origin_y);
|
||||
WriteCoord (MSG_BROADCAST, self.origin_z);
|
||||
#else
|
||||
te_explosion(self.origin);
|
||||
#endif
|
||||
|
||||
sound (self, CHAN_WEAPON, "weapons/r_exp3.wav", 1, ATTN_NORM);
|
||||
self.dimension_seen = 3;
|
||||
dimension_send = 3;
|
||||
|
@ -382,7 +392,7 @@ void() BecomeExplosion =
|
|||
self.source = self.origin;
|
||||
self.SendEntity = SendExplosion;
|
||||
self.starttime = time;
|
||||
self.Version+=1;
|
||||
self.SendFlags = FULLSEND;
|
||||
};
|
||||
|
||||
void() T_MissileTouch =
|
||||
|
@ -458,7 +468,7 @@ void() W_FireRocket =
|
|||
missile.source = missile.origin;
|
||||
missile.SendEntity = SendRocket;
|
||||
missile.starttime = time;
|
||||
missile.Version+=1;
|
||||
missile.SendFlags = FULLSEND;
|
||||
};
|
||||
|
||||
/*
|
||||
|
@ -680,7 +690,7 @@ void(vector org, vector dir) launch_spike =
|
|||
newmis.velocity = dir * 1000;
|
||||
|
||||
newmis.SendEntity = SendNail;
|
||||
newmis.Version++;
|
||||
newmis.SendFlags = FULLSEND;
|
||||
newmis.source = newmis.origin;
|
||||
newmis.starttime = time;
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue