Winning a game is now logged.

This commit is contained in:
lotodore
2007-06-11 20:35:12 +00:00
parent 2ef3b5ab35
commit 5af91f4ea2
7 changed files with 20 additions and 5 deletions
+13 -3
View File
@@ -570,9 +570,19 @@ ClientStateWaitHand::InternalProcess(ClientThread &client, boost::shared_ptr<Net
}
else if (packet->ToNetPacketEndOfGame())
{
client.GetCallback().SignalNetClientWaitDialog();
client.SetState(ClientStateWaitGame::Instance());
retVal = MSG_NET_GAME_CLIENT_END;
boost::shared_ptr<Game> curGame = client.GetGame();
if (curGame.get())
{
NetPacketEndOfGame::Data endData;
packet->ToNetPacketEndOfGame()->GetData(endData);
PlayerInterface *tmpPlayer = curGame->getPlayerByUniqueId(endData.winnerPlayerId);
if (!tmpPlayer)
throw ClientException(ERR_NET_UNKNOWN_PLAYER_ID, 0);
client.GetGui().logPlayerWinGame(tmpPlayer->getMyName(), curGame->getMyGameID());
client.GetCallback().SignalNetClientWaitDialog();
client.SetState(ClientStateWaitGame::Instance());
retVal = MSG_NET_GAME_CLIENT_END;
}
}
return MSG_SOCK_INTERNAL_PENDING;