Xonotic QuakeC
The free, fast arena FPS with crisp movement and a wide array of weapons
sv_ctf.qh File Reference
Include dependency graph for sv_ctf.qh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Flag

Macros

#define CTF_DIFFTEAM(a, b)
#define CTF_SAMETEAM(a, b)
#define ctf_spawnorigin   dropped_origin
#define FLAG_SPAWN_OFFSET   ('0 0 1' * (PL_MAX_CONST.z - 13))
#define snd_flag_capture   noise2
#define snd_flag_respawn   noise3
#define snd_flag_returned   noise1
#define snd_flag_taken   noise
#define WPCOLOR_DROPPEDFLAG(t)
#define WPCOLOR_ENEMYFC(t)
#define WPCOLOR_FLAGCARRIER(t)

Functions

void ctf_FlagTouch (entity this, entity toucher)
void ctf_Handle_Throw (entity player, entity receiver, float droptype)
void ctf_Initialize ()
void ctf_RespawnFlag (entity flag)
bool ctf_Stalemate_Customize (entity this, entity client)
void havocbot_role_ctf_setrole (entity bot, int role)
 REGISTER_MUTATOR (ctf, false)

Variables

int autocvar_captureleadlimit_override
int autocvar_capturelimit_override
string capeffect
const int CAPTURE_DROPPED = 2
const int CAPTURE_NORMAL = 1
float ctf_captimerecord
float ctf_captureshield_force
float ctf_captureshield_max_ratio
float ctf_captureshield_min_negscore
bool ctf_captureshielded
entity ctf_dropper
float ctf_droptime
Flag CTF_FLAG
bool ctf_flagdamaged_byworld
float ctf_landtime
bool ctf_oneflag
float ctf_pickuptime
entity ctf_staleflagnext
bool ctf_stalemate
int ctf_status
int ctf_teams
const int DROP_NORMAL = 1
const int DROP_PASS = 3
const int DROP_RESET = 4
const int DROP_THROW = 2
entity enemy
const int FLAG_BASE = 1
const int FLAG_CARRY = 3
const vector FLAG_CARRY_OFFSET = ('-16 0 8')
const vector FLAG_DROP_OFFSET = ('0 0 32')
const int FLAG_DROPPED = 2
const int FLAG_FLOAT_OFFSET_Z = 32
const int FLAG_PASS_ARC_OFFSET_Z = -10
const int FLAG_PASSING = 4
const float FLAG_SCALE = 0.5625
const float FLAG_THINKRATE = 0.2
const float FLAG_TOUCHRATE = 0.5
const vector FLAG_WAYPOINT_OFFSET = ('0 0 64')
entity flagcarried
IntrusiveList g_flags
bool havocbot_cantfindflag
const int HAVOCBOT_CTF_ROLE_CARRIER = 16
const int HAVOCBOT_CTF_ROLE_DEFENSE = 2
const int HAVOCBOT_CTF_ROLE_ESCORT = 64
const int HAVOCBOT_CTF_ROLE_MIDDLE = 4
const int HAVOCBOT_CTF_ROLE_NONE = 0
const int HAVOCBOT_CTF_ROLE_OFFENSE = 8
const int HAVOCBOT_CTF_ROLE_RETRIEVER = 32
float next_take_time
float pass_distance
entity pass_sender
entity pass_target
string passeffect
const int PICKUP_BASE = 1
const int PICKUP_DROPPED = 2
const int RETURN_DAMAGE = 3
const int RETURN_DROPPED = 2
const int RETURN_NEEDKILL = 5
const int RETURN_SPEEDRUN = 4
const int RETURN_TIMEOUT = 1
float score_assist
float score_capture
float score_drop
float score_pickup
float score_return
float score_team_capture
string snd_flag_dropped
string snd_flag_pass
string snd_flag_touch
const int ST_CTF_CAPS = 1
float throw_antispam
int throw_count
float throw_prevtime
string toucheffect
const vector VEHICLE_FLAG_OFFSET = ('0 0 96')
const float VEHICLE_FLAG_SCALE = 1.0
const float WPFE_THINKRATE = 0.5
bool wpforenemy_announced
float wpforenemy_nextthink
entity wps_enemyflagcarrier
entity wps_flagbase
entity wps_flagcarrier
entity wps_flagdropped
entity wps_flagreturn
entity wps_helpme
float wps_helpme_time

Macro Definition Documentation

◆ CTF_DIFFTEAM

#define CTF_DIFFTEAM ( a,
b )
Value:
bool autocvar_g_ctf_oneflag_reverse
Definition sv_ctf.qc:35
bool autocvar_g_ctf_reverse
Definition sv_ctf.qc:91
bool ctf_oneflag
Definition sv_ctf.qh:170
#define SAME_TEAM(a, b)
Definition teams.qh:241
#define DIFF_TEAM(a, b)
Definition teams.qh:242

