diff --git a/client/CPlayerInterface.cpp b/client/CPlayerInterface.cpp index 42932d9c1..de863d77f 100644 --- a/client/CPlayerInterface.cpp +++ b/client/CPlayerInterface.cpp @@ -1997,7 +1997,7 @@ void CPlayerInterface::gameOver(ui8 player, bool victory ) // showInfoDialog("Placeholder message: you won!"); makingTurn = true; - while(showingDialog->get() || dialogs.size()); //wait till all dialogs are displayed and closed + waitForAllDialogs(); //wait till all dialogs are displayed and closed makingTurn = false; howManyPeople--; diff --git a/server/CGameHandler.cpp b/server/CGameHandler.cpp index e2168c8f4..cb7081488 100644 --- a/server/CGameHandler.cpp +++ b/server/CGameHandler.cpp @@ -4489,7 +4489,7 @@ void CGameHandler::checkLossVictory( ui8 player ) peg.victory = vic; sendAndApply(&peg); - if(vic > 0) //one player won -> all enemies lost + if(vic) //one player won -> all enemies lost { iw.text.localStrings.front().second++; //message about losing because enemy won first is just after victory message @@ -4520,28 +4520,28 @@ void CGameHandler::checkLossVictory( ui8 player ) //eliminating one player may cause victory of another: winLoseHandle(GameConstants::ALL_PLAYERS & ~(1<campaign) - { + { std::vector hes; BOOST_FOREACH(CGHeroInstance * ghi, gs->map->heroes) - { - if (ghi->tempOwner == vic) { + if (ghi->tempOwner == vic) + { hes.push_back(ghi); + } } - } gs->campaign->mapConquered(hes); UpdateCampaignState ucs; ucs.camp = gs->campaign; sendAndApply(&ucs); - } + } } }