Xonotic QuakeC
The free, fast arena FPS with crisp movement and a wide array of weapons
ctf.qh
Go to the documentation of this file.
1#pragma once
2
3#include <common/mapinfo.qh>
4#ifdef CSQC
5 #include "cl_ctf.qh"
6#endif
7
10 {
11 this.gametype_init(this, _("Capture the Flag"),"ctf","g_ctf",GAMETYPE_FLAG_TEAMPLAY | GAMETYPE_FLAG_USEPOINTS | GAMETYPE_FLAG_PRIORITY,"","timelimit=20 caplimit=10 leadlimit=6",_("Find and bring the enemy flag to your base to capture it, defend your base from the other team"));
12 }
14 {
15 if(v == "item_flag_team2" || v == "team_CTF_blueflag")
17 }
19 {
20 return true;
21 }
22 METHOD(CaptureTheFlag, m_setTeams, void(string sa))
23 {
24 cvar_set("fraglimit", sa);
25 }
26 METHOD(CaptureTheFlag, m_configuremenu, void(Gametype this, entity menu, void(entity me, string pLabel, float pMin, float pMax, float pStep, string pCvar, string tCvar, string pTooltip) returns))
27 {
28 TC(Gametype, this);
29 returns(menu, _("Capture limit:"), 1, 20, 1, "capturelimit_override", string_null, _("The amount of captures needed before the match will end"));
30 }
31#ifdef CSQC
32 ATTRIB(CaptureTheFlag, m_modicons, void(vector myPos, vector mySize, bool should_draw), HUD_Mod_CTF);
33 ATTRIB(CaptureTheFlag, m_modicons_reset, void(), HUD_Mod_CTF_Reset);
34#endif
35 ATTRIB(CaptureTheFlag, m_legacydefaults, string, "300 20 10 0");
38#define g_ctf IS_GAMETYPE(CTF)
39
40#ifdef GAMEQC
41const int CTF_RED_FLAG_TAKEN = 1;
42const int CTF_RED_FLAG_LOST = 2;
44const int CTF_BLUE_FLAG_TAKEN = 4;
45const int CTF_BLUE_FLAG_LOST = 8;
47const int CTF_YELLOW_FLAG_TAKEN = 16;
48const int CTF_YELLOW_FLAG_LOST = 32;
50const int CTF_PINK_FLAG_TAKEN = 64;
51const int CTF_PINK_FLAG_LOST = 128;
52const int CTF_PINK_FLAG_CARRYING = 192;
53const int CTF_NEUTRAL_FLAG_TAKEN = 256;
54const int CTF_NEUTRAL_FLAG_LOST = 512;
56const int CTF_FLAG_NEUTRAL = 2048;
57const int CTF_SHIELDED = 4096;
58const int CTF_STALEMATE = 8192;
59#endif
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
void HUD_Mod_CTF_Reset()
Definition cl_ctf.qc:13
void HUD_Mod_CTF(vector pos, vector mySize, bool should_draw)
Definition cl_ctf.qc:21
CaptureTheFlag()
Definition ctf.qh:9
virtual void m_generate_mapinfo()
Definition ctf.qh:13
virtual void m_configuremenu()
Definition ctf.qh:26
virtual void m_isTwoBaseMode()
Definition ctf.qh:18
virtual void m_setTeams()
Definition ctf.qh:22
string m_legacydefaults
Definition ctf.qh:35
virtual void gametype_init()
Definition mapinfo.qh:117
const int CTF_SHIELDED
Definition ctf.qh:57
const int CTF_PINK_FLAG_CARRYING
Definition ctf.qh:52
const int CTF_YELLOW_FLAG_TAKEN
Definition ctf.qh:47
const int CTF_YELLOW_FLAG_CARRYING
Definition ctf.qh:49
const int CTF_PINK_FLAG_TAKEN
Definition ctf.qh:50
const int CTF_RED_FLAG_LOST
Definition ctf.qh:42
const int CTF_NEUTRAL_FLAG_LOST
Definition ctf.qh:54
const int CTF_YELLOW_FLAG_LOST
Definition ctf.qh:48
const int CTF_RED_FLAG_CARRYING
Definition ctf.qh:43
const int CTF_RED_FLAG_TAKEN
Definition ctf.qh:41
const int CTF_FLAG_NEUTRAL
Definition ctf.qh:56
const int CTF_STALEMATE
Definition ctf.qh:58
const int CTF_BLUE_FLAG_LOST
Definition ctf.qh:45
const int CTF_BLUE_FLAG_TAKEN
Definition ctf.qh:44
const int CTF_PINK_FLAG_LOST
Definition ctf.qh:51
const int CTF_NEUTRAL_FLAG_CARRYING
Definition ctf.qh:55
const int CTF_BLUE_FLAG_CARRYING
Definition ctf.qh:46
const int CTF_NEUTRAL_FLAG_TAKEN
Definition ctf.qh:53
#define TC(T, sym)
Definition _all.inc:82
vector MapInfo_Map_supportedGametypes
Definition mapinfo.qh:13
const int GAMETYPE_FLAG_PRIORITY
Definition mapinfo.qh:22
const int GAMETYPE_FLAG_USEPOINTS
Definition mapinfo.qh:20
#define REGISTER_GAMETYPE(NAME, inst)
Definition mapinfo.qh:149
const int GAMETYPE_FLAG_TEAMPLAY
Definition mapinfo.qh:19
vector gametype_flags
Definition mapinfo.qh:28
void cvar_set(string name, string value)
string string_null
Definition nil.qh:9
#define NEW(cname,...)
Definition oo.qh:117
#define INIT(cname)
Definition oo.qh:210
#define CLASS(...)
Definition oo.qh:145
#define ENDCLASS(cname)
Definition oo.qh:281
#define METHOD(cname, name, prototype)
Definition oo.qh:269
#define ATTRIB(...)
Definition oo.qh:148
vector
Definition self.qh:92