Definition at line 187 of file sv_ctf.qh.

Referenced by ctf_Handle_Capture(), ctf_Handle_Pickup(), havocbot_ctf_find_enemy_flag(), and havocbot_goalrating_ctf_enemyflag().

◆ CTF_SAMETEAM

◆ ctf_spawnorigin

#define ctf_spawnorigin   dropped_origin

Definition at line 142 of file sv_ctf.qh.

Referenced by ctf_FlagThink().

◆ FLAG_SPAWN_OFFSET

#define FLAG_SPAWN_OFFSET   ('0 0 1' * (PL_MAX_CONST.z - 13))

Definition at line 59 of file sv_ctf.qh.

Referenced by ctf_FlagSetup().

◆ snd_flag_capture

#define snd_flag_capture   noise2

Definition at line 78 of file sv_ctf.qh.

Referenced by ctf_FlagSetup().

◆ snd_flag_respawn

#define snd_flag_respawn   noise3

Definition at line 79 of file sv_ctf.qh.

Referenced by ctf_FlagSetup().

◆ snd_flag_returned

#define snd_flag_returned   noise1

Definition at line 77 of file sv_ctf.qh.

Referenced by ctf_FlagSetup().

◆ snd_flag_taken

#define snd_flag_taken   noise

Definition at line 76 of file sv_ctf.qh.

Referenced by ctf_FlagSetup().

◆ WPCOLOR_DROPPEDFLAG

#define WPCOLOR_DROPPEDFLAG ( t)
Value:
((t) ? ('0.25 0.25 0.25' + colormapPaletteColor(t - 1, false)) * 0.5 : '1 1 1')
#define colormapPaletteColor(c, isPants)
Definition color.qh:5

Definition at line 73 of file sv_ctf.qh.

Referenced by ctf_Handle_Drop().

◆ WPCOLOR_ENEMYFC

#define WPCOLOR_ENEMYFC ( t)
Value:
((t) ? colormapPaletteColor(t - 1, false) * 0.75 : '1 1 1')

Definition at line 70 of file sv_ctf.qh.

Referenced by ctf_CheckStalemate(), and ctf_FlagcarrierWaypoints().

◆ WPCOLOR_FLAGCARRIER

#define WPCOLOR_FLAGCARRIER ( t)
Value:
((t) ? colormapPaletteColor(t - 1, false) * 0.75 : '1 1 1')

Definition at line 71 of file sv_ctf.qh.

Referenced by ctf_FlagcarrierWaypoints().

Function Documentation

◆ ctf_FlagTouch()

void ctf_FlagTouch ( entity this,
entity toucher )

Definition at line 67 of file sv_ctf.qh.

#define ITEM_HANDLE(signal,...)
Definition item.qh:125
entity entity toucher
Definition self.qh:72
Flag CTF_FLAG
Definition sv_ctf.qh:47

References CTF_FLAG, entity(), ITEM_HANDLE, and toucher.

Referenced by ctf_FlagSetup().

◆ ctf_Handle_Throw()

void ctf_Handle_Throw ( entity player,
entity receiver,
float droptype )

References entity().

◆ ctf_Initialize()

void ctf_Initialize ( )

Definition at line 2925 of file sv_ctf.qc.

2926{
2927 CTF_FLAG = NEW(Flag);
2929 ctf_captimerecord = stof(db_get(ServerProgsDB, strcat(GetMapname(), "/captimerecord/time")));
2930
2934
2936}
Definition sv_ctf.qh:37
#define CTF_RECORD
Definition util.qh:99
const int INITPRIO_GAMETYPE
Definition constants.qh:94
string GetMapname()
ERASEABLE string db_get(int db, string key)
Definition map.qh:91
float stof(string val,...)
strcat(_("^F4Countdown stopped!"), "\n^BG", _("Teams are too unbalanced."))
#define NEW(cname,...)
Definition oo.qh:117
#define NULL
Definition post.qh:14
int autocvar_g_ctf_shield_min_negscore
Definition sv_ctf.qc:87
float autocvar_g_ctf_shield_max_ratio
Definition sv_ctf.qc:86
float autocvar_g_ctf_shield_force
Definition sv_ctf.qc:85
void ctf_DelayedInit(entity this)
Definition sv_ctf.qc:2878
float ctf_captureshield_min_negscore
Definition sv_ctf.qh:165
float ctf_captureshield_force
Definition sv_ctf.qh:167
float ctf_captimerecord
Definition sv_ctf.qh:144
float ctf_captureshield_max_ratio
Definition sv_ctf.qh:166
void InitializeEntity(entity e, void(entity this) func, int order)
Definition world.qc:2209
string record_type
Definition world.qh:55
float ServerProgsDB
Definition world.qh:128

