X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fcommon%2Fgamemodes%2Fgamemode%2Finvasion%2Fsv_invasion.qh;h=9d01851a93bddce830da24f10994d66ced731d24;hb=baec9961f0278290e4978954aa6bac687598c15c;hp=167380eeb2a73a947c38ffbf3267b2d984d66f62;hpb=be37ea91fb3bbd1a6fa4f0b70b32d1ea95343ad4;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/common/gamemodes/gamemode/invasion/sv_invasion.qh b/qcsrc/common/gamemodes/gamemode/invasion/sv_invasion.qh index 167380eeb..9d01851a9 100644 --- a/qcsrc/common/gamemodes/gamemode/invasion/sv_invasion.qh +++ b/qcsrc/common/gamemodes/gamemode/invasion/sv_invasion.qh @@ -2,10 +2,11 @@ #include #define autocvar_g_invasion_point_limit cvar("g_invasion_point_limit") -int autocvar_g_invasion_teams; int autocvar_g_invasion_type; -bool autocvar_g_invasion_team_spawns; bool g_invasion; +IntrusiveList g_invasion_roundends; +IntrusiveList g_invasion_waves; +IntrusiveList g_invasion_spawns; void invasion_Initialize(); REGISTER_MUTATOR(inv, false) @@ -13,10 +14,9 @@ REGISTER_MUTATOR(inv, false) MUTATOR_STATIC(); MUTATOR_ONADD { - if (autocvar_g_invasion_teams >= 2) { - GameRules_teams(true); - GameRules_spawning_teams(autocvar_g_invasion_team_spawns); - } + g_invasion_roundends = IL_NEW(); + g_invasion_waves = IL_NEW(); + g_invasion_spawns = IL_NEW(); GameRules_limit_score(autocvar_g_invasion_point_limit); g_invasion = true; @@ -26,21 +26,16 @@ REGISTER_MUTATOR(inv, false) return 0; } -float inv_numspawned; -float inv_maxspawned; -float inv_roundcnt; -float inv_maxrounds; -float inv_numkilled; +int inv_numspawned; +int inv_maxspawned; +int inv_roundcnt; +int inv_maxrounds; +int inv_numkilled; float inv_lastcheck; -float inv_maxcurrent; - -float invasion_teams; -float inv_monsters_perteam[17]; +int inv_maxcurrent; float inv_monsterskill; -const float ST_INV_KILLS = 1; - const int INV_TYPE_ROUND = 0; // round-based waves of enemies const int INV_TYPE_HUNT = 1; // clear the map of placed enemies const int INV_TYPE_STAGE = 2; // reach the end of the level