From: Mario Date: Sat, 29 Sep 2018 13:59:52 +0000 (+1000) Subject: Merge branch 'master' into Mario/duel X-Git-Tag: xonotic-v0.8.5~1809^2~3 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=66d5ee9a0aea47839f244cf5346196c1c66cb490;p=xonotic%2Fxonotic-data.pk3dir.git Merge branch 'master' into Mario/duel --- 66d5ee9a0aea47839f244cf5346196c1c66cb490 diff --cc qcsrc/common/mapinfo.qh index bddefb22d,63723afd7..4ece92156 --- a/qcsrc/common/mapinfo.qh +++ b/qcsrc/common/mapinfo.qh @@@ -480,18 -494,6 +494,27 @@@ CLASS(Invasion, Gametype ENDCLASS(Invasion) REGISTER_GAMETYPE(INVASION, NEW(Invasion)); +CLASS(Duel, Gametype) + INIT(Duel) + { + this.gametype_init(this, _("Duel"),"duel","g_duel",false,"","timelimit=10 pointlimit=0 leadlimit=0",_("Fight in a one versus one arena battle to decide the winner")); + } + METHOD(Duel, m_isAlwaysSupported, bool(Gametype this, int spawnpoints, float diameter)) + { - return (diameter < 8192); ++ return (diameter < 16384); ++ } ++ METHOD(Duel, m_isForcedSupported, bool(Gametype this)) ++ { ++ // force all DM maps to work in duel?! ++ // TODO: we should really check the size of maps, some DM maps do not work for duel! ++ if(!(MapInfo_Map_supportedGametypes & this.m_flags) && (MapInfo_Map_supportedGametypes & MAPINFO_TYPE_DEATHMATCH.m_flags)) ++ return true; ++ return false; + } +ENDCLASS(Duel) +REGISTER_GAMETYPE(DUEL, NEW(Duel)); ++#define g_duel IS_GAMETYPE(DUEL) + const int MAPINFO_FEATURE_WEAPONS = 1; // not defined for instagib-only maps const int MAPINFO_FEATURE_VEHICLES = 2; const int MAPINFO_FEATURE_TURRETS = 4;