better CTF indicators
[divverent/nexuiz.git] / data / qcsrc / client / Defs.qc
1 #pragma flag off fastarrays // make dp behave with new fteqcc versions. remove when dp bug with fteqcc fastarrays is fixed
2
3
4 //NOTE: THIS IS AN INTERFACE FILE. DO NOT EDIT.
5 //MODIFYING THIS FILE CAN RESULT IN CRC ERRORS.
6 //YOU HAVE BEEN WARNED.
7
8 //feel free to look though. :)
9
10
11
12
13
14 /*
15 ==============================================================================
16
17                         SOURCE FOR GLOBALVARS_T C STRUCTURE
18
19 ==============================================================================
20 */
21
22 //
23 // system globals
24 //
25 entity          self;
26 entity          other;
27 entity          world;
28 float           time;
29 float           frametime;
30
31 float           player_localentnum;     //the entnum
32 float           player_localnum;        //the playernum
33 float           maxclients;     //a constant filled in by the engine. gah, portability eh?
34
35 float           clientcommandframe;     //player movement
36 float           servercommandframe;     //clientframe echoed off the server
37
38 string          mapname;
39
40 //
41 // global variables set by built in functions
42 //
43 vector          v_forward, v_up, v_right;       // set by makevectors()
44
45 // set by traceline / tracebox
46 float           trace_allsolid;
47 float           trace_startsolid;
48 float           trace_fraction;
49 vector          trace_endpos;
50 vector          trace_plane_normal;
51 float           trace_plane_dist;
52 entity          trace_ent;
53 float           trace_inopen;
54 float           trace_inwater;
55
56 //
57 // required prog functions
58 //
59 void()          CSQC_Init;
60 void()          CSQC_Shutdown;
61 float(float f, float t, float n)        CSQC_InputEvent;
62 void(float w, float h)          CSQC_UpdateView;
63 float(string s) CSQC_ConsoleCommand;
64
65 //these fields are read and set by the default player physics
66 vector          pmove_org;
67 vector          pmove_vel;
68 vector          pmove_mins;
69 vector          pmove_maxs;
70 //retrieved from the current movement commands (read by player physics)
71 float           input_timelength;
72 vector          input_angles;
73 vector          input_movevalues;       //forwards, right, up.
74 float           input_buttons;          //attack, use, jump (default physics only uses jump)
75
76 float           movevar_gravity;
77 float           movevar_stopspeed;
78 float           movevar_maxspeed;
79 float           movevar_spectatormaxspeed;      //used by NOCLIP movetypes.
80 float           movevar_accelerate;
81 float           movevar_airaccelerate;
82 float           movevar_wateraccelerate;
83 float           movevar_friction;
84 float           movevar_waterfriction;
85 float           movevar_entgravity;     //the local player's gravity field. Is a multiple (1 is the normal value)
86
87 //================================================
88 void            end_sys_globals;                // flag for structure dumping
89 //================================================
90
91 /*
92 ==============================================================================
93
94                         SOURCE FOR ENTVARS_T C STRUCTURE
95
96 ==============================================================================
97 */
98
99 //
100 // system fields (*** = do not set in prog code, maintained by C code)
101 //
102 .float          modelindex;             // *** model index in the precached list
103 .vector         absmin, absmax; // *** origin + mins / maxs
104
105 .float          entnum; // *** the ent number as on the server
106 .float          drawmask;
107 .void()         predraw;
108
109 .float          movetype;
110 .float          solid;
111
112 .vector         origin;                 // ***
113 .vector         oldorigin;              // ***
114 .vector         velocity;
115 .vector         angles;
116 .vector         avelocity;
117
118 .string         classname;              // spawn function
119 .string         model;
120 .float          frame;
121 .float          skin;
122 .float          effects;
123
124 .vector         mins, maxs;             // bounding box extents reletive to origin
125 .vector         size;                   // maxs - mins
126
127 .void()         touch;
128 .void()         use;
129 .void()         think;
130 .void()         blocked;                // for doors or plats, called when can't push other
131
132 .float          nextthink;
133
134 .entity         chain;
135
136 .string         netname;
137
138 .entity         enemy;
139
140 .float          flags;
141
142 .float          colormap;
143
144 .entity         owner;          // who launched a missile
145
146 //================================================
147 void            end_sys_fields;                 // flag for structure dumping
148 //================================================
149
150 // Additional OPTIONAL Fields and Globals
151 float           intermission;
152 float           sb_showscores;
153 float           sb_showaccuracy;
154 float           sbar_currentammo;
155 .string         message;
156 .float renderflags;
157 // float                coop;
158 // float                deathmatch;
159
160 // float                dmg_take;
161 // float                dmg_save;
162 // vector               dmg_origin;
163
164 // Darkplaces Render Modifications
165 #if 0
166 .float alpha;
167 .float renderflags;
168 .vector colormod;
169 .float scale;
170 #endif
171
172 // Basic variables
173 .float enttype; // entity type sent from server
174 .float sv_entnum; // entity number sent from server
175 .float team;
176 .float team_size;
177
178 float vid_conwidth, vid_conheight;
179 float binddb;
180
181 // QUALIFYING
182 float race_checkpoint;
183 float race_time;
184 float race_laptime;
185 float race_checkpointtime;
186 float race_previousbesttime;
187 string race_previousbestname;
188 float race_nextcheckpoint;
189 float race_nextbesttime;
190 string race_nextbestname;
191 float race_penaltyaccumulator; // qualifying: total penalty time in tenths
192 float race_penaltyeventtime; // time when the player got the penalty
193 float race_penaltytime; // duration of penalty time, in tenths
194 string race_penaltyreason; // reason for penalty
195
196 // RACE
197 float race_mycheckpoint;
198 float race_mycheckpointtime;
199 float race_mycheckpointdelta;
200 float race_mycheckpointlapsdelta;
201 string race_mycheckpointenemy;
202 float race_othercheckpoint;
203 float race_othercheckpointtime;
204 float race_othercheckpointdelta;
205 float race_othercheckpointlapsdelta;
206 string race_othercheckpointenemy;
207 float sb_showscores_force;
208
209 // Nexball
210 float nb_pb_period;
211
212 // Spectating
213 float spectatee_status;
214
215 // short mapname
216 string shortmapname;
217
218 //remaining maptime announcer sounds, true when sound was already played
219 float announcer_1min;
220 float announcer_5min;
221
222 // database for misc stuff
223 float tempdb;
224 vector hook_shotorigin;
225
226 #ifdef BLURTEST
227 float blurtest_time0, blurtest_time1, blurtest_radius, blurtest_power;
228 #endif
229
230 float servertime, serverprevtime, serverdeltatime;
231
232 float ticrate;
233
234 .float damageforcescale;
235 .void(float thisdmg, float hittype, vector org, vector thisforce) event_damage;
236
237 // only for Porto
238 float angles_held_status;
239 vector angles_held;