References autocvar_g_ctf_shield_force, autocvar_g_ctf_shield_max_ratio, autocvar_g_ctf_shield_min_negscore, ctf_captimerecord, ctf_captureshield_force, ctf_captureshield_max_ratio, ctf_captureshield_min_negscore, ctf_DelayedInit(), CTF_FLAG, CTF_RECORD, db_get(), GetMapname(), InitializeEntity(), INITPRIO_GAMETYPE, NEW, NULL, record_type, ServerProgsDB, stof(), and strcat().

Referenced by REGISTER_MUTATOR().

◆ ctf_RespawnFlag()

void ctf_RespawnFlag ( entity flag)

Definition at line 1236 of file sv_ctf.qc.

1237{
1238 flag.watertype = CONTENT_EMPTY; // TODO: it is unclear why this workaround is needed, likely many other potential breakage points!!
1239
1240 // reset the player (if there is one)
1241 if((flag.owner) && (flag.owner.flagcarried == flag))
1242 {
1243 WaypointSprite_Kill(flag.owner.wps_enemyflagcarrier);
1244 WaypointSprite_Kill(flag.owner.wps_flagreturn);
1245 WaypointSprite_Kill(flag.wps_flagcarrier);
1246
1247 flag.owner.flagcarried = NULL;
1248 GameRules_scoring_vip(flag.owner, false);
1249
1250 if(flag.speedrunning)
1251 ctf_FakeTimeLimit(flag.owner, -1);
1252 }
1253
1254 if((flag.owner) && (flag.owner.vehicle))
1255 flag.scale = FLAG_SCALE;
1256
1257 if(flag.ctf_status == FLAG_DROPPED)
1258 { WaypointSprite_Kill(flag.wps_flagdropped); }
1259
1260 // reset the flag
1261 setattachment(flag, NULL, "");
1262 flag.solid = SOLID_TRIGGER; // before setorigin to ensure area grid linking
1263 setorigin(flag, flag.ctf_spawnorigin);
1264
1265 //set_movetype(flag, ((flag.noalign) ? MOVETYPE_NONE : MOVETYPE_TOSS)); // would be desired, except maps that want floating flags have it set to fall!
1266 set_movetype(flag, MOVETYPE_NONE); // match the initial setup handling (flag doesn't move when spawned)
1267 flag.takedamage = DAMAGE_NO;
1268 SetResourceExplicit(flag, RES_HEALTH, flag.max_health);
1269 flag.velocity = '0 0 0';
1270 flag.angles = flag.mangle;
1271 flag.flags = FL_ITEM | FL_NOTARGET;
1272
1273 flag.damagedbycontents = false;
1276
1278
1279 flag.ctf_status = FLAG_BASE;
1280 flag.owner = NULL;
1281 flag.pass_distance = 0;
1282 flag.pass_sender = NULL;
1283 flag.pass_target = NULL;
1284 flag.ctf_dropper = NULL;
1285 flag.ctf_pickuptime = 0;
1286 flag.ctf_droptime = 0;
1287 flag.ctf_landtime = 0;
1288 flag.ctf_flagdamaged_byworld = false;
1290
1292
1293 if(flag.classname == "phantomflag")
1294 delete(flag);
1295}
void navigation_dynamicgoal_unset(entity this)
Definition navigation.qc:96
bool SetResourceExplicit(entity e, Resource res_type, float amount)
Sets the resource amount of an entity without calling any hooks.
const int FL_NOTARGET
Definition constants.qh:76
const int FL_ITEM
Definition constants.qh:77
const float SOLID_TRIGGER
const float CONTENT_EMPTY
IntrusiveList g_damagedbycontents
Definition damage.qh:135
ERASEABLE void IL_REMOVE(IntrusiveList this, entity it)
Remove any element, anywhere in the list.
ERASEABLE bool IL_CONTAINS(IntrusiveList this, entity it)
void set_movetype(entity this, int mt)
Definition movetypes.qc:4
const int MOVETYPE_NONE
Definition movetypes.qh:129
@ STATUSEFFECT_REMOVE_CLEAR
Effect is being forcibly removed without calling any additional mechanics.
Definition all.qh:30
void StatusEffects_removeall(entity actor, int removal_type)
const int DAMAGE_NO
Definition subs.qh:79
void ctf_FakeTimeLimit(entity e, float t)
Definition sv_ctf.qc:95
void ctf_CheckStalemate()
Definition sv_ctf.qc:902
const float FLAG_SCALE
Definition sv_ctf.qh:51
const int FLAG_BASE
Definition sv_ctf.qh:115
const int FLAG_DROPPED
Definition sv_ctf.qh:116
#define GameRules_scoring_vip(player, value)
Definition sv_rules.qh:78
void WaypointSprite_Kill(entity wp)

