3 #include <common/constants.qh>
4 #include <common/weapons/_all.qh>
6 bool autocvar_cl_db_saveasdump;
7 bool autocvar_cl_spawn_event_particles;
8 bool autocvar_cl_spawn_event_sound = 1;
9 // float autocvar_cl_spawn_point_model;
10 bool autocvar_cl_spawn_point_particles;
11 float autocvar_cl_spawn_point_dist_max = 1200;
12 bool autocvar_cl_unpress_zoom_on_spawn = true;
13 bool autocvar_cl_unpress_zoom_on_death = true;
14 bool autocvar_cl_unpress_zoom_on_weapon_switch = true;
15 bool autocvar_cl_unpress_attack_on_weapon_switch = false;
16 bool autocvar_hud_showbinds;
17 bool autocvar_hud_showbinds_limit;
18 bool autocvar__hud_showbinds_reload;
19 bool autocvar_developer_csqcentities;
20 bool autocvar_cl_race_cptimes_onlyself; // TODO: move to race gamemode
21 bool autocvar_cl_race_cptimes_showself = false;
23 // Map coordinate base calculations need these
32 #define ISGAMETYPE(NAME) (gametype == MAPINFO_TYPE_##NAME)
39 void Ent_Remove(entity this);
45 float team_count; // real teams
49 float RegisterPlayer(entity player);
51 void RemovePlayer(entity player);
53 void MoveToLast(entity e);
55 float RegisterTeam(entity Team);
57 void RemoveTeam(entity Team);
59 entity GetTeam(int Team, bool add);
61 bool SetTeam(entity pl, int Team);
65 float RANKINGS_RECEIVED_CNT;
66 float RANKINGS_DISPLAY_CNT;
67 string grecordholder[RANKINGS_CNT];
68 float grecordtime[RANKINGS_CNT];
70 entity playerslots[255]; // 255 is engine limit on maxclients
71 entity teamslots[17]; // 17 teams (including "spectator team")
77 IntrusiveList g_drawables;
78 IntrusiveList g_drawables_2d;
79 IntrusiveList g_radarlinks;
80 IntrusiveList g_radaricons;
83 g_drawables = IL_NEW();
84 g_drawables_2d = IL_NEW();
85 g_radarlinks = IL_NEW();
86 g_radaricons = IL_NEW();
91 .void(entity) entremove;
93 vector view_origin, view_forward, view_right, view_up;
95 .float renderflags; // engine field
98 bool spectatorbutton_zoom;
101 float current_viewzoom;
107 float welcome_msg_menu_check_maxtime;
108 void Welcome_Message_Show_Try();
112 string _getcommandkey(string text, string command, bool forcename);
113 #define getcommandkey(cmd_name, command) _getcommandkey(cmd_name, command, false)
114 #define getcommandkey_forcename(cmd_name, command) _getcommandkey(cmd_name, command, true)
116 string vote_called_vote;
118 bool ready_waiting_for_me;
120 bool vote_waiting_for_me;
122 float current_zoomfraction;
124 int vid_width, vid_height;
125 float vid_pixelheight;
127 float camera_active; // Demo camera is active if set to true
128 float chase_active_backup;
130 vector camera_direction;
132 const float ALPHA_MIN_VISIBLE = 0.003;
134 float armorblockpercent;
135 float damagepush_speedfactor;
139 const int HOOK_START = 1;
140 const int HOOK_END = 2;
142 .float ping, ping_packetloss, ping_movementloss;
144 float g_trueaim_minrange;
150 const int MAX_SPECTATORS = 7;
151 int spectatorlist[MAX_SPECTATORS];
155 float GetSpeedUnitFactor(int speed_unit);
156 string GetSpeedUnit(int speed_unit);
158 .int enttype; // entity type sent from server
159 .int sv_entnum; // entity number sent from server
169 // >0 - id of spectated player
170 float spectatee_status;
171 float spectatee_status_changed_time;
173 #define player_currententnum (spectatee_status > 0 ? spectatee_status : player_localnum + 1)
178 // database for misc stuff
181 vector hook_shotorigin[4]; // WEAPONTODO
182 vector lightning_shotorigin[4]; // TODO: unused
184 float serverprevtime, serverdeltatime;