From 0aa73ca6ee02d9db8f00bce18b44f184ef96559a Mon Sep 17 00:00:00 2001 From: Daniel Grigencha Date: Mon, 2 Dec 2024 02:52:48 +0100 Subject: [PATCH 1/3] added the received method for a Shutdown Message --- .../model/src/main/java/pp/mdga/client/ClientGameLogic.java | 3 +++ .../mdga/model/src/main/java/pp/mdga/client/ClientState.java | 3 +++ 2 files changed, 6 insertions(+) diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/ClientGameLogic.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/ClientGameLogic.java index eeb76f55..c2526b46 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/ClientGameLogic.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/ClientGameLogic.java @@ -190,6 +190,9 @@ public void received(ServerStartGameMessage msg) { state.received(msg); } + @Override + public void received(ShutdownMessage msg) {state.received(msg);} + @Override public void received(StartPieceMessage msg) { state.received(msg); diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/ClientState.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/ClientState.java index e53a5d92..bf64e267 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/ClientState.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/ClientState.java @@ -150,6 +150,9 @@ public void received(ServerStartGameMessage msg) { LOGGER.log(Level.DEBUG, "Received {0} not allowed.", msg); } + @Override + public void received(ShutdownMessage msg) {LOGGER.log(Level.DEBUG, "Received {0} not allowed.", msg);} + @Override public void received(StartPieceMessage msg) { LOGGER.log(Level.DEBUG, "Received {0} not allowed.", msg); From c434bcb684574ea255baae5b04b3025287361930 Mon Sep 17 00:00:00 2001 From: Fleischer Hanno Date: Mon, 2 Dec 2024 03:03:36 +0100 Subject: [PATCH 2/3] minor changes --- .../pp/mdga/client/server/MdgaServer.java | 2 -- .../src/main/java/pp/mdga/game/Piece.java | 32 +++++++++---------- .../main/java/pp/mdga/game/PieceState.java | 6 ++++ .../main/java/pp/mdga/game/ShieldState.java | 7 ++++ .../src/main/java/pp/mdga/game/StartNode.java | 10 +++--- 5 files changed, 34 insertions(+), 23 deletions(-) diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/server/MdgaServer.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/server/MdgaServer.java index 084a5df4..306010b0 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/server/MdgaServer.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/server/MdgaServer.java @@ -143,8 +143,6 @@ private void initializeSerializables() { Serializer.registerClass(StartNode.class); Serializer.registerClass(PlayerData.class); Serializer.registerClass(HomeNode.class); - Serializer.registerClass(PieceState.class, new EnumSerializer()); - Serializer.registerClass(ShieldState.class, new EnumSerializer()); } private void registerListeners() { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/game/Piece.java b/Projekte/mdga/model/src/main/java/pp/mdga/game/Piece.java index cb0468b5..dfe36188 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/game/Piece.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/game/Piece.java @@ -12,17 +12,17 @@ public class Piece { /** * The shield state of the piece. */ - private ShieldState shield; + private int shield; /** * The current state of the piece. */ - private PieceState state; + private int state; /** * The color of the piece. */ - private final Color color; + private final int color; /** * The unique identifier of the piece. @@ -36,15 +36,15 @@ public class Piece { * @param state the state of the piece */ public Piece(Color color, PieceState state, int id) { - this.color = color; - this.state = state; - shield = ShieldState.NONE; + this.color = color.ordinal(); + this.state = state.ordinal(); + shield = ShieldState.NONE.ordinal(); } private Piece() { - color = null; - state = PieceState.WAITING; - shield = ShieldState.NONE; + color = Color.NONE.ordinal(); + state = PieceState.WAITING.ordinal(); + shield = ShieldState.NONE.ordinal(); } /** @@ -53,7 +53,7 @@ private Piece() { * @return the color of the piece */ public void setShield(ShieldState shield) { - this.shield = shield; + this.shield = shield.ordinal(); } /** @@ -62,7 +62,7 @@ public void setShield(ShieldState shield) { * @return the color of the piece */ public ShieldState getShield() { - return shield; + return ShieldState.values()[shield]; } /** @@ -71,7 +71,7 @@ public ShieldState getShield() { * @param state the state of the piece */ public void setState(PieceState state) { - this.state = state; + this.state = state.ordinal(); } /** @@ -80,7 +80,7 @@ public void setState(PieceState state) { * @return the color of the piece */ public PieceState getState() { - return state; + return PieceState.values()[state]; } /** @@ -89,7 +89,7 @@ public PieceState getState() { * @return the color of the piece */ public boolean isShielded() { - return shield == ShieldState.ACTIVE; + return shield == ShieldState.ACTIVE.ordinal(); } /** @@ -98,7 +98,7 @@ public boolean isShielded() { * @return the color of the piece */ public boolean isSuppressed() { - return shield == ShieldState.SUPPRESSED; + return shield == ShieldState.SUPPRESSED.ordinal(); } /** @@ -107,7 +107,7 @@ public boolean isSuppressed() { * @return the color of the piece */ public Color getColor() { - return color; + return Color.values()[color]; } /** diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/game/PieceState.java b/Projekte/mdga/model/src/main/java/pp/mdga/game/PieceState.java index 6677d5a8..780d8df0 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/game/PieceState.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/game/PieceState.java @@ -1,5 +1,7 @@ package pp.mdga.game; +import com.jme3.network.serializing.Serializable; + /** * Represents the state of a piece. */ @@ -21,6 +23,10 @@ public enum PieceState { */ HOMEFINISHED; + PieceState(){ + + } + public static PieceState getPieceStateByIndex(int index){ if (index < 0 || index >= values().length) { throw new IllegalArgumentException(""); diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/game/ShieldState.java b/Projekte/mdga/model/src/main/java/pp/mdga/game/ShieldState.java index f2c0c616..19a09a5d 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/game/ShieldState.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/game/ShieldState.java @@ -1,8 +1,11 @@ package pp.mdga.game; +import com.jme3.network.serializing.Serializable; + /** * Represents the state of a piece's shield. */ +@Serializable public enum ShieldState { /** * The shield is not active. @@ -17,6 +20,10 @@ public enum ShieldState { */ SUPPRESSED; + ShieldState(){ + + } + public static ShieldState getShieldStateByIndex(int index){ if (index < 0 || index >= values().length) { throw new IllegalArgumentException(""); diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/game/StartNode.java b/Projekte/mdga/model/src/main/java/pp/mdga/game/StartNode.java index bb203084..23161ecf 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/game/StartNode.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/game/StartNode.java @@ -10,7 +10,7 @@ public class StartNode extends Node { /** * The color of the node. */ - private Color color; + private int color; /** * Creates a new start node with the given color. @@ -18,11 +18,11 @@ public class StartNode extends Node { * @param color the color of the node */ public StartNode(Color color) { - this.color = color; + this.color = color.ordinal(); } private StartNode() { - color = null; + color = Color.NONE.ordinal(); } /** @@ -31,7 +31,7 @@ private StartNode() { * @return the color of the node */ public Color getColor() { - return color; + return Color.values()[color]; } /** @@ -40,6 +40,6 @@ public Color getColor() { * @param color the new color of the node */ public void setColor(Color color) { - this.color = color; + this.color = color.ordinal(); } } From b87f5de5fb53242ad273761b90e3ed1fa0fa0601 Mon Sep 17 00:00:00 2001 From: Felix Koppe Date: Mon, 2 Dec 2024 03:03:54 +0100 Subject: [PATCH 3/3] Fix error --- .../client/src/main/java/pp/mdga/client/InputSynchronizer.java | 1 - 1 file changed, 1 deletion(-) diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/InputSynchronizer.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/InputSynchronizer.java index 7bdb75be..b251134f 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/InputSynchronizer.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/InputSynchronizer.java @@ -120,7 +120,6 @@ else if(boardSelect != null) { if(app.getView() instanceof GameView gameView){ // app.getNotificationSynchronizer().addTestNotification(new FinishNotification(Color.NAVY)); // app.getNotificationSynchronizer().addTestNotification(new MovePieceNotification()); - gameView.test(); } } }