void assessRound() { Debug.Log("Assessing round!"); //It's the first round. if (currentPlayer == null) { Debug.Log("First round."); changePlayer(player1); disableControl = false; return; } Player other = otherPlayer(currentPlayer); //Did the player get a penalty for pocketing the cue ball? if (currentPlayer.penalty) { Debug.Log("Penalty for pocketing the cue ball!"); currentPlayer.penalty = false; //Give the other player an extra turn. other.extraTurn = true; //Display stuff displayMessage.displayMessage("You pocketed the cue ball!\n Player " + (int)other.getPlayerNumber() + " gets an extra turn.", 2F); } //Does the player get another turn? else if (currentPlayer.extraTurn) { Debug.Log("Player gets another turn!"); currentPlayer.extraTurn = false; //Display stuff for extra turn. displayMessage.displayMessage("You get another turn!", 2F); return; } else { displayMessage.displayMessage("Switching to player " + (int)other.getPlayerNumber() + ".", 2F); } //Switch the player every round. changePlayer(other); Debug.Log("New round: Player " + (int)currentPlayer.getPlayerNumber()); }