float require_spawnfunc_prefix; // if this float exists, only functions with spawnfunc_ name prefix qualify as spawn functions
-#define BUTTON_ATCK button0
-#define BUTTON_JUMP button2
-#define BUTTON_ATCK2 button3
-#define BUTTON_ZOOM button4
-#define BUTTON_CROUCH button5
-#define BUTTON_HOOK button6
-#define BUTTON_INFO button7
-#define BUTTON_CHAT buttonchat
-#define BUTTON_USE buttonuse
-#define BUTTON_DRAG button8
+#define BUTTON_ATCK button0
+#define BUTTON_JUMP button2
+#define BUTTON_ATCK2 button3
+#define BUTTON_ZOOM button4
+#define BUTTON_CROUCH button5
+#define BUTTON_HOOK button6
+#define BUTTON_INFO button7
+#define BUTTON_CHAT buttonchat
+#define BUTTON_USE buttonuse
+#define BUTTON_DRAG button8
+#define BUTTON_ZOOMSCRIPT button9
// Globals
.vector pos1, pos2;
.vector mangle;
-.float cvar_cl_hitsound;
-
.float pain_finished; //Added by Supajoe
.float pain_frame; //"
.float statdraintime; // record the one-second intervals between draining health and armour when they're over 100
.vector anim_forwardleft; // player running forward and left
.vector anim_backright; // player running backward and right
.vector anim_backleft; // player running back and left
+.vector anim_melee; // player doing the melee action
// weapon animation vectors:
.vector anim_fire1;
void w_ready();
// VorteX: standalone think for weapons, so normal think on weaponentity can be reserved by weaponflashes (which needs update even player dies)
.float weapon_nextthink;
+.float weapon_forbidchange;
.void() weapon_think;
//float PLAYER_WEAPONSELECTION_DELAY = );
.float cvar_cl_handicap;
.float cvar_cl_playerdetailreduction;
.float cvar_scr_centertime;
-.float cvar_cl_shownames;
.string cvar_g_xonoticversion;
.string cvar_cl_weaponpriority;
.string cvar_cl_weaponpriorities[10];
float W_WeaponBit(float wpn);
string W_Name(float weaponid);
-void UpdateSelectedPlayer();
-void ClearSelectedPlayer();
-.entity selected_player;
-.entity last_selected_player;
-.float selected_player_time; // when this player has been selected
-.float selected_player_count; // how long this player has been directly pointed to
-.float selected_player_display_needs_update; // are regular updates necessary? (health)
-.float selected_player_display_timeout; // when the selection will time out
-
void FixIntermissionClient(entity e);
void FixClientCvars(entity e);
.float speedrunning;
// Q3 support
-.float notteam;
-.float notsingle;
-.float notfree;
-.float notq3a;
float q3acompat_machineshotgunswap;
// database
float some_spawn_has_been_used;
float have_team_spawns; // 0 = no team spawns requested, -1 = team spawns requested but none found, 1 = team spawns requested and found
+float have_team_spawns_forteam[17]; // 0 = this team has no spawns, 1 = this team has spawns; team 0 is the "no-team"
// set when showing a kill countdown
.entity killindicator;
.float last_pickup;
+.float hit_time;
+.float typehit_time;
+
.float stat_leadlimit;
float radar_showennemies;
..float current_ammo;
.float weapon_load[WEP_MAXCOUNT]; FTEQCC_YOU_SUCK_THIS_IS_NOT_UNREFERENCED(weapon_load);
-.float zero_ammo; // used by the reloading system, must always be 0
+.float ammo_none; // used by the reloading system, must always be 0
.float clip_load;
.float old_clip_load;
.float clip_size;
+.float minelayer_mines;
#define PROJECTILE_MAKETRIGGER(e) (e).solid = SOLID_CORPSE; (e).dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_BODY | DPCONTENTS_CORPSE
// when doing this, hagar can go through clones
.float nex_charge_rottime;
.float nex_chargepool_ammo;
+.float hagar_load;
+
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;