From 2248d044c151598071e9f1139c1ca8d7ddb51220 Mon Sep 17 00:00:00 2001 From: Daniel Grigencha Date: Tue, 3 Dec 2024 03:41:58 +0100 Subject: [PATCH] Updated 'AnimationState' class. Updated the 'AnimationState' class by updating the content inside the 'received(AnimationEndMessage msg, int from) method in it. --- .../server/automaton/game/AnimationState.java | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/server/automaton/game/AnimationState.java b/Projekte/mdga/model/src/main/java/pp/mdga/server/automaton/game/AnimationState.java index 8d6661b9..c1ba800e 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/server/automaton/game/AnimationState.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/server/automaton/game/AnimationState.java @@ -11,10 +11,15 @@ */ public class AnimationState extends GameAutomatonState { /** - * Create FirstRollState constants. + * Create AnimationState constants. */ private static final System.Logger LOGGER = System.getLogger(AnimationState.class.getName()); + /** + * Create AnimationState attributes. + */ + private int messageReceived = 0; + /** * Constructs a server state of the specified game logic. * @@ -33,6 +38,7 @@ public void enter() { @Override public void exit() { LOGGER.log(System.Logger.Level.DEBUG, "Exited AnimationState state."); + this.messageReceived = 0; } /** @@ -44,7 +50,11 @@ public void exit() { */ @Override public void received(AnimationEndMessage msg, int from) { - this.logic.getServerSender().send(from, new DiceNowMessage()); - this.gameAutomaton.setCurrentState(this.gameAutomaton.getTurnState()); + if (this.messageReceived == this.logic.getGame().getPlayers().size()) { + this.logic.getServerSender().send(this.logic.getGame().getActivePlayerId(), new DiceNowMessage()); + this.gameAutomaton.setCurrentState(this.gameAutomaton.getTurnState()); + } else { + this.messageReceived++; + } } }