// these are needed since mutators are compiled last #ifdef SVQC .entity ons_toucher; // player who touched the control point // control point / generator constants #define CP_THINKRATE 0.2 #define GEN_THINKRATE 1 #define CPGEN_SPAWN_OFFSET ('0 0 1' * (PL_MAX_z - 13)) #define CPGEN_WAYPOINT_OFFSET ('0 0 128') #define CPICON_OFFSET ('0 0 96') // list of generators on the map entity ons_worldgeneratorlist; .entity ons_worldgeneratornext; .entity ons_stalegeneratornext; // list of control points on the map entity ons_worldcplist; .entity ons_worldcpnext; .entity ons_stalecpnext; // list of links on the map entity ons_worldlinklist; .entity ons_worldlinknext; .entity ons_stalelinknext; // definitions .entity sprite; .string target2; .float iscaptured; .float islinked; .float isshielded; .float lasthealth; .float lastteam; .float lastshielded; .float lastcaptured; .float waslinked; float ons_stalemate; .float teleport_antispam; .float ons_roundlost; // waypoint sprites .entity bot_basewaypoint; // generator waypointsprite float wpforenemy_announced; .float isgenneighbor[17]; .float iscpneighbor[17]; float ons_notification_time[17]; .float ons_overtime_damagedelay; .vector ons_deathloc; .entity ons_spawn_by; // declarations for functions used outside gamemode_onslaught.qc void ons_Generator_UpdateSprite(entity e); void ons_ControlPoint_UpdateSprite(entity e); float ons_ControlPoint_Attackable(entity cp, float teamnumber); // CaptureShield: Prevent capturing or destroying control point/generator if it is not available yet float ons_captureshield_force; // push force of the shield // bot player logic #define HAVOCBOT_ONS_ROLE_NONE 0 #define HAVOCBOT_ONS_ROLE_DEFENSE 2 #define HAVOCBOT_ONS_ROLE_ASSISTANT 4 #define HAVOCBOT_ONS_ROLE_OFFENSE 8 .entity havocbot_ons_target; .float havocbot_role_flags; .float havocbot_attack_time; void havocbot_role_ons_defense(); void havocbot_role_ons_offense(); void havocbot_role_ons_assistant(); void havocbot_ons_reset_role(entity bot); void havocbot_goalrating_items(float ratingscale, vector org, float sradius); void havocbot_goalrating_enemyplayers(float ratingscale, vector org, float sradius); // score rule declarations #define ST_ONS_CAPS 1 #define SP_ONS_CAPS 4 #define SP_ONS_TAKES 6 #endif