Viewmodels: cl_bobmodel: check onground for other players too
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / stats.qh
1 #ifndef STATS_H
2 #define STATS_H
3
4 // Full list of all stat constants, included in a single location for easy reference
5 // 255 is the current limit (MAX_CL_STATS - 1), engine will need to be modified if you wish to add more stats
6
7 const int MAX_CL_STATS                = 256;
8 // -Wdouble-declaration
9 // const int STAT_HEALTH                 = 0;
10 // 1 empty?
11 const int STAT_WEAPON                 = 2;
12 // -Wdouble-declaration
13 // const int STAT_AMMO                   = 3;
14 // -Wdouble-declaration
15 // const int STAT_ARMOR                  = 4;
16 // -Wdouble-declaration
17 // const int STAT_WEAPONFRAME            = 5;
18 // -Wdouble-declaration
19 // const int STAT_SHELLS                 = 6;
20 // -Wdouble-declaration
21 // const int STAT_NAILS                  = 7;
22 // -Wdouble-declaration
23 // const int STAT_ROCKETS                = 8;
24 // -Wdouble-declaration
25 // const int STAT_CELLS                  = 9;
26 // -Wdouble-declaration
27 // const int STAT_ACTIVEWEAPON           = 10;
28 // -Wdouble-declaration
29 // const int STAT_TOTALSECRETS           = 11;
30 // -Wdouble-declaration
31 // const int STAT_TOTALMONSTERS          = 12;
32 // -Wdouble-declaration
33 // const int STAT_SECRETS                = 13;
34 // -Wdouble-declaration
35 // const int STAT_MONSTERS               = 14;
36 // -Wdouble-declaration
37 // const int STAT_ITEMS                  = 15;
38 // -Wdouble-declaration
39 // const int STAT_VIEWHEIGHT             = 16;
40 // 17 empty?
41 // 18 empty?
42 // 19 empty?
43 // 20 empty?
44 const int STAT_VIEWZOOM               = 21;
45 // 22 empty?
46 // 23 empty?
47 // 24 empty?
48 // 25 empty?
49 // 26 empty?
50 // 27 empty?
51 // 28 empty?
52 // 29 empty?
53 // 30 empty?
54 // 31 empty?
55 const int STAT_KH_KEYS                = 32;
56 const int STAT_CTF_STATE              = 33;
57 // 34 empty?
58 const int STAT_WEAPONS                = 35;
59 const int STAT_SWITCHWEAPON           = 36;
60 const int STAT_GAMESTARTTIME          = 37;
61 const int STAT_STRENGTH_FINISHED      = 38;
62 const int STAT_INVINCIBLE_FINISHED    = 39;
63 // 40 empty?
64 const int STAT_ARC_HEAT               = 41;
65 const int STAT_PRESSED_KEYS           = 42;
66 const int STAT_ALLOW_OLDVORTEXBEAM    = 43; // this stat could later contain some other bits of info, like, more server-side particle config
67 const int STAT_FUEL                   = 44;
68 const int STAT_NB_METERSTART          = 45;
69 const int STAT_SHOTORG                = 46; // compressShotOrigin
70 const int STAT_LEADLIMIT              = 47;
71 const int STAT_WEAPON_CLIPLOAD        = 48;
72 const int STAT_WEAPON_CLIPSIZE        = 49;
73 const int STAT_VORTEX_CHARGE          = 50;
74 const int STAT_LAST_PICKUP            = 51;
75 const int STAT_HUD                    = 52;
76 const int STAT_VORTEX_CHARGEPOOL      = 53;
77 const int STAT_HIT_TIME               = 54;
78 const int STAT_DAMAGE_DEALT_TOTAL     = 55;
79 const int STAT_TYPEHIT_TIME           = 56;
80 const int STAT_LAYED_MINES            = 57;
81 const int STAT_HAGAR_LOAD             = 58;
82 const int STAT_SWITCHINGWEAPON        = 59;
83 const int STAT_SUPERWEAPONS_FINISHED  = 60;
84 const int STAT_VEHICLESTAT_HEALTH     = 61;
85 const int STAT_VEHICLESTAT_SHIELD     = 62;
86 const int STAT_VEHICLESTAT_ENERGY     = 63;
87 const int STAT_VEHICLESTAT_AMMO1      = 64;
88 const int STAT_VEHICLESTAT_RELOAD1    = 65;
89 const int STAT_VEHICLESTAT_AMMO2      = 66;
90 const int STAT_VEHICLESTAT_RELOAD2    = 67;
91 const int STAT_VEHICLESTAT_W2MODE     = 68;
92 const int STAT_NADE_TIMER             = 69;
93 const int STAT_SECRETS_TOTAL          = 70;
94 const int STAT_SECRETS_FOUND          = 71;
95 const int STAT_RESPAWN_TIME           = 72;
96 const int STAT_ROUNDSTARTTIME         = 73;
97 const int STAT_WEAPONS2               = 74;
98 const int STAT_WEAPONS3               = 75;
99 const int STAT_MONSTERS_TOTAL         = 76;
100 const int STAT_MONSTERS_KILLED        = 77;
101 const int STAT_BUFFS                  = 78;
102 const int STAT_NADE_BONUS             = 79;
103 const int STAT_NADE_BONUS_TYPE        = 80;
104 const int STAT_NADE_BONUS_SCORE       = 81;
105 const int STAT_HEALING_ORB            = 82;
106 const int STAT_HEALING_ORB_ALPHA      = 83;
107 const int STAT_PLASMA                 = 84;
108 const int STAT_OK_AMMO_CHARGE         = 85;
109 const int STAT_OK_AMMO_CHARGEPOOL     = 86;
110 const int STAT_FROZEN                 = 87;
111 const int STAT_REVIVE_PROGRESS        = 88;
112 const int STAT_WEAPON_NEXTTHINK       = 89;
113 // 90 empty?
114 // 91 empty?
115 // 92 empty?
116 // 93 empty?
117 // 94 empty?
118 // 95 empty?
119 // 96 empty?
120 // 97 empty?
121 // 98 empty?
122 const int STAT_ROUNDLOST              = 99;
123
124 /* The following stats change depending on the gamemode, so can share the same ID */
125 // IDs 100 to 104 reserved for gamemodes
126
127 // freeze tag, clan arena, jailbreak
128 const int STAT_REDALIVE               = 100;
129 const int STAT_BLUEALIVE              = 101;
130 const int STAT_YELLOWALIVE            = 102;
131 const int STAT_PINKALIVE              = 103;
132
133 // domination
134 const int STAT_DOM_TOTAL_PPS          = 100;
135 const int STAT_DOM_PPS_RED            = 101;
136 const int STAT_DOM_PPS_BLUE           = 102;
137 const int STAT_DOM_PPS_YELLOW         = 103;
138 const int STAT_DOM_PPS_PINK           = 104;
139
140 // vip
141 const int STAT_VIP                    = 100;
142 const int STAT_VIP_RED                = 101;
143 const int STAT_VIP_BLUE               = 102;
144 const int STAT_VIP_YELLOW             = 103;
145 const int STAT_VIP_PINK               = 104;
146
147 // key hunt
148 const int STAT_KH_REDKEY_TEAM         = 100;
149 const int STAT_KH_BLUEKEY_TEAM        = 101;
150 const int STAT_KH_YELLOWKEY_TEAM      = 102;
151 const int STAT_KH_PINKKEY_TEAM        = 103;
152
153 /* Gamemode-specific stats end here */
154
155 const int STAT_PL_VIEW_OFS1           = 105;
156 const int STAT_PL_VIEW_OFS2           = 106;
157 const int STAT_PL_VIEW_OFS3           = 107;
158 const int STAT_PL_MIN1                = 108;
159 const int STAT_PL_MIN2                = 109;
160 const int STAT_PL_MIN3                = 110;
161 const int STAT_PL_MAX1                = 111;
162 const int STAT_PL_MAX2                = 112;
163 const int STAT_PL_MAX3                = 113;
164 const int STAT_PL_CROUCH_MIN1         = 114;
165 const int STAT_PL_CROUCH_MIN2         = 115;
166 const int STAT_PL_CROUCH_MIN3         = 116;
167 const int STAT_PL_CROUCH_MAX1         = 117;
168 const int STAT_PL_CROUCH_MAX2         = 118;
169 const int STAT_PL_CROUCH_MAX3         = 119;
170 const int STAT_PL_CROUCH_VIEW_OFS1    = 117;
171 const int STAT_PL_CROUCH_VIEW_OFS2    = 118;
172 const int STAT_PL_CROUCH_VIEW_OFS3    = 119;
173 const int STAT_WEAPONSINMAP           = 120;
174 const int STAT_WEAPONSINMAP2          = 121;
175 const int STAT_WEAPONSINMAP3          = 122;
176 const int STAT_BUFF_TIME              = 123;
177 const int STAT_CTF_FLAGSTATUS         = 124;
178 // 125 empty?
179 // 126 empty?
180 // 127 empty?
181 // 128 empty?
182 // 129 empty?
183 // 130 empty?
184 // 131 empty?
185 // 132 empty?
186 // 133 empty?
187 // 134 empty?
188 // 135 empty?
189 // 136 empty?
190 // 137 empty?
191 // 138 empty?
192 // 139 empty?
193 // 140 reserved
194 // 141 reserved
195 // 142 reserved
196 // 143 reserved
197 // 144 reserved
198 // 145 reserved
199 // 146 reserved
200 // 147 reserved
201 // 148 reserved
202 // 149 reserved
203 // 150 reserved
204 // 151 reserved
205 // 152 reserved
206 // 153 reserved
207 // 154 reserved
208 // 155 reserved
209 // 156 empty?
210 // 157 empty?
211 // 158 empty?
212 // 159 empty?
213 // 160 empty?
214 // 161 empty?
215 // 162 empty?
216 // 162 empty?
217 // 163 empty?
218 // 164 empty?
219 // 165 empty?
220 const int STAT_MULTIJUMP_DODGING                      = 166;
221 const int STAT_MULTIJUMP_MAXSPEED                     = 167;
222 const int STAT_GAMEPLAYFIX_UPVELOCITYCLEARSONGROUND   = 168;
223 const int STAT_BUGRIGS_REVERSE_STOPPING               = 169;
224 const int STAT_BUGRIGS_REVERSE_SPINNING               = 170;
225 const int STAT_BUGRIGS_CAR_JUMPING                    = 171;
226 const int STAT_BUGRIGS_FRICTION_AIR                   = 172;
227 const int STAT_BUGRIGS_STEER                          = 173;
228 const int STAT_BUGRIGS_SPEED_POW                      = 174;
229 const int STAT_BUGRIGS_SPEED_REF                      = 175;
230 const int STAT_BUGRIGS_ACCEL                          = 176;
231 const int STAT_BUGRIGS_FRICTION_BRAKE                 = 177;
232 const int STAT_BUGRIGS_AIR_STEERING                   = 178;
233 const int STAT_BUGRIGS_FRICTION_FLOOR                 = 179;
234 const int STAT_BUGRIGS_REVERSE_SPEEDING               = 180;
235 const int STAT_BUGRIGS_PLANAR_MOVEMENT                = 181;
236 const int STAT_BUGRIGS_ANGLE_SMOOTHING                = 182;
237 const int STAT_BUGRIGS                                = 183;
238 const int STAT_GAMEPLAYFIX_STEPDOWN                   = 184;
239 const int STAT_MOVEVARS_JUMPSTEP                      = 185;
240 const int STAT_NOSTEP                                 = 186;
241 const int STAT_GAMEPLAYFIX_UNSTICKPLAYERS             = 187;
242 const int STAT_GAMEPLAYFIX_STEPMULTIPLETIMES          = 188;
243 const int STAT_GAMEPLAYFIX_DOWNTRACEONGROUND          = 189;
244 const int STAT_GAMEPLAYFIX_EASIERWATERJUMP            = 190;
245 const int STAT_MOVEVARS_FRICTION_SLICK                = 191;
246 const int STAT_MOVEVARS_FRICTION_ONLAND               = 192;
247 const int STAT_MOVEVARS_JUMPSPEEDCAP_DISABLE_ONRAMPS  = 193;
248 const int STAT_MOVEVARS_TRACK_CANJUMP                 = 194;
249 // 195 empty?
250 const int STAT_DOUBLEJUMP                             = 196;
251 const int STAT_MOVEVARS_CL_TRACK_CANJUMP              = 197;
252 const int STAT_MULTIJUMP_ADD                          = 198;
253 const int STAT_MULTIJUMP_SPEED                        = 199;
254 const int STAT_MULTIJUMP                              = 200;
255 const int STAT_DODGING_TIMEOUT                        = 201;
256 const int STAT_DODGING_WALL                           = 202;
257 const int STAT_DODGING_UP_SPEED                       = 203;
258 const int STAT_DODGING_RAMP_TIME                      = 204;
259 const int STAT_DODGING_HEIGHT_THRESHOLD               = 205;
260 const int STAT_DODGING_DISTANCE_THRESHOLD             = 206;
261 const int STAT_DODGING_HORIZ_SPEED                    = 207;
262 const int STAT_DODGING_DELAY                          = 208;
263 const int STAT_DODGING_FROZEN_NO_DOUBLETAP            = 209;
264 const int STAT_DODGING_HORIZ_SPEED_FROZEN             = 210;
265 const int STAT_DODGING                                = 211;
266 const int STAT_DODGING_FROZEN                         = 212;
267 const int STAT_JETPACK_MAXSPEED_UP                    = 213;
268 const int STAT_JETPACK_MAXSPEED_SIDE                  = 214;
269 const int STAT_JETPACK_FUEL                           = 215;
270 const int STAT_JETPACK_ANTIGRAVITY                    = 216;
271 const int STAT_JETPACK_ACCEL_SIDE                     = 217;
272 const int STAT_JETPACK_ACCEL_UP                       = 218;
273 const int STAT_MOVEVARS_HIGHSPEED                     = 219;
274 const int STAT_MOVEVARS_AIRACCEL_QW_STRETCHFACTOR     = 220;
275 const int STAT_MOVEVARS_AIRCONTROL_PENALTY            = 221;
276 const int STAT_MOVEVARS_AIRSPEEDLIMIT_NONQW           = 222;
277 const int STAT_MOVEVARS_AIRSTRAFEACCEL_QW             = 223;
278 const int STAT_MOVEVARS_AIRCONTROL_POWER              = 224;
279 const int STAT_MOVEFLAGS                              = 225;
280 const int STAT_MOVEVARS_WARSOWBUNNY_AIRFORWARDACCEL   = 226;
281 const int STAT_MOVEVARS_WARSOWBUNNY_ACCEL             = 227;
282 const int STAT_MOVEVARS_WARSOWBUNNY_TOPSPEED          = 228;
283 const int STAT_MOVEVARS_WARSOWBUNNY_TURNACCEL         = 229;
284 const int STAT_MOVEVARS_WARSOWBUNNY_BACKTOSIDERATIO   = 230;
285 const int STAT_MOVEVARS_AIRSTOPACCELERATE             = 231;
286 const int STAT_MOVEVARS_AIRSTRAFEACCELERATE           = 232;
287 const int STAT_MOVEVARS_MAXAIRSTRAFESPEED             = 233;
288 const int STAT_MOVEVARS_AIRCONTROL                    = 234;
289 // -Wdouble-declaration
290 // const int STAT_FRAGLIMIT                              = 235;
291 // -Wdouble-declaration
292 // const int STAT_TIMELIMIT                              = 236;
293 const int STAT_MOVEVARS_WALLFRICTION                  = 237;
294 const int STAT_MOVEVARS_FRICTION                      = 238;
295 const int STAT_MOVEVARS_WATERFRICTION                 = 239;
296 // -Wdouble-declaration
297 // const int STAT_MOVEVARS_TICRATE                       = 240;
298 // -Wdouble-declaration
299 // const int STAT_MOVEVARS_TIMESCALE                     = 241;
300 // -Wdouble-declaration
301 // const int STAT_MOVEVARS_GRAVITY                       = 242;
302 const int STAT_MOVEVARS_STOPSPEED                     = 243;
303 const int STAT_MOVEVARS_MAXSPEED                      = 244;
304 const int STAT_MOVEVARS_SPECTATORMAXSPEED             = 245;
305 const int STAT_MOVEVARS_ACCELERATE                    = 246;
306 const int STAT_MOVEVARS_AIRACCELERATE                 = 247;
307 const int STAT_MOVEVARS_WATERACCELERATE               = 248;
308 const int STAT_MOVEVARS_ENTGRAVITY                    = 249;
309 const int STAT_MOVEVARS_JUMPVELOCITY                  = 250;
310 const int STAT_MOVEVARS_EDGEFRICTION                  = 251;
311 const int STAT_MOVEVARS_MAXAIRSPEED                   = 252;
312 const int STAT_MOVEVARS_STEPHEIGHT                    = 253;
313 const int STAT_MOVEVARS_AIRACCEL_QW                   = 254;
314 const int STAT_MOVEVARS_AIRACCEL_SIDEWAYS_FRICTION    = 255;
315 #endif