References CONTENT_EMPTY, ctf_CheckStalemate(), ctf_FakeTimeLimit(), DAMAGE_NO, entity(), FL_ITEM, FL_NOTARGET, FLAG_BASE, FLAG_DROPPED, FLAG_SCALE, g_damagedbycontents, GameRules_scoring_vip, IL_CONTAINS(), IL_REMOVE(), MOVETYPE_NONE, navigation_dynamicgoal_unset(), NULL, set_movetype(), SetResourceExplicit(), SOLID_TRIGGER, STATUSEFFECT_REMOVE_CLEAR, StatusEffects_removeall(), and WaypointSprite_Kill().

Referenced by ctf_CheckFlagReturn(), ctf_Handle_Capture(), ctf_Handle_Return(), ctf_Handle_Throw(), ctf_Reset(), and MUTATOR_HOOKFUNCTION().

◆ ctf_Stalemate_Customize()

bool ctf_Stalemate_Customize ( entity this,
entity client )

Definition at line 886 of file sv_ctf.qc.

887{
888 // make spectators see what the player would see
890 entity wp_owner = this.owner;
891
892 // team waypoints
893 //if(CTF_SAMETEAM(wp_owner.flagcarried, wp_owner)) { return false; }
894 if(SAME_TEAM(wp_owner, e) || !IS_PLAYER(e))
895 return false;
896 if(IS_INVISIBLE(wp_owner))
897 return false; // hide the waypointsprite if the owner is invisible
898
899 return true;
900}
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
entity owner
Definition main.qh:87
#define IS_PLAYER(s)
Definition player.qh:243
#define IS_INVISIBLE(v)
Definition utils.qh:27
entity WaypointSprite_getviewentity(entity e)

References entity(), IS_INVISIBLE, IS_PLAYER, owner, SAME_TEAM, and WaypointSprite_getviewentity().

Referenced by ctf_CheckStalemate(), and ctf_FlagcarrierWaypoints().

◆ havocbot_role_ctf_setrole()

void havocbot_role_ctf_setrole ( entity bot,
int role )

Definition at line 2177 of file sv_ctf.qc.

2178{
2179 string s = "(null)";
2180 switch(role)
2181 {
2183 s = "carrier";
2184 bot.havocbot_role = havocbot_role_ctf_carrier;
2185 bot.havocbot_role_timeout = 0;
2186 bot.havocbot_cantfindflag = time + 10;
2187 if (bot.havocbot_previous_role != bot.havocbot_role)
2189 break;
2191 s = "defense";
2192 bot.havocbot_role = havocbot_role_ctf_defense;
2193 bot.havocbot_role_timeout = 0;
2194 break;
2196 s = "middle";
2197 bot.havocbot_role = havocbot_role_ctf_middle;
2198 bot.havocbot_role_timeout = 0;
2199 break;
2201 s = "offense";
2202 bot.havocbot_role = havocbot_role_ctf_offense;
2203 bot.havocbot_role_timeout = 0;
2204 break;
2206 s = "retriever";
2207 bot.havocbot_previous_role = bot.havocbot_role;
2208 bot.havocbot_role = havocbot_role_ctf_retriever;
2209 bot.havocbot_role_timeout = time + 10;
2210 if (bot.havocbot_previous_role != bot.havocbot_role)
2212 break;
2214 s = "escort";
2215 bot.havocbot_previous_role = bot.havocbot_role;
2216 bot.havocbot_role = havocbot_role_ctf_escort;
2217 bot.havocbot_role_timeout = time + 30;
2218 if (bot.havocbot_previous_role != bot.havocbot_role)
2220 break;
2221 }
2222 LOG_TRACE(bot.netname, " switched to ", s);
2223}
void navigation_goalrating_timeout_force(entity this)
Definition navigation.qc:29
void navigation_goalrating_timeout_expire(entity this, float seconds)
Definition navigation.qc:36
float time
#define LOG_TRACE(...)
Definition log.qh:76
void havocbot_role_ctf_middle(entity this)
Definition sv_ctf.qc:2049
void havocbot_role_ctf_carrier(entity this)
Definition sv_ctf.qc:1792
void havocbot_role_ctf_escort(entity this)
Definition sv_ctf.qc:1845
void havocbot_role_ctf_offense(entity this)
Definition sv_ctf.qc:1913
void havocbot_role_ctf_defense(entity this)
Definition sv_ctf.qc:2108
void havocbot_role_ctf_retriever(entity this)
Definition sv_ctf.qc:1991
const int HAVOCBOT_CTF_ROLE_RETRIEVER
Definition sv_ctf.qh:178
const int HAVOCBOT_CTF_ROLE_DEFENSE
Definition sv_ctf.qh:174
const int HAVOCBOT_CTF_ROLE_MIDDLE
Definition sv_ctf.qh:175
const int HAVOCBOT_CTF_ROLE_ESCORT
Definition sv_ctf.qh:179
const int HAVOCBOT_CTF_ROLE_OFFENSE
Definition sv_ctf.qh:176
const int HAVOCBOT_CTF_ROLE_CARRIER
Definition sv_ctf.qh:177

