Fixing start cash initialization and rejoin order.

This commit is contained in:
lotodore
2011-12-27 09:35:14 +00:00
parent 4c15195f07
commit 735e554732
2 changed files with 6 additions and 3 deletions
+1 -1
View File
@@ -90,7 +90,7 @@ Game::Game(GuiInterface* gui, boost::shared_ptr<EngineFactory> factory,
myName = (*player_i)->GetName();
myAvatarFile = (*player_i)->GetAvatarFile();
myGuid = (*player_i)->GetGuid();
if ((*player_i)->GetStartCash() > 0)
if ((*player_i)->GetStartCash() >= 0)
myStartCash = (*player_i)->GetStartCash();
myStayOnTableStatus = type == PLAYER_TYPE_HUMAN;
++player_i;
+5 -2
View File
@@ -1130,14 +1130,16 @@ ServerGameStateHand::StartNewHand(boost::shared_ptr<ServerGame> server)
{
Game &curGame = server->GetGame();
// Kick inactive players.
// Reactivate players which were previously inactive.
ReactivatePlayers(server);
CheckPlayerTimeouts(server);
// Initialize rejoining players.
// This has to be done before initialising the new hand, because there are side effects.
InitRejoiningPlayers(server);
// Kick inactive players.
CheckPlayerTimeouts(server);
// Initialize hand.
curGame.initHand();
@@ -1357,6 +1359,7 @@ ServerGameStateHand::PerformRejoin(boost::shared_ptr<ServerGame> server, boost::
// Change the Id in the poker engine.
rejoinPlayer->setMyUniqueID(session->GetPlayerData()->GetUniqueId());
rejoinPlayer->setMyGuid(session->GetPlayerData()->GetGuid());
rejoinPlayer->markRemoteAction();
rejoinPlayer->setIsSessionActive(true);
// Send game start notification to rejoining client.