mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-17 11:18:01 +00:00
Fix: crash when a player leaves the game.
This commit is contained in:
@@ -548,8 +548,8 @@ public class Game {
|
|||||||
}
|
}
|
||||||
|
|
||||||
final int shift = turnOrder.getShift();
|
final int shift = turnOrder.getShift();
|
||||||
final int totalNumPlayers = allPlayers.size();
|
|
||||||
if (-1 == iPlayer) { // if playerTurn has just lost
|
if (-1 == iPlayer) { // if playerTurn has just lost
|
||||||
|
final int totalNumPlayers = allPlayers.size();
|
||||||
int iAlive;
|
int iAlive;
|
||||||
iPlayer = allPlayers.indexOf(playerTurn);
|
iPlayer = allPlayers.indexOf(playerTurn);
|
||||||
do {
|
do {
|
||||||
@@ -561,10 +561,11 @@ public class Game {
|
|||||||
} while (iAlive < 0);
|
} while (iAlive < 0);
|
||||||
iPlayer = iAlive;
|
iPlayer = iAlive;
|
||||||
}
|
}
|
||||||
else { // for the case noone has died
|
else { // for the case playerTurn hasn't died
|
||||||
iPlayer = (iPlayer + shift) % totalNumPlayers;
|
final int numPlayersInGame = roIngamePlayers.size();
|
||||||
|
iPlayer = (iPlayer + shift) % numPlayersInGame;
|
||||||
if (iPlayer < 0) {
|
if (iPlayer < 0) {
|
||||||
iPlayer += totalNumPlayers;
|
iPlayer += numPlayersInGame;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user