References entity(), HAVOCBOT_CTF_ROLE_CARRIER, HAVOCBOT_CTF_ROLE_DEFENSE, HAVOCBOT_CTF_ROLE_ESCORT, HAVOCBOT_CTF_ROLE_MIDDLE, HAVOCBOT_CTF_ROLE_OFFENSE, HAVOCBOT_CTF_ROLE_RETRIEVER, havocbot_role_ctf_carrier(), havocbot_role_ctf_defense(), havocbot_role_ctf_escort(), havocbot_role_ctf_middle(), havocbot_role_ctf_offense(), havocbot_role_ctf_retriever(), LOG_TRACE, navigation_goalrating_timeout_expire(), navigation_goalrating_timeout_force(), and time.

Referenced by havocbot_ctf_reset_role(), havocbot_role_ctf_defense(), havocbot_role_ctf_escort(), havocbot_role_ctf_middle(), havocbot_role_ctf_offense(), and havocbot_role_ctf_retriever().

◆ REGISTER_MUTATOR()

REGISTER_MUTATOR ( ctf ,
false  )

Definition at line 14 of file sv_ctf.qh.

15{
18 {
19 GameRules_teams(true);
22
23 g_flags = IL_NEW();
25 }
26 return 0;
27}
#define MUTATOR_ONADD
Definition base.qh:309
#define MUTATOR_STATIC()
Definition base.qh:313
#define IL_NEW()
IntrusiveList g_flags
Definition sv_ctf.qh:12
int autocvar_captureleadlimit_override
Definition sv_ctf.qh:10
void ctf_Initialize()
Definition sv_ctf.qc:2925
int autocvar_capturelimit_override
Definition sv_ctf.qh:11
void GameRules_limit_score(int limit)
Definition sv_rules.qc:23
void GameRules_teams(bool value)
Definition sv_rules.qc:3
void GameRules_limit_lead(int limit)
Definition sv_rules.qc:33

References autocvar_captureleadlimit_override, autocvar_capturelimit_override, ctf_Initialize(), g_flags, GameRules_limit_lead(), GameRules_limit_score(), GameRules_teams(), IL_NEW, MUTATOR_ONADD, and MUTATOR_STATIC.

Variable Documentation

◆ autocvar_captureleadlimit_override

int autocvar_captureleadlimit_override

Definition at line 10 of file sv_ctf.qh.

Referenced by REGISTER_MUTATOR().

◆ autocvar_capturelimit_override

int autocvar_capturelimit_override

Definition at line 11 of file sv_ctf.qh.

Referenced by REGISTER_MUTATOR().

◆ capeffect

string capeffect

Definition at line 98 of file sv_ctf.qh.

◆ CAPTURE_DROPPED

const int CAPTURE_DROPPED = 2

Definition at line 129 of file sv_ctf.qh.

Referenced by ctf_FlagThink(), and ctf_Handle_Capture().

◆ CAPTURE_NORMAL

const int CAPTURE_NORMAL = 1

Definition at line 128 of file sv_ctf.qh.

Referenced by ctf_Handle_Capture().

◆ ctf_captimerecord

float ctf_captimerecord

◆ ctf_captureshield_force

float ctf_captureshield_force

Definition at line 167 of file sv_ctf.qh.

Referenced by ctf_CaptureShield_Touch(), and ctf_Initialize().

◆ ctf_captureshield_max_ratio

float ctf_captureshield_max_ratio

Definition at line 166 of file sv_ctf.qh.

Referenced by ctf_CaptureShield_CheckStatus(), and ctf_Initialize().

◆ ctf_captureshield_min_negscore

float ctf_captureshield_min_negscore

Definition at line 165 of file sv_ctf.qh.

Referenced by ctf_CaptureShield_CheckStatus(), and ctf_Initialize().

◆ ctf_captureshielded

bool ctf_captureshielded

Definition at line 164 of file sv_ctf.qh.

◆ ctf_dropper

entity ctf_dropper

Definition at line 149 of file sv_ctf.qh.

◆ ctf_droptime

float ctf_droptime

Definition at line 146 of file sv_ctf.qh.

Referenced by ctf_FlagThink().

◆ CTF_FLAG

Flag CTF_FLAG

Definition at line 47 of file sv_ctf.qh.

Referenced by ctf_FlagSetup(), ctf_FlagTouch(), ctf_Initialize(), and MODEL().

◆ ctf_flagdamaged_byworld

bool ctf_flagdamaged_byworld

Definition at line 151 of file sv_ctf.qh.

Referenced by ctf_FlagDamage(), and ctf_FlagThink().

◆ ctf_landtime

float ctf_landtime

Definition at line 147 of file sv_ctf.qh.

