5 void SUB_Friction(entity this);
7 void SUB_NullThink(entity this);
13 Makes client invisible or removes non-client
16 void SUB_VanishOrRemove(entity ent);
18 void SUB_SetFade_Think(entity this);
24 Fade 'ent' out when time >= 'when'
28 void SUB_SetFade(entity ent, float when, float fading_time);
30 .vector finaldest, finalangle; //plat.qc stuff
31 .void(entity this) think1;
33 .float t_length, t_width;
44 .float platmovetype_start, platmovetype_end;
58 .float trigger_reverse;
60 // Keys player is holding
62 // message delay for func_door locked by keys and key locks
63 // this field is used on player entities
64 .float key_door_messagetime;
68 .entity move_controller;
70 const int TSPEED_TIME = -1;
71 const int TSPEED_LINEAR = 0;
72 const int TSPEED_START = 1;
73 const int TSPEED_END = 2;
77 // this stuff is defined in the server side engine VM, so we must define it separately here
79 const int DAMAGE_NO = 0;
80 const int DAMAGE_YES = 1;
81 const int DAMAGE_AIM = 2;
83 .string noise, noise1, noise2, noise3; // contains names of wavs to play
85 .float max_health; // players maximum health is stored here
96 calculate this.velocity and this.nextthink to reach dest from
97 this.origin traveling at speed
100 void SUB_CalcMoveDone(entity this);
102 void SUB_CalcMovePause(entity this);
104 .float platmovetype_turn;
105 void SUB_CalcMove_controller_think (entity this);
107 void SUB_CalcMove_controller_setbezier (entity controller, vector org, vector control, vector dest);
109 void SUB_CalcMove_controller_setlinear (entity controller, vector org, vector dest);
111 void SUB_CalcMove_Bezier (entity this, vector tcontrol, vector tdest, float tspeedtype, float tspeed, void(entity this) func);
113 void SUB_CalcMove (entity this, vector tdest, float tspeedtype, float tspeed, void(entity this) func);
115 void SUB_CalcMoveEnt (entity ent, vector tdest, float tspeedtype, float tspeed, void(entity this) func);
118 void ApplyMinMaxScaleAngles(entity e);
120 void SetBrushEntityModel(entity this, bool with_lod);
122 int autocvar_loddebug;
127 .float lodmodelindex0;
128 .float lodmodelindex1;
129 .float lodmodelindex2;
133 bool LOD_customize(entity this, entity client);
135 void LOD_uncustomize(entity this);
137 void LODmodel_attach(entity this);
144 calculate this.avelocity and this.nextthink to reach destangle from
147 The calling function should make sure this.think is valid
150 void SUB_CalcAngleMoveDone (entity this);
152 // FIXME: I fixed this function only for rotation around the main axes
153 void SUB_CalcAngleMove (entity this, vector destangle, float tspeedtype, float tspeed, void(entity this) func);
155 void SUB_CalcAngleMoveEnt (entity ent, vector destangle, float tspeedtype, float tspeed, void(entity this) func);
164 void SetMovedir(entity this);
166 void InitTrigger(entity this);
168 void InitSolidBSPTrigger(entity this);
170 bool InitMovingBrushTrigger(entity this);