@@ -19,6 +19,7 @@ import it.polimi.ingsw.gc14.Model.GamePackage.GameStages;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.*;
|
||||
import java.util.random.RandomGenerator;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
@@ -61,11 +62,27 @@ public class Game implements Serializable {
|
||||
}
|
||||
player.totem=totem;
|
||||
Player nextPlayer= totemChoiceQueue.poll();
|
||||
|
||||
if(nextPlayer==null)
|
||||
{
|
||||
currentState.GameStageUpdate(GameStages.SLOT_CHOICE);
|
||||
currentState.PlayerUpdate(orderLogicCard.pull(),null);
|
||||
}
|
||||
else
|
||||
{
|
||||
while(disconnetedPlayers.containsKey(nextPlayer)&& disconnetedPlayers.get(nextPlayer))
|
||||
{
|
||||
nextPlayer.totem=getAvailableTotems().get(new Random().nextInt(getAvailableTotems().size()-1));
|
||||
nextPlayer=totemChoiceQueue.poll();
|
||||
if(nextPlayer==null)
|
||||
{
|
||||
currentState.GameStageUpdate(GameStages.SLOT_CHOICE);
|
||||
currentState.PlayerUpdate(orderLogicCard.pull(),null);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
currentState.PlayerUpdate(nextPlayer,null);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -80,7 +97,20 @@ public class Game implements Serializable {
|
||||
}
|
||||
disconnetedPlayers.put(player,true);
|
||||
if(currentState.getCurrentPlayer().equals(player))
|
||||
nextPlayerSetup();
|
||||
if(!currentState.getGameStage().equals(GameStages.TOTEM_CHOICE))
|
||||
nextPlayerSetup();
|
||||
else
|
||||
{
|
||||
if(totemChoiceQueue.isEmpty())
|
||||
{
|
||||
player.totem=getAvailableTotems().get(new Random().nextInt(getAvailableTotems().size()-1));
|
||||
}
|
||||
else {
|
||||
totemChoiceQueue.add(player);
|
||||
}
|
||||
currentState.PlayerUpdate(totemChoiceQueue.poll(),null);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -254,6 +254,9 @@ public class Player implements Serializable {
|
||||
|
||||
table.addHeader(this.getUserName());
|
||||
table.addRow("RESOURCES:");
|
||||
if(this.totem != null) {
|
||||
table.addRow("Totem: " + this.totem.toString());
|
||||
}
|
||||
table.addRow("Food: " + this.getFoodValue());
|
||||
table.addRow("Prestige: " + this.getPrestigeValue());
|
||||
table.addSeparator();
|
||||
|
||||
Reference in New Issue
Block a user