float ctf_score_value(string parameter);
-float g_dm, g_domination, g_ctf, g_tdm, g_keyhunt, g_onslaught, g_assault, g_arena, g_ca, g_lms, g_runematch, g_race, g_nexball, g_cts;
-float g_cloaked, g_footsteps, g_jump_grunt, g_grappling_hook, g_laserguided_missile, g_midair, g_minstagib, g_pinata, g_norecoil, g_vampire, g_minstagib_invis_alpha, g_bloodloss;
+float g_dm, g_domination, g_ctf, g_tdm, g_keyhunt, g_onslaught, g_assault, g_arena, g_ca, g_lms, g_runematch, g_race, g_nexball, g_cts, g_keepaway;
+float g_cloaked, g_footsteps, g_jump_grunt, g_grappling_hook, g_midair, g_minstagib, g_pinata, g_norecoil, g_minstagib_invis_alpha, g_bloodloss;
float g_warmup_limit;
float g_warmup_allguns;
float g_warmup_allow_timeout;
float WS_INUSE = 3; // fire state
float WS_READY = 4; // idle frame
+// there is 2 weapon tics that can run in one server frame
+#define W_TICSPERFRAME 2
+
void weapon_defaultspawnfunc(float wpn);
string w_deathtypestring;
-float w_deathtype;
void(entity client, string s) centerprint_builtin = #73;
.vector dest1, dest2;
.float welcomemessage_time;
.float version;
-// Laser target for laser-guided weapons
-.entity lasertarget;
-.float laser_on;
-
// minstagib vars
.float jump_interval; // laser refire
.float cvar_cl_gunalign;
.float cvar_cl_noantilag;
+.string weaponorder_byimpulse;
+
+.float cvar_cl_allow_uid2name;
+.string stored_netname;
+
void Announce(string snd);
void AnnounceTo(entity e, string snd);
// TODO implemented fall and falling
#define ALLPLAYERSOUNDS \
_VOICEMSG(death) \
+ _VOICEMSG(fall) \
_VOICEMSG(drown) \
_VOICEMSG(gasp) \
_VOICEMSG(jump) \
.string fog;
string cvar_changes;
+string cvar_purechanges;
+float cvar_purechanges_count;
float game_starttime; //point in time when the countdown is over
.float stat_game_starttime;
.float stat_sv_airaccel_qw;
.float stat_sv_airstrafeaccel_qw;
.float stat_sv_airspeedlimit_nonqw;
+.float stat_sv_maxspeed;
void W_Porto_Remove (entity p);
.string target4;
.float trigger_reverse;
-// Nexball
-.entity ballcarried;
+// Nexball
+.entity ballcarried; // Also used for keepaway
.float metertime;
float g_nexball_meter_period;
.float hitplotfh;
.string noise4;
-.float stat_hit;
-.float stat_fired;
-.float stat_count;
-
-.float stats_hit[WEP_MAXCOUNT]; // for hitscan bullets hit
-.float stats_fired[WEP_MAXCOUNT]; // for hitscan bullets fired
-
-FTEQCC_YOU_SUCK_THIS_IS_NOT_UNREFERENCED(stats_hit);
-FTEQCC_YOU_SUCK_THIS_IS_NOT_UNREFERENCED(stats_fired);
+.float last_pickup;
.float stat_leadlimit;
.float active;
.float (float act_state) setactive;
.entity realowner;
+
+.float nex_charge;
+.float nex_charge_rottime;
+.float nex_charge_pool_ammo;
+
+float allowed_to_spawn; // boolean variable used by the clan arena code to determine if a player can spawn (after the round has ended)
+
+float serverflags;
+
+.float team_forced; // can be a team number to force a team, or 0 for default action, or -1 for forced spectator