Updated 'DetermineStartPlayerState' class.
Updated the 'DetermineStartPlayerState' class by removing the 'rolls' attribute and its usage from it.
This commit is contained in:
		@@ -11,10 +11,12 @@
 | 
			
		||||
import pp.mdga.server.ServerGameLogic;
 | 
			
		||||
import pp.mdga.server.automaton.GameState;
 | 
			
		||||
 | 
			
		||||
import java.lang.System.Logger.Level;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.HashMap;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.Map;
 | 
			
		||||
import java.util.logging.Logger;
 | 
			
		||||
 | 
			
		||||
public class DetermineStartPlayerState extends GameAutomatonState {
 | 
			
		||||
    /**
 | 
			
		||||
@@ -28,7 +30,6 @@ public class DetermineStartPlayerState extends GameAutomatonState {
 | 
			
		||||
    private final Map<Integer, Integer> diceResults = new HashMap<>();
 | 
			
		||||
    private final List<Integer> playersHaveToRoll = new ArrayList<>();
 | 
			
		||||
    private final Map<Integer, Boolean> messageReceived = new HashMap<>();
 | 
			
		||||
    private int rolls = 0;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Constructs a server state of the specified game logic.
 | 
			
		||||
@@ -64,7 +65,6 @@ public void received(RequestDieMessage msg, int from) {
 | 
			
		||||
        int roll = this.logic.getGame().getDie().shuffle();
 | 
			
		||||
        this.logic.getServerSender().send(from, new DieMessage(roll));
 | 
			
		||||
        this.diceResults.put(from, roll);
 | 
			
		||||
        this.rolls++;
 | 
			
		||||
        if (this.diceResults.size() == this.logic.getGame().getPlayers().size()) {
 | 
			
		||||
            int maximumRoll = 0;
 | 
			
		||||
 | 
			
		||||
@@ -95,15 +95,15 @@ else if (maximumRoll < entry.getKey()) {
 | 
			
		||||
    @Override
 | 
			
		||||
    public void received(AnimationEndMessage msg, int from) {
 | 
			
		||||
        this.messageReceived.put(from, true);
 | 
			
		||||
        if (this.messageReceived.size() == this.rolls) {
 | 
			
		||||
        if (this.messageReceived.size() == this.logic.getGame().getPlayers().size()) {
 | 
			
		||||
            this.messageReceived.clear();
 | 
			
		||||
            if (this.playersHaveToRoll.size() > 1) {
 | 
			
		||||
                for (Integer id : this.playersHaveToRoll) {
 | 
			
		||||
                    this.logic.getServerSender().send(id, new DiceNowMessage());
 | 
			
		||||
                }
 | 
			
		||||
                this.rolls = 0;
 | 
			
		||||
            }
 | 
			
		||||
            else {
 | 
			
		||||
                LOGGER.log(Level.INFO, "Players have to roll: %s".formatted(this.logic.getGame().getPlayerById(this.playersHaveToRoll.get(0))));
 | 
			
		||||
                Color color = this.logic.getGame().getPlayerById(this.playersHaveToRoll.get(0)).getColor();
 | 
			
		||||
                this.logic.getGame().setActiveColor(color);
 | 
			
		||||
                this.logic.getServerSender().broadcast(new RankingResponseMessage(this.diceResults));
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user