Referenced by ctf_FlagThink().

◆ ctf_oneflag

◆ ctf_pickuptime

float ctf_pickuptime

Definition at line 145 of file sv_ctf.qh.

Referenced by ctf_FlagThink().

◆ ctf_staleflagnext

entity ctf_staleflagnext

Definition at line 101 of file sv_ctf.qh.

◆ ctf_stalemate

bool ctf_stalemate

◆ ctf_status

int ctf_status

Definition at line 148 of file sv_ctf.qh.

Referenced by ctf_FlagThink().

◆ ctf_teams

int ctf_teams

Definition at line 152 of file sv_ctf.qh.

Referenced by ctf_DelayedInit(), and MUTATOR_HOOKFUNCTION().

◆ DROP_NORMAL

const int DROP_NORMAL = 1

◆ DROP_PASS

const int DROP_PASS = 3

Definition at line 122 of file sv_ctf.qh.

Referenced by ctf_FlagThink(), ctf_Handle_Drop(), ctf_Handle_Throw(), and MUTATOR_HOOKFUNCTION().

◆ DROP_RESET

const int DROP_RESET = 4

Definition at line 123 of file sv_ctf.qh.

Referenced by ctf_Handle_Throw(), and ctf_Reset().

◆ DROP_THROW

const int DROP_THROW = 2

◆ enemy

entity enemy

Definition at line 153 of file sv_ctf.qh.

Referenced by assault_objective_decrease_use(), assault_setenemytoobjective(), assault_wall_think(), ball_customize(), bot_aim(), bot_aimdir(), buff_Vengeance_DelayedDamage(), bumblebee_blowup(), button_damage(), button_touch(), button_use(), button_wait(), ctf_Reset(), delay_delayeduse(), delay_reset(), delay_use(), DelayThink(), dompoint_captured(), dompointthink(), dompointtouch(), DragBox_Think(), Ent_TubaNote_StopSound(), Ent_TubaNote_Think(), Ent_TubaNote_UpdateSound(), ewheel_move_enemy(), follow_init(), havocbot_ai(), havocbot_aim(), havocbot_chooseenemy(), havocbot_chooseweapon(), havocbot_movetogoal(), havocbot_role_ctf_carrier(), jumppad_push(), kh_Key_Touch(), laser_SendEntity(), LinkDoors(), M_Golem_Attack_Lightning(), M_Golem_Attack_Swing(), M_Mage_Attack_Spike(), M_Mage_Attack_Spike_Think(), M_Wyvern_Attack_Fireball(), misc_laser_aim(), misc_laser_init(), misc_laser_think(), monoflop_fixed_use(), monoflop_think(), monoflop_use(), Monster_Appear(), Monster_Attack_Leap_Check(), Monster_Damage(), Monster_Dead(), Monster_Enemy_Check(), Monster_FindTarget(), Monster_Move(), Monster_Move_Target(), Monster_Reset(), Monster_Spawn(), Monster_Think(), Monster_Touch(), Monster_Use(), Monster_ValidTarget(), multi_eventdamage(), multi_touch(), multi_trigger(), multi_use(), nade_normal_boom(), nade_touch(), NET_HANDLE(), NET_HANDLE(), ons_CaptureShield_Customize(), ons_CaptureShield_Reset(), ons_CaptureShield_Touch(), ons_DelayedLinkSetup(), ons_Link_CheckUpdate(), ons_Link_Send(), plat_center_touch(), plat_outside_touch(), Portal_Think(), Portal_Touch(), PutClientInServer(), racer_blowup(), racer_rocket_tracker(), raptor_blowup(), SetSpectatee(), SetSpectatee_status(), spawnfunc(), spawnfunc(), spawnfunc(), SpectateNext(), SpectatePrev(), SpectateSet(), SpectateUpdate(), spiderbot_blowup(), superspec_hello(), target_teleporter_checktarget(), teleport_findtarget(), test_weapons_hurt(), train_wait(), trigger_hurt_touch(), trigger_hurt_use(), trigger_push_get_push_time(), trigger_push_test(), trigger_viewloc_send(), turret_aim_generic(), turret_checkpoint_init(), turret_fire(), turret_firecheck(), turret_flac_projectile_think_explode(), turret_fusionreactor_firecheck(), turret_hellion_missile_think(), turret_hk_addtarget(), turret_hk_missile_think(), turret_respawn(), turret_select_target(), turret_tesla_firecheck(), turret_think(), turret_track(), vehicles_damage(), viewloc_init(), W_Nexball_Think(), W_Seeker_Missile_Think(), W_Seeker_Vollycontroller_Think(), walker_fire_rocket(), walker_move_to(), walker_rocket_think(), WarpZone_Camera_Send(), WarpZone_InitStep_ClearTarget(), WarpZone_InitStep_FinalizeTransform(), WarpZone_InitStep_FindTarget(), WarpZone_Think(), WarpZone_Touch(), WarpZoneCamera_InitStep_FindTarget(), WarpZoneCamera_Think(), WarpZonePosition_InitStep_FindTarget(), WaypointSprite_visible_for_player(), Weapon_whereis(), and write_damagetext().

