round_handler_Spawn(Invasion_CheckPlayers, Invasion_CheckWinner, Invasion_RoundStart);
round_handler_Init(5, autocvar_g_invasion_warmup, autocvar_g_invasion_round_timelimit);
- allowed_to_spawn = TRUE;
-
inv_roundcnt = 0;
+ inv_maxrounds = 15; // 15?
+ }
+
+ void invasion_Initialize()
+ {
+ if(autocvar_g_invasion_zombies_only)
+ MON_ACTION(MON_ZOMBIE, MR_PRECACHE);
+ else
+ {
+ float i;
+ entity mon;
+ for(i = MON_FIRST; i <= MON_LAST; ++i)
+ {
+ mon = get_monsterinfo(i);
+ if((mon.spawnflags & MONSTER_TYPE_FLY) || (mon.spawnflags & MONSTER_TYPE_SWIM))
+ continue; // flying/swimming monsters not yet supported
+
+ MON_ACTION(i, MR_PRECACHE);
+ }
+ }
+
+ InitializeEntity(world, invasion_DelayedInit, INITPRIO_GAMETYPE);
}
MUTATOR_DEFINITION(gamemode_invasion)