diff --git a/src/game/server/gamecontroller.cpp b/src/game/server/gamecontroller.cpp index c9cbb5c..ef7bf5e 100644 --- a/src/game/server/gamecontroller.cpp +++ b/src/game/server/gamecontroller.cpp @@ -318,7 +318,7 @@ void IGameController::StartRound() void IGameController::ChangeMap(const char *pToMap) { - str_copy(g_Config.m_SvMap, pToMap, sizeof(m_aMapWish)); + str_copy(m_aMapWish, pToMap, sizeof(m_aMapWish)); EndRound(); } @@ -442,9 +442,9 @@ void IGameController::Tick() // game over.. wait for restart if (Server()->Tick() > m_GameOverTick + Server()->TickSpeed() * 2) { + m_RoundCount++; CycleMap(); StartRound(); - m_RoundCount++; } } @@ -772,6 +772,9 @@ static bool IsSeparator(char c) { return c == ';' || c == ' ' || c == ',' || c = void IGameController::CycleMap() { + if (m_RoundCount < g_Config.m_SvRoundsPerMap) + return; + if (m_aMapWish[0] != 0) { char aBuf[256]; diff --git a/src/game/server/player.h b/src/game/server/player.h index 294234f..9d5885c 100644 --- a/src/game/server/player.h +++ b/src/game/server/player.h @@ -152,6 +152,14 @@ class CPlayer int m_Max; } m_Latency; + enum + { + ZOMB_DEFAULT = 1, + ZOMB_WITCH, + }; + + int m_ZombClass; + private: CCharacter *m_pCharacter; int m_NumInputs;