◆ FLAG_BASE

◆ FLAG_CARRY

◆ FLAG_CARRY_OFFSET

const vector FLAG_CARRY_OFFSET = ('-16 0 8')

Definition at line 58 of file sv_ctf.qh.

Referenced by ctf_Handle_Pickup(), ctf_Handle_Retrieve(), and MUTATOR_HOOKFUNCTION().

◆ FLAG_DROP_OFFSET

const vector FLAG_DROP_OFFSET = ('0 0 32')

Definition at line 57 of file sv_ctf.qh.

Referenced by ctf_Handle_Throw().

◆ FLAG_DROPPED

◆ FLAG_FLOAT_OFFSET_Z

const int FLAG_FLOAT_OFFSET_Z = 32

Definition at line 61 of file sv_ctf.qh.

Referenced by ctf_FlagThink().

◆ FLAG_PASS_ARC_OFFSET_Z

const int FLAG_PASS_ARC_OFFSET_Z = -10

Definition at line 62 of file sv_ctf.qh.

Referenced by ctf_CalculatePassVelocity().

◆ FLAG_PASSING

const int FLAG_PASSING = 4

◆ FLAG_SCALE

const float FLAG_SCALE = 0.5625

Definition at line 51 of file sv_ctf.qh.

Referenced by ctf_FlagSetup(), ctf_RespawnFlag(), and MUTATOR_HOOKFUNCTION().

◆ FLAG_THINKRATE

const float FLAG_THINKRATE = 0.2

Definition at line 53 of file sv_ctf.qh.

Referenced by ctf_FlagSetup(), and ctf_FlagThink().

◆ FLAG_TOUCHRATE

const float FLAG_TOUCHRATE = 0.5

Definition at line 54 of file sv_ctf.qh.

◆ FLAG_WAYPOINT_OFFSET

const vector FLAG_WAYPOINT_OFFSET = ('0 0 64')

◆ flagcarried

◆ g_flags

◆ havocbot_cantfindflag

bool havocbot_cantfindflag

Definition at line 181 of file sv_ctf.qh.

Referenced by havocbot_role_ctf_carrier().

◆ HAVOCBOT_CTF_ROLE_CARRIER

◆ HAVOCBOT_CTF_ROLE_DEFENSE

const int HAVOCBOT_CTF_ROLE_DEFENSE = 2

◆ HAVOCBOT_CTF_ROLE_ESCORT

const int HAVOCBOT_CTF_ROLE_ESCORT = 64

Definition at line 179 of file sv_ctf.qh.

Referenced by havocbot_role_ctf_offense(), and havocbot_role_ctf_setrole().

◆ HAVOCBOT_CTF_ROLE_MIDDLE

const int HAVOCBOT_CTF_ROLE_MIDDLE = 4

Definition at line 175 of file sv_ctf.qh.

Referenced by havocbot_ctf_reset_role(), and havocbot_role_ctf_setrole().

◆ HAVOCBOT_CTF_ROLE_NONE

const int HAVOCBOT_CTF_ROLE_NONE = 0

Definition at line 173 of file sv_ctf.qh.

◆ HAVOCBOT_CTF_ROLE_OFFENSE

const int HAVOCBOT_CTF_ROLE_OFFENSE = 8

Definition at line 176 of file sv_ctf.qh.

Referenced by havocbot_ctf_reset_role(), and havocbot_role_ctf_setrole().

◆ HAVOCBOT_CTF_ROLE_RETRIEVER

const int HAVOCBOT_CTF_ROLE_RETRIEVER = 32

◆ next_take_time

float next_take_time

Definition at line 150 of file sv_ctf.qh.

◆ pass_distance

float pass_distance

Definition at line 156 of file sv_ctf.qh.

◆ pass_sender

entity pass_sender

Definition at line 157 of file sv_ctf.qh.

◆ pass_target

entity pass_target

Definition at line 158 of file sv_ctf.qh.

Referenced by ctf_FlagThink().

◆ passeffect

string passeffect

Definition at line 97 of file sv_ctf.qh.

◆ PICKUP_BASE

const int PICKUP_BASE = 1

Definition at line 125 of file sv_ctf.qh.

Referenced by ctf_Handle_Pickup().

◆ PICKUP_DROPPED

const int PICKUP_DROPPED = 2

Definition at line 126 of file sv_ctf.qh.

Referenced by ctf_Handle_Pickup().

◆ RETURN_DAMAGE

const int RETURN_DAMAGE = 3

Definition at line 133 of file sv_ctf.qh.

