From 3bab44c173fae31fcd160ca378f7548b5c4713b8 Mon Sep 17 00:00:00 2001 From: elcnesh Date: Tue, 10 Jun 2014 11:17:19 +0000 Subject: [PATCH] Fix: crash when a player leaves the game. --- forge-game/src/main/java/forge/game/Game.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/forge-game/src/main/java/forge/game/Game.java b/forge-game/src/main/java/forge/game/Game.java index b46801ea4dc..5844c507c80 100644 --- a/forge-game/src/main/java/forge/game/Game.java +++ b/forge-game/src/main/java/forge/game/Game.java @@ -548,8 +548,8 @@ public class Game { } final int shift = turnOrder.getShift(); - final int totalNumPlayers = allPlayers.size(); if (-1 == iPlayer) { // if playerTurn has just lost + final int totalNumPlayers = allPlayers.size(); int iAlive; iPlayer = allPlayers.indexOf(playerTurn); do { @@ -561,10 +561,11 @@ public class Game { } while (iAlive < 0); iPlayer = iAlive; } - else { // for the case noone has died - iPlayer = (iPlayer + shift) % totalNumPlayers; + else { // for the case playerTurn hasn't died + final int numPlayersInGame = roIngamePlayers.size(); + iPlayer = (iPlayer + shift) % numPlayersInGame; if (iPlayer < 0) { - iPlayer += totalNumPlayers; + iPlayer += numPlayersInGame; } }