X-Git-Url: https://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=qcsrc%2Fcommon%2Fmapinfo.qh;h=b669ba1f7b63aa2a8c74ab7bc7e1f91caaed1de3;hp=d27722999aa7c1912bf92331a518520c0e2c196c;hb=0d0a2025de767dbfae0519941294f5947fe38c1f;hpb=df0725fcacd8658029c3d9556a213ddb5d0ded62 diff --git a/qcsrc/common/mapinfo.qh b/qcsrc/common/mapinfo.qh index d27722999a..b669ba1f7b 100644 --- a/qcsrc/common/mapinfo.qh +++ b/qcsrc/common/mapinfo.qh @@ -124,7 +124,7 @@ REGISTER_GAMETYPE(DEATHMATCH, NEW(Deathmatch)); CLASS(LastManStanding, Gametype) INIT(LastManStanding) { - this.gametype_init(this, _("Last Man Standing"),"lms","g_lms",false,true,"","timelimit=20 lives=9 leadlimit=0",_("Survive and kill until the enemies have no lives left")); + this.gametype_init(this, _("Last Man Standing"),"lms","g_lms",false,true,"","timelimit=20 lives=5 leadlimit=0",_("Survive and kill until the enemies have no lives left")); } METHOD(LastManStanding, m_isAlwaysSupported, bool(Gametype this, int spawnpoints, float diameter)) { @@ -302,7 +302,7 @@ void HUD_Mod_CA(vector pos, vector mySize); CLASS(ClanArena, Gametype) INIT(ClanArena) { - this.gametype_init(this, _("Clan Arena"),"ca","g_ca",true,true,"","timelimit=20 pointlimit=10 teams=2 leadlimit=0",_("Kill all enemy teammates to win the round")); + this.gametype_init(this, _("Clan Arena"),"ca","g_ca",true,true,"","timelimit=20 pointlimit=10 teams=2 leadlimit=6",_("Kill all enemy teammates to win the round")); } METHOD(ClanArena, m_parse_mapinfo, bool(string k, string v)) { @@ -497,7 +497,7 @@ REGISTER_GAMETYPE(NEXBALL, NEW(NexBall)); CLASS(FreezeTag, Gametype) INIT(FreezeTag) { - this.gametype_init(this, _("Freeze Tag"),"ft","g_freezetag",true,true,"","timelimit=20 pointlimit=10 teams=2 leadlimit=0",_("Kill enemies to freeze them, stand next to frozen teammates to revive them; freeze all enemies to win")); + this.gametype_init(this, _("Freeze Tag"),"ft","g_freezetag",true,true,"","timelimit=20 pointlimit=10 teams=2 leadlimit=6",_("Kill enemies to freeze them, stand next to frozen teammates to revive them; freeze all enemies to win")); } METHOD(FreezeTag, m_parse_mapinfo, bool(string k, string v)) { @@ -594,10 +594,13 @@ CLASS(Duel, Gametype) } 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; + if(!cvar("g_duel_not_dm_maps")) + { + // if this is set, all DM maps support duel too + // 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; // TODO: references another gametype (alternatively, we could check which gamemodes are always enabled and append this if any are supported) + } return false; } ENDCLASS(Duel)