Referenced by ctf_CheckFlagReturn(), and ctf_FlagDamage().

◆ RETURN_DROPPED

const int RETURN_DROPPED = 2

Definition at line 132 of file sv_ctf.qh.

Referenced by ctf_CheckFlagReturn(), and ctf_FlagThink().

◆ RETURN_NEEDKILL

const int RETURN_NEEDKILL = 5

Definition at line 135 of file sv_ctf.qh.

Referenced by ctf_CheckFlagReturn(), ctf_FlagDamage(), and ctf_FlagThink().

◆ RETURN_SPEEDRUN

const int RETURN_SPEEDRUN = 4

Definition at line 134 of file sv_ctf.qh.

Referenced by ctf_CheckFlagReturn(), and ctf_FlagThink().

◆ RETURN_TIMEOUT

const int RETURN_TIMEOUT = 1

Definition at line 131 of file sv_ctf.qh.

Referenced by ctf_CheckFlagReturn(), and ctf_FlagThink().

◆ score_assist

float score_assist

Definition at line 85 of file sv_ctf.qh.

◆ score_capture

float score_capture

Definition at line 86 of file sv_ctf.qh.

◆ score_drop

float score_drop

Definition at line 87 of file sv_ctf.qh.

◆ score_pickup

float score_pickup

Definition at line 88 of file sv_ctf.qh.

◆ score_return

float score_return

Definition at line 89 of file sv_ctf.qh.

◆ score_team_capture

float score_team_capture

Definition at line 90 of file sv_ctf.qh.

◆ snd_flag_dropped

string snd_flag_dropped

Definition at line 80 of file sv_ctf.qh.

Referenced by ctf_FlagSetup().

◆ snd_flag_pass

string snd_flag_pass

Definition at line 82 of file sv_ctf.qh.

Referenced by ctf_FlagSetup().

◆ snd_flag_touch

string snd_flag_touch

Definition at line 81 of file sv_ctf.qh.

Referenced by ctf_FlagSetup().

◆ ST_CTF_CAPS

const int ST_CTF_CAPS = 1

Definition at line 33 of file sv_ctf.qh.

Referenced by ctf_ScoreRules().

◆ throw_antispam

float throw_antispam

Definition at line 159 of file sv_ctf.qh.

◆ throw_count

int throw_count

Definition at line 161 of file sv_ctf.qh.

◆ throw_prevtime

float throw_prevtime

Definition at line 160 of file sv_ctf.qh.

◆ toucheffect

string toucheffect

Definition at line 96 of file sv_ctf.qh.

◆ VEHICLE_FLAG_OFFSET

const vector VEHICLE_FLAG_OFFSET = ('0 0 96')

Definition at line 64 of file sv_ctf.qh.

Referenced by ctf_Handle_Pickup(), ctf_Handle_Retrieve(), and MUTATOR_HOOKFUNCTION().

◆ VEHICLE_FLAG_SCALE

const float VEHICLE_FLAG_SCALE = 1.0

Definition at line 65 of file sv_ctf.qh.

Referenced by ctf_Handle_Pickup(), ctf_Handle_Retrieve(), and MUTATOR_HOOKFUNCTION().

◆ WPFE_THINKRATE

const float WPFE_THINKRATE = 0.5

Definition at line 55 of file sv_ctf.qh.

Referenced by ctf_FlagThink().

◆ wpforenemy_announced

bool wpforenemy_announced

Definition at line 111 of file sv_ctf.qh.

Referenced by ctf_CheckStalemate(), and Onslaught_CheckWinner().

◆ wpforenemy_nextthink

float wpforenemy_nextthink

Definition at line 112 of file sv_ctf.qh.

Referenced by ctf_FlagThink().

◆ wps_enemyflagcarrier

entity wps_enemyflagcarrier

Definition at line 109 of file sv_ctf.qh.

Referenced by ctf_CheckStalemate(), and ctf_FlagcarrierWaypoints().

◆ wps_flagbase

entity wps_flagbase

Definition at line 105 of file sv_ctf.qh.

Referenced by ctf_DelayedFlagSetup().

◆ wps_flagcarrier

entity wps_flagcarrier

Definition at line 106 of file sv_ctf.qh.

Referenced by ctf_FlagcarrierWaypoints().

◆ wps_flagdropped

entity wps_flagdropped

Definition at line 107 of file sv_ctf.qh.

Referenced by ctf_Handle_Drop().

◆ wps_flagreturn

entity wps_flagreturn

Definition at line 108 of file sv_ctf.qh.

Referenced by ctf_FlagcarrierWaypoints().

◆ wps_helpme

entity wps_helpme

Definition at line 104 of file sv_ctf.qh.

Referenced by MUTATOR_HOOKFUNCTION().

◆ wps_helpme_time

float wps_helpme_time

Definition at line 110 of file sv_ctf.qh.