From db50986f3f891d760d9bdfb08d6b26b2bddfdbc6 Mon Sep 17 00:00:00 2001 From: Felix Koppe Date: Tue, 3 Dec 2024 15:38:13 +0100 Subject: [PATCH] Fix serialisation issue --- .../src/main/java/pp/mdga/client/server/MdgaServer.java | 5 +++++ Projekte/mdga/model/src/main/java/pp/mdga/game/Color.java | 3 +++ Projekte/mdga/model/src/main/java/pp/mdga/game/Node.java | 2 +- .../mdga/model/src/main/java/pp/mdga/game/PieceState.java | 3 +++ 4 files changed, 12 insertions(+), 1 deletion(-) 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 204e1138..0d54e6e7 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 @@ -2,6 +2,7 @@ import com.jme3.network.*; import com.jme3.network.serializing.Serializer; +import com.jme3.network.serializing.serializers.EnumSerializer; import pp.mdga.Resources; import pp.mdga.game.*; import pp.mdga.message.client.*; @@ -145,6 +146,10 @@ private void initializeSerializables() { Serializer.registerClass(StartNode.class); Serializer.registerClass(PlayerData.class); Serializer.registerClass(HomeNode.class); + + Serializer.registerClass(Color.class, new EnumSerializer()); + 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/Color.java b/Projekte/mdga/model/src/main/java/pp/mdga/game/Color.java index 828450f4..76d4e17b 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/game/Color.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/game/Color.java @@ -1,9 +1,12 @@ package pp.mdga.game; +import com.jme3.network.serializing.Serializable; + /** * This enumeration will be used to show the four different TSK which can be picked from a player. * In Addition, the NONE color will be used to show a none color. */ +@Serializable public enum Color { /** * Represents the air force color. diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/game/Node.java b/Projekte/mdga/model/src/main/java/pp/mdga/game/Node.java index 837dd3a6..59738c1c 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/game/Node.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/game/Node.java @@ -10,7 +10,7 @@ public class Node { protected Piece occupant; public Node(){ - + occupant = new Piece(Color.AIRFORCE, PieceState.WAITING); } /** 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 24e12ddd..3c66f677 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,8 +1,11 @@ package pp.mdga.game; +import com.jme3.network.serializing.Serializable; + /** * Represents the state of a piece. */ +@Serializable public enum PieceState { /** * The piece is active.