Procházet zdrojové kódy

Support simturn timers

nordsoft před 2 roky
rodič
revize
a09c595cf4

+ 1 - 1
client/CServerHandler.cpp

@@ -300,7 +300,7 @@ void CServerHandler::applyPacksOnLobbyScreen()
 		CPackForLobby * pack = packsForLobbyScreen.front();
 		packsForLobbyScreen.pop_front();
 		CBaseForLobbyApply * apply = applier->getApplier(typeList.getTypeID(pack)); //find the applier
-		apply->applyOnLobbyScreen(static_cast<CLobbyScreen *>(SEL), this, pack);
+		apply->applyOnLobbyScreen(dynamic_cast<CLobbyScreen *>(SEL), this, pack);
 		GH.windows().totalRedraw();
 		delete pack;
 	}

+ 8 - 3
client/adventureMap/TurnTimerWidget.cpp

@@ -150,10 +150,15 @@ void TurnTimerWidget::tick(uint32_t msPassed)
 	}
 	else
 	{
-		for(PlayerColor p(0); p < PlayerColor::PLAYER_LIMIT; ++p)
+		if(LOCPLINT->makingTurn)
+			updateTimer(LOCPLINT->playerID, msPassed);
+		else
 		{
-			if(LOCPLINT->cb->isPlayerMakingTurn(p))
-				updateTimer(p, msPassed);
+			for(PlayerColor p(0); p < PlayerColor::PLAYER_LIMIT; ++p)
+			{
+				if(LOCPLINT->cb->isPlayerMakingTurn(p))
+					updateTimer(p, msPassed);
+			}
 		}
 	}
 }