36 ATTRIB(Gametype, mdl,
string);
44 ATTRIB(Gametype, m_hidelimits,
bool, false);
46 ATTRIB(Gametype, m_weaponarena,
bool, false);
48 ATTRIB(Gametype, model2,
string);
50 ATTRIB(Gametype, gametype_description,
string);
52 ATTRIB(Gametype, m_priority,
int, 0);
55 ATTRIB(Gametype, m_modicons_reset,
void());
56 ATTRIB(Gametype, m_modicons_export,
void(
int fh));
60 ATTRIB(Gametype, m_legacydefaults,
string,
"");
62 ATTRIB(Gametype, m_mutators,
string);
63 METHOD(Gametype, m_parse_mapinfo,
bool(
string k,
string v))
67 METHOD(Gametype, m_generate_mapinfo,
void(Gametype
this,
string v))
71 METHOD(Gametype, m_isTwoBaseMode,
bool())
75 METHOD(Gametype, m_isAlwaysSupported,
bool(Gametype
this,
int spawnpoints,
float diameter))
79 METHOD(Gametype, m_isForcedSupported,
bool(Gametype
this))
83 METHOD(Gametype, 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))
86 returns(menu, _(
"Frag limit:"), 5, 100, 5,
"fraglimit_override",
string_null, _(
"The amount of frags needed before the match will end"));
89 METHOD(Gametype, describe,
string(Gametype
this))
92 return this.gametype_description;
95 METHOD(Gametype, display,
void(Gametype
this,
void(
string name,
string icon) returns))
98 returns(this.message,
strcat(
"gametype_", this.mdl));
101 METHOD(Gametype, gametype_init,
void(Gametype
this,
string hname,
string sname,
string g_name,
int gflags,
string mutators,
string defaults,
string gdescription))
103 this.netname = g_name;
105 this.message = hname;
107 this.m_mutators =
cons(sname, mutators);
108 this.model2 = defaults;
109 this.gametype_description = gdescription;
127 #define REGISTER_GAMETYPE(NAME, inst) REGISTER(Gametypes, MAPINFO_TYPE, NAME, m_id, inst) 131 #define IS_GAMETYPE(NAME) (MapInfo_LoadedGametype == MAPINFO_TYPE_##NAME) 152 float MapInfo_FilterGametype(Gametype gametypeFlags,
float features,
float pFlagsRequired,
float pFlagsForbidden,
float pAbortOnGenerate);
153 float _MapInfo_FilterGametype(
int gametypeFlags,
float features,
float pFlagsRequired,
float pFlagsForbidden,
float pAbortOnGenerate);
205 #define MAPINFO_SETTEMP_ACL_USER cvar_string("g_mapinfo_settemp_acl") 206 #define MAPINFO_SETTEMP_ACL_SYSTEM "-g_mapinfo_* -rcon_* -_* -g_ban* +*"
string MapInfo_ListAllowedMaps(Gametype type, float pFlagsRequired, float pFlagsForbidden)
string MapInfo_BSPName_ByID(float i)
int MapInfo_RequiredFlags()
string MapInfo_Map_clientstuff
int MapInfo_Map_supportedFeatures
string MapInfo_Type_ToString(Gametype t)
const int GAMETYPE_FLAG_HIDELIMITS
const int MAPINFO_FEATURE_WEAPONS
Gametype MapInfo_LoadedGametype
float MapInfo_CheckMap(string s)
#define REGISTRY_CHECK(id)
int MapInfo_CurrentFeatures()
const int GAMETYPE_FLAG_WEAPONARENA
#define METHOD(cname, name, prototype)
string MapInfo_Map_description
void MapInfo_FilterString(string sf)
const int GAMETYPE_FLAG_TEAMPLAY
string MapInfo_FindName_match
string MapInfo_Map_author
#define REGISTER_REGISTRY(id)
bool MapInfo_Get_ByID(int i)
STATIC_INIT(Gametypes_renumber)
void MapInfo_ClearTemps()
#define REGISTRY_DEFINE_GET(id, null)
float _MapInfo_FilterGametype(int gametypeFlags, float features, float pFlagsRequired, float pFlagsForbidden, float pAbortOnGenerate)
#define BIT(n)
Only ever assign into the first 24 bits in QC (so max is BIT(23)).
int MapInfo_Map_supportedGametypes
float MapInfo_FilterGametype(Gametype gametypeFlags, float features, float pFlagsRequired, float pFlagsForbidden, float pAbortOnGenerate)
void MapInfo_Cache_Destroy()
const int MAPINFO_FEATURE_VEHICLES
void MapInfo_SwitchGameType(Gametype t)
spree_cen s1 spree_cen s1 spree_cen s1 spree_cen s1 spree_cen s1 spree_cen s1 spree_cen s1 f1 s1 strcat(_("Level %s: "), "^BG%s\3\, _("^BGPress ^F2%s^BG to enter the game"))
#define REGISTRY(id, max)
Declare a new registry.
string MapInfo_FixName(string s)
string MapInfo_ListAllAllowedMaps(float pFlagsRequired, float pFlagsForbidden)
Gametype MapInfo_CurrentGametype()
const int GAMETYPE_FLAG_PREFERRED
const int MAPINFO_FLAG_FORBIDDEN
float MapInfo_FindName(string s)
string MapInfo_Type_ToText(Gametype t)
string MapInfo_Type_Description(Gametype t)
vector(float skel, float bonenum) _skel_get_boneabs_hidden
float MapInfo_FindName_firstResult
int MapInfo_ForbiddenFlags()
const int GAMETYPE_FLAG_USEPOINTS
string MapInfo_Map_bspname
const int MAPINFO_FLAG_HIDDEN
void MapInfo_LoadMap(string s, float reinit)
const int MAPINFO_FLAG_FRUSTRATING
void _MapInfo_Parse_Settemp(string pFilename, string acl, float type, string s, float recurse)
ERASEABLE string cons(string a, string b)
int MapInfo_Get_ByName(string s, float allowGenerate, Gametype gametypeToSet)
const int MAPINFO_FEATURE_TURRETS
void MapInfo_Cache_Create()
const int GAMETYPE_FLAG_PRIORITY
const int MAPINFO_FEATURE_MONSTERS
float _MapInfo_GetTeamPlayBool(Gametype t)
void MapInfo_Cache_Invalidate()
#define FOREACH(list, cond, body)
const int MAPINFO_FLAG_NOAUTOMAPLIST
string _MapInfo_GetDefaultEx(Gametype t)
Gametype MapInfo_Type_FromString(string t, bool dowarn)
string MapInfo_Map_titlestring
void MapInfo_LoadMapSettings(string s)