From 7eafa3da390b2fc136deb700c3c295bfa00157fd Mon Sep 17 00:00:00 2001 From: Fleischer Hanno Date: Mon, 25 Nov 2024 17:43:29 +0100 Subject: [PATCH 1/8] refactored the whole client package structure --- .../main/java/pp/mdga/client/Animation.java | 7 - .../java/pp/mdga/client/AudioSettings.java | 7 - .../main/java/pp/mdga/client/Ceremony.java | 2 + .../mdga/client/ChoosePieceStateMachine.java | 12 -- .../java/pp/mdga/client/ChoosePowerCard.java | 7 - .../java/pp/mdga/client/ClientAutomaton.java | 12 +- .../java/pp/mdga/client/ClientGameLogic.java | 1 + .../java/pp/mdga/client/DialogStates.java | 8 -- .../src/main/java/pp/mdga/client/Dialogs.java | 2 + .../mdga/client/{GameState.java => Game.java} | 6 +- .../main/java/pp/mdga/client/Interrupt.java | 4 +- .../src/main/java/pp/mdga/client/Lobby.java | 7 - .../main/java/pp/mdga/client/MovePiece.java | 7 - .../java/pp/mdga/client/NetworkDialog.java | 7 - .../src/main/java/pp/mdga/client/NoPiece.java | 7 - .../java/pp/mdga/client/PlayPowerCard.java | 7 - .../main/java/pp/mdga/client/RollDice.java | 7 - .../java/pp/mdga/client/RollRankingDice.java | 7 - .../main/java/pp/mdga/client/SelectPiece.java | 7 - .../main/java/pp/mdga/client/Settings.java | 2 + .../src/main/java/pp/mdga/client/Shield.java | 7 - .../main/java/pp/mdga/client/Spectator.java | 7 - .../main/java/pp/mdga/client/StartPiece.java | 7 - .../src/main/java/pp/mdga/client/Swap.java | 7 - .../java/pp/mdga/client/VideoSettings.java | 7 - .../main/java/pp/mdga/client/WaitRanking.java | 7 - .../src/main/java/pp/mdga/client/Waiting.java | 7 - .../java/pp/mdga/client/WaitingPiece.java | 7 - .../CeremonyStateMachine.java | 6 +- .../client/{ => ceremonyState}/Podium.java | 5 +- .../{ => ceremonyState}/Statistics.java | 5 +- .../mdga/client/dialogState/DialogStates.java | 11 ++ .../DialogsStateMachine.java | 6 +- .../pp/mdga/client/dialogState/Lobby.java | 10 ++ .../client/dialogState/NetworkDialog.java | 10 ++ .../client/{ => dialogState}/StartDialog.java | 5 +- .../pp/mdga/client/gameState/Animation.java | 10 ++ .../{ => gameState}/DetermineStartPlayer.java | 8 +- .../{ => gameState}/GameStateMachine.java | 6 +- .../pp/mdga/client/gameState/GameStates.java | 10 ++ .../pp/mdga/client/gameState/Spectator.java | 10 ++ .../pp/mdga/client/{ => gameState}/Turn.java | 8 +- .../pp/mdga/client/gameState/Waiting.java | 10 ++ .../DetermineStartPlayerStateMachine.java | 9 +- .../DetermineStartPlayerStates.java | 11 ++ .../RollRankingDice.java | 11 ++ .../WaitRanking.java | 11 ++ .../turnState}/ChoosePiece.java | 8 +- .../client/gameState/turnState/MovePiece.java | 10 ++ .../gameState/turnState/PlayPowerCard.java | 10 ++ .../{ => gameState/turnState}/PowerCard.java | 8 +- .../client/gameState/turnState/RollDice.java | 10 ++ .../turnState}/TurnStateMachine.java | 6 +- .../gameState/turnState/TurnStates.java | 11 ++ .../ChoosePieceStateMachine.java | 16 +++ .../choosePieceState/ChoosePieceStates.java | 11 ++ .../turnState/choosePieceState/NoPiece.java | 10 ++ .../choosePieceState/SelectPiece.java | 10 ++ .../choosePieceState/StartPiece.java | 10 ++ .../choosePieceState/WaitingPiece.java | 10 ++ .../powerCardState/ChoosePowerCard.java | 10 ++ .../PowerCardStateMachine.java | 6 +- .../powerCardState/PowerCardStates.java | 11 ++ .../turnState/powerCardState/Shield.java | 10 ++ .../turnState/powerCardState/Swap.java | 10 ++ .../client/settingsState/AudioSettings.java | 10 ++ .../{ => settingsState}/MainSettings.java | 5 +- .../client/settingsState/SettingStates.java | 10 ++ .../SettingsStateMachine.java | 6 +- .../client/settingsState/VideoSettings.java | 10 ++ .../client/clientState/ClientStateTest.java | 128 ++++++++++-------- 71 files changed, 457 insertions(+), 233 deletions(-) delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/Animation.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/AudioSettings.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/ChoosePieceStateMachine.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/ChoosePowerCard.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/DialogStates.java rename Projekte/mdga/model/src/main/java/pp/mdga/client/{GameState.java => Game.java} (64%) delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/Lobby.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/MovePiece.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/NetworkDialog.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/NoPiece.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/PlayPowerCard.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/RollDice.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/RollRankingDice.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/SelectPiece.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/Shield.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/Spectator.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/StartPiece.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/Swap.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/VideoSettings.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/WaitRanking.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/Waiting.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/WaitingPiece.java rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => ceremonyState}/CeremonyStateMachine.java (64%) rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => ceremonyState}/Podium.java (56%) rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => ceremonyState}/Statistics.java (57%) create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/DialogStates.java rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => dialogState}/DialogsStateMachine.java (64%) create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/Lobby.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/NetworkDialog.java rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => dialogState}/StartDialog.java (58%) create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Animation.java rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => gameState}/DetermineStartPlayer.java (63%) rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => gameState}/GameStateMachine.java (62%) create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/GameStates.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Spectator.java rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => gameState}/Turn.java (60%) create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Waiting.java rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => gameState/determineStartPlayerState}/DetermineStartPlayerStateMachine.java (57%) create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/DetermineStartPlayerStates.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/RollRankingDice.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/WaitRanking.java rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => gameState/turnState}/ChoosePiece.java (59%) create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/MovePiece.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/PlayPowerCard.java rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => gameState/turnState}/PowerCard.java (59%) create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/RollDice.java rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => gameState/turnState}/TurnStateMachine.java (62%) create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/TurnStates.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/ChoosePieceStateMachine.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/ChoosePieceStates.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/NoPiece.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/SelectPiece.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/StartPiece.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/WaitingPiece.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/ChoosePowerCard.java rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => gameState/turnState/powerCardState}/PowerCardStateMachine.java (62%) create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/PowerCardStates.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/Shield.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/Swap.java create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/AudioSettings.java rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => settingsState}/MainSettings.java (57%) create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/SettingStates.java rename Projekte/mdga/model/src/main/java/pp/mdga/client/{ => settingsState}/SettingsStateMachine.java (62%) create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/VideoSettings.java diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/Animation.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/Animation.java deleted file mode 100644 index 6ed12c3b..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/Animation.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class Animation extends ClientState { - public Animation(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/AudioSettings.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/AudioSettings.java deleted file mode 100644 index add83883..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/AudioSettings.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class AudioSettings extends ClientState { - public AudioSettings(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/Ceremony.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/Ceremony.java index 432f90f9..03d5a6d0 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/Ceremony.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/Ceremony.java @@ -1,5 +1,7 @@ package pp.mdga.client; +import pp.mdga.client.ceremonyState.CeremonyStateMachine; + public class Ceremony extends ClientState { private final CeremonyStateMachine ceremonyStateMachine; diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/ChoosePieceStateMachine.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/ChoosePieceStateMachine.java deleted file mode 100644 index 5346214c..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/ChoosePieceStateMachine.java +++ /dev/null @@ -1,12 +0,0 @@ -package pp.mdga.client; - -public class ChoosePieceStateMachine extends ClientStateMachine{ - public ChoosePieceStateMachine(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } - - @Override - public NoPiece initialState() { - return new NoPiece(this, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/ChoosePowerCard.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/ChoosePowerCard.java deleted file mode 100644 index a11259b0..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/ChoosePowerCard.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class ChoosePowerCard extends ClientState { - public ChoosePowerCard(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/ClientAutomaton.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/ClientAutomaton.java index c90e199b..f3882764 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/ClientAutomaton.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/ClientAutomaton.java @@ -2,13 +2,23 @@ public class ClientAutomaton extends ClientStateMachine { + private Dialogs dialogs; + private Ceremony ceremony; + private Game game; + private Interrupt interrupt; + public ClientAutomaton(ClientGameLogic logic){ super(null, logic); + dialogs = new Dialogs(this, logic); + ceremony = new Ceremony(this, logic); + game = new Game(this, logic); entry(); } + + @Override public Dialogs initialState(){ - return new Dialogs(this, logic); + return dialogs; } } 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 9ec3bca9..47b4388e 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 @@ -1,5 +1,6 @@ package pp.mdga.client; +import pp.mdga.client.gameState.turnState.choosePieceState.StartPiece; import pp.mdga.game.Game; import pp.mdga.message.client.ClientMessage; import pp.mdga.message.server.*; diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/DialogStates.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/DialogStates.java deleted file mode 100644 index f5ad1568..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/DialogStates.java +++ /dev/null @@ -1,8 +0,0 @@ -package pp.mdga.client; - -public abstract class DialogStates extends ClientState{ - - public DialogStates(ClientState parent, ClientGameLogic logic){ - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/Dialogs.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/Dialogs.java index 02a63715..04592b47 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/Dialogs.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/Dialogs.java @@ -1,5 +1,7 @@ package pp.mdga.client; +import pp.mdga.client.dialogState.DialogsStateMachine; + public class Dialogs extends ClientState { private final DialogsStateMachine dialogsStateMachine; diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/GameState.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/Game.java similarity index 64% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/GameState.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/Game.java index 8819c103..d167ce1f 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/GameState.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/Game.java @@ -1,9 +1,11 @@ package pp.mdga.client; -public class GameState extends ClientState { +import pp.mdga.client.gameState.GameStateMachine; + +public class Game extends ClientState { private final GameStateMachine gameStateMachine; - public GameState(ClientState parent, ClientGameLogic logic) { + public Game(ClientState parent, ClientGameLogic logic) { super(parent, logic); this.gameStateMachine = new GameStateMachine(parent, logic); } diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/Interrupt.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/Interrupt.java index 739a6bd2..bea81fd8 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/Interrupt.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/Interrupt.java @@ -2,9 +2,9 @@ public class Interrupt extends ClientState { - private final GameState lastState; + private final Game lastState; - public Interrupt(ClientState parent, ClientGameLogic logic, GameState lastState) { + public Interrupt(ClientState parent, ClientGameLogic logic, Game lastState) { super(parent, logic); this.lastState = lastState; } diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/Lobby.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/Lobby.java deleted file mode 100644 index 0f23c854..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/Lobby.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class Lobby extends ClientState { - public Lobby(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/MovePiece.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/MovePiece.java deleted file mode 100644 index 13bd9b85..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/MovePiece.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class MovePiece extends ClientState { - public MovePiece(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/NetworkDialog.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/NetworkDialog.java deleted file mode 100644 index 8075ae90..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/NetworkDialog.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class NetworkDialog extends ClientState { - public NetworkDialog(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/NoPiece.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/NoPiece.java deleted file mode 100644 index 42375b01..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/NoPiece.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class NoPiece extends ClientState { - public NoPiece(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/PlayPowerCard.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/PlayPowerCard.java deleted file mode 100644 index 4278445f..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/PlayPowerCard.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class PlayPowerCard extends ClientState { - public PlayPowerCard(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/RollDice.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/RollDice.java deleted file mode 100644 index 4af7c7ad..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/RollDice.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class RollDice extends ClientState { - public RollDice(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/RollRankingDice.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/RollRankingDice.java deleted file mode 100644 index f1a27dce..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/RollRankingDice.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class RollRankingDice extends ClientState { - public RollRankingDice(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/SelectPiece.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/SelectPiece.java deleted file mode 100644 index 790e91b2..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/SelectPiece.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class SelectPiece extends ClientState { - public SelectPiece(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/Settings.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/Settings.java index a30942ab..74983f07 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/Settings.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/Settings.java @@ -1,5 +1,7 @@ package pp.mdga.client; +import pp.mdga.client.settingsState.SettingsStateMachine; + public class Settings extends ClientState { private final SettingsStateMachine settingsStateMachine; diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/Shield.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/Shield.java deleted file mode 100644 index a3f205ba..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/Shield.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class Shield extends ClientState { - public Shield(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/Spectator.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/Spectator.java deleted file mode 100644 index 293fc2b3..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/Spectator.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class Spectator extends ClientState { - public Spectator(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/StartPiece.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/StartPiece.java deleted file mode 100644 index 7e52fd56..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/StartPiece.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class StartPiece extends ClientState { - public StartPiece(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/Swap.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/Swap.java deleted file mode 100644 index da3ef3c5..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/Swap.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class Swap extends ClientState { - public Swap(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/VideoSettings.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/VideoSettings.java deleted file mode 100644 index 0b397e1a..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/VideoSettings.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class VideoSettings extends ClientState { - public VideoSettings(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/WaitRanking.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/WaitRanking.java deleted file mode 100644 index b9db2175..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/WaitRanking.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class WaitRanking extends ClientState { - public WaitRanking(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/Waiting.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/Waiting.java deleted file mode 100644 index 14a32cdf..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/Waiting.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class Waiting extends ClientState { - public Waiting(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/WaitingPiece.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/WaitingPiece.java deleted file mode 100644 index 7b12a023..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/WaitingPiece.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.client; - -public class WaitingPiece extends ClientState { - public WaitingPiece(ClientState parent, ClientGameLogic logic) { - super(parent, logic); - } -} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/CeremonyStateMachine.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/ceremonyState/CeremonyStateMachine.java similarity index 64% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/CeremonyStateMachine.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/ceremonyState/CeremonyStateMachine.java index 758950f8..87d5a76e 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/CeremonyStateMachine.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/ceremonyState/CeremonyStateMachine.java @@ -1,4 +1,8 @@ -package pp.mdga.client; +package pp.mdga.client.ceremonyState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.ClientStateMachine; public class CeremonyStateMachine extends ClientStateMachine { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/Podium.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/ceremonyState/Podium.java similarity index 56% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/Podium.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/ceremonyState/Podium.java index f962aa68..8adcb0ea 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/Podium.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/ceremonyState/Podium.java @@ -1,4 +1,7 @@ -package pp.mdga.client; +package pp.mdga.client.ceremonyState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; public class Podium extends ClientState { public Podium(ClientState parent, ClientGameLogic logic) { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/Statistics.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/ceremonyState/Statistics.java similarity index 57% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/Statistics.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/ceremonyState/Statistics.java index 8eecb5ce..79f7eb1b 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/Statistics.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/ceremonyState/Statistics.java @@ -1,4 +1,7 @@ -package pp.mdga.client; +package pp.mdga.client.ceremonyState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; public class Statistics extends ClientState { public Statistics(ClientState parent, ClientGameLogic logic) { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/DialogStates.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/DialogStates.java new file mode 100644 index 00000000..f4c549d2 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/DialogStates.java @@ -0,0 +1,11 @@ +package pp.mdga.client.dialogState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public abstract class DialogStates extends ClientState { + + public DialogStates(ClientState parent, ClientGameLogic logic){ + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/DialogsStateMachine.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/DialogsStateMachine.java similarity index 64% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/DialogsStateMachine.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/DialogsStateMachine.java index e1b833ad..62145bfd 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/DialogsStateMachine.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/DialogsStateMachine.java @@ -1,4 +1,8 @@ -package pp.mdga.client; +package pp.mdga.client.dialogState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.ClientStateMachine; public class DialogsStateMachine extends ClientStateMachine { public DialogsStateMachine(ClientState parent, ClientGameLogic logic) { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/Lobby.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/Lobby.java new file mode 100644 index 00000000..92aac41b --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/Lobby.java @@ -0,0 +1,10 @@ +package pp.mdga.client.dialogState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class Lobby extends DialogStates { + public Lobby(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/NetworkDialog.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/NetworkDialog.java new file mode 100644 index 00000000..fada99fc --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/NetworkDialog.java @@ -0,0 +1,10 @@ +package pp.mdga.client.dialogState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class NetworkDialog extends DialogStates { + public NetworkDialog(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/StartDialog.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/StartDialog.java similarity index 58% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/StartDialog.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/StartDialog.java index 90bb1e2b..6147c578 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/StartDialog.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/StartDialog.java @@ -1,4 +1,7 @@ -package pp.mdga.client; +package pp.mdga.client.dialogState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; public class StartDialog extends DialogStates { public StartDialog(ClientState parent, ClientGameLogic logic) { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Animation.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Animation.java new file mode 100644 index 00000000..28f827cc --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Animation.java @@ -0,0 +1,10 @@ +package pp.mdga.client.gameState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class Animation extends GameStates { + public Animation(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/DetermineStartPlayer.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/DetermineStartPlayer.java similarity index 63% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/DetermineStartPlayer.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/DetermineStartPlayer.java index 3a773bc8..007a6ba4 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/DetermineStartPlayer.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/DetermineStartPlayer.java @@ -1,6 +1,10 @@ -package pp.mdga.client; +package pp.mdga.client.gameState; -public class DetermineStartPlayer extends ClientState { +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.gameState.determineStartPlayer.DetermineStartPlayerStateMachine; + +public class DetermineStartPlayer extends GameStates { private final DetermineStartPlayerStateMachine determineStartPlayerStateMachine; public DetermineStartPlayer(ClientState parent, ClientGameLogic logic) { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/GameStateMachine.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/GameStateMachine.java similarity index 62% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/GameStateMachine.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/GameStateMachine.java index 4028c28e..c7043a5f 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/GameStateMachine.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/GameStateMachine.java @@ -1,4 +1,8 @@ -package pp.mdga.client; +package pp.mdga.client.gameState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.ClientStateMachine; public class GameStateMachine extends ClientStateMachine { public GameStateMachine(ClientState parent, ClientGameLogic logic) { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/GameStates.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/GameStates.java new file mode 100644 index 00000000..05d1c404 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/GameStates.java @@ -0,0 +1,10 @@ +package pp.mdga.client.gameState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public abstract class GameStates extends ClientState { + public GameStates(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Spectator.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Spectator.java new file mode 100644 index 00000000..f79af4fe --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Spectator.java @@ -0,0 +1,10 @@ +package pp.mdga.client.gameState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class Spectator extends GameStates { + public Spectator(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/Turn.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Turn.java similarity index 60% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/Turn.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Turn.java index 3bdef5e6..162dce9a 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/Turn.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Turn.java @@ -1,6 +1,10 @@ -package pp.mdga.client; +package pp.mdga.client.gameState; -public class Turn extends ClientState { +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.gameState.turnState.TurnStateMachine; + +public class Turn extends GameStates { private final TurnStateMachine turnStateMachine; public Turn(ClientState parent, ClientGameLogic logic) { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Waiting.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Waiting.java new file mode 100644 index 00000000..1a598100 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/Waiting.java @@ -0,0 +1,10 @@ +package pp.mdga.client.gameState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class Waiting extends GameStates { + public Waiting(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/DetermineStartPlayerStateMachine.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/DetermineStartPlayerStateMachine.java similarity index 57% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/DetermineStartPlayerStateMachine.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/DetermineStartPlayerStateMachine.java index 16c192c7..40a85b01 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/DetermineStartPlayerStateMachine.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/DetermineStartPlayerStateMachine.java @@ -1,6 +1,11 @@ -package pp.mdga.client; +package pp.mdga.client.gameState.determineStartPlayer; -public class DetermineStartPlayerStateMachine extends ClientStateMachine{ +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.ClientStateMachine; +import pp.mdga.client.RollRankingDice; + +public class DetermineStartPlayerStateMachine extends ClientStateMachine { public DetermineStartPlayerStateMachine(ClientState parent, ClientGameLogic logic) { super(parent, logic); } diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/DetermineStartPlayerStates.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/DetermineStartPlayerStates.java new file mode 100644 index 00000000..d0b7b24f --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/DetermineStartPlayerStates.java @@ -0,0 +1,11 @@ +package pp.mdga.client.gameState.determineStartPlayerState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.gameState.GameStates; + +public class DetermineStartPlayerStates extends GameStates { + public DetermineStartPlayerStates(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/RollRankingDice.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/RollRankingDice.java new file mode 100644 index 00000000..56225b22 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/RollRankingDice.java @@ -0,0 +1,11 @@ +package pp.mdga.client.gameState.determineStartPlayerState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.gameState.determineStartPlayer.DetermineStartPlayerStates; + +public class RollRankingDice extends DetermineStartPlayerStates { + public RollRankingDice(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/WaitRanking.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/WaitRanking.java new file mode 100644 index 00000000..29944582 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/WaitRanking.java @@ -0,0 +1,11 @@ +package pp.mdga.client.gameState.determineStartPlayerState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.gameState.GameStates; + +public class WaitRanking extends GameStates { + public WaitRanking(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/ChoosePiece.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/ChoosePiece.java similarity index 59% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/ChoosePiece.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/ChoosePiece.java index 828b12bd..b78ec9c9 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/ChoosePiece.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/ChoosePiece.java @@ -1,6 +1,10 @@ -package pp.mdga.client; +package pp.mdga.client.gameState.turnState; -public class ChoosePiece extends ClientState { +import pp.mdga.client.gameState.turnState.choosePieceState.ChoosePieceStateMachine; +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class ChoosePiece extends TurnStates { private final ChoosePieceStateMachine choosePieceStateMachine; diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/MovePiece.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/MovePiece.java new file mode 100644 index 00000000..5766a930 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/MovePiece.java @@ -0,0 +1,10 @@ +package pp.mdga.client.gameState.turnState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class MovePiece extends TurnStates { + public MovePiece(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/PlayPowerCard.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/PlayPowerCard.java new file mode 100644 index 00000000..70b12fd8 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/PlayPowerCard.java @@ -0,0 +1,10 @@ +package pp.mdga.client.gameState.turnState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class PlayPowerCard extends TurnStates { + public PlayPowerCard(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/PowerCard.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/PowerCard.java similarity index 59% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/PowerCard.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/PowerCard.java index 42ea2741..dd1f54bf 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/PowerCard.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/PowerCard.java @@ -1,6 +1,10 @@ -package pp.mdga.client; +package pp.mdga.client.gameState.turnState; -public class PowerCard extends ClientState { +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.gameState.turnState.powerCardState.PowerCardStateMachine; + +public class PowerCard extends TurnStates { private final PowerCardStateMachine powerCardStateMachine; public PowerCard(ClientState parent, ClientGameLogic logic) { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/RollDice.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/RollDice.java new file mode 100644 index 00000000..c09f2580 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/RollDice.java @@ -0,0 +1,10 @@ +package pp.mdga.client.gameState.turnState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class RollDice extends TurnStates { + public RollDice(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/TurnStateMachine.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/TurnStateMachine.java similarity index 62% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/TurnStateMachine.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/TurnStateMachine.java index 60501cd8..e43f4665 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/TurnStateMachine.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/TurnStateMachine.java @@ -1,4 +1,8 @@ -package pp.mdga.client; +package pp.mdga.client.gameState.turnState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.ClientStateMachine; public class TurnStateMachine extends ClientStateMachine { public TurnStateMachine(ClientState parent, ClientGameLogic logic) { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/TurnStates.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/TurnStates.java new file mode 100644 index 00000000..6ca2cd4d --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/TurnStates.java @@ -0,0 +1,11 @@ +package pp.mdga.client.gameState.turnState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.gameState.GameStates; + +public abstract class TurnStates extends GameStates { + public TurnStates(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/ChoosePieceStateMachine.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/ChoosePieceStateMachine.java new file mode 100644 index 00000000..b50bc0cc --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/ChoosePieceStateMachine.java @@ -0,0 +1,16 @@ +package pp.mdga.client.gameState.turnState.choosePieceState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.ClientStateMachine; + +public class ChoosePieceStateMachine extends ClientStateMachine { + public ChoosePieceStateMachine(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } + + @Override + public NoPiece initialState() { + return new NoPiece(this, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/ChoosePieceStates.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/ChoosePieceStates.java new file mode 100644 index 00000000..231b2d37 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/ChoosePieceStates.java @@ -0,0 +1,11 @@ +package pp.mdga.client.gameState.turnState.choosePieceState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.gameState.turnState.TurnStates; + +public abstract class ChoosePieceStates extends TurnStates { + public ChoosePieceStates(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/NoPiece.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/NoPiece.java new file mode 100644 index 00000000..c538abaa --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/NoPiece.java @@ -0,0 +1,10 @@ +package pp.mdga.client.gameState.turnState.choosePieceState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class NoPiece extends ChoosePieceStates { + public NoPiece(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/SelectPiece.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/SelectPiece.java new file mode 100644 index 00000000..6118d2cd --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/SelectPiece.java @@ -0,0 +1,10 @@ +package pp.mdga.client.gameState.turnState.choosePieceState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class SelectPiece extends ChoosePieceStates { + public SelectPiece(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/StartPiece.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/StartPiece.java new file mode 100644 index 00000000..8cce510a --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/StartPiece.java @@ -0,0 +1,10 @@ +package pp.mdga.client.gameState.turnState.choosePieceState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class StartPiece extends ChoosePieceStates { + public StartPiece(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/WaitingPiece.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/WaitingPiece.java new file mode 100644 index 00000000..d8aed13c --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/WaitingPiece.java @@ -0,0 +1,10 @@ +package pp.mdga.client.gameState.turnState.choosePieceState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class WaitingPiece extends ChoosePieceStates { + public WaitingPiece(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/ChoosePowerCard.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/ChoosePowerCard.java new file mode 100644 index 00000000..babcf7bf --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/ChoosePowerCard.java @@ -0,0 +1,10 @@ +package pp.mdga.client.gameState.turnState.powerCardState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class ChoosePowerCard extends PowerCardStates { + public ChoosePowerCard(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/PowerCardStateMachine.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/PowerCardStateMachine.java similarity index 62% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/PowerCardStateMachine.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/PowerCardStateMachine.java index 037417bc..912ffead 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/PowerCardStateMachine.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/PowerCardStateMachine.java @@ -1,4 +1,8 @@ -package pp.mdga.client; +package pp.mdga.client.gameState.turnState.powerCardState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.ClientStateMachine; public class PowerCardStateMachine extends ClientStateMachine { public PowerCardStateMachine(ClientState parent, ClientGameLogic logic) { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/PowerCardStates.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/PowerCardStates.java new file mode 100644 index 00000000..753e5aa8 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/PowerCardStates.java @@ -0,0 +1,11 @@ +package pp.mdga.client.gameState.turnState.powerCardState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.gameState.turnState.TurnStates; + +public abstract class PowerCardStates extends TurnStates { + public PowerCardStates(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/Shield.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/Shield.java new file mode 100644 index 00000000..f66b1be9 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/Shield.java @@ -0,0 +1,10 @@ +package pp.mdga.client.gameState.turnState.powerCardState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class Shield extends PowerCardStates { + public Shield(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/Swap.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/Swap.java new file mode 100644 index 00000000..0704a028 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/Swap.java @@ -0,0 +1,10 @@ +package pp.mdga.client.gameState.turnState.powerCardState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class Swap extends PowerCardStates { + public Swap(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/AudioSettings.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/AudioSettings.java new file mode 100644 index 00000000..af494e93 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/AudioSettings.java @@ -0,0 +1,10 @@ +package pp.mdga.client.settingsState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class AudioSettings extends SettingStates { + public AudioSettings(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/MainSettings.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/MainSettings.java similarity index 57% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/MainSettings.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/MainSettings.java index e8af6b05..95050b8a 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/MainSettings.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/MainSettings.java @@ -1,4 +1,7 @@ -package pp.mdga.client; +package pp.mdga.client.settingsState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; public class MainSettings extends ClientState { public MainSettings(ClientState parent, ClientGameLogic logic) { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/SettingStates.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/SettingStates.java new file mode 100644 index 00000000..2b9fb2ff --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/SettingStates.java @@ -0,0 +1,10 @@ +package pp.mdga.client.settingsState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public abstract class SettingStates extends ClientState { + public SettingStates(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/SettingsStateMachine.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/SettingsStateMachine.java similarity index 62% rename from Projekte/mdga/model/src/main/java/pp/mdga/client/SettingsStateMachine.java rename to Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/SettingsStateMachine.java index 0abb565e..750375b4 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/SettingsStateMachine.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/SettingsStateMachine.java @@ -1,4 +1,8 @@ -package pp.mdga.client; +package pp.mdga.client.settingsState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; +import pp.mdga.client.ClientStateMachine; public class SettingsStateMachine extends ClientStateMachine { public SettingsStateMachine(ClientState parent, ClientGameLogic logic) { diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/VideoSettings.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/VideoSettings.java new file mode 100644 index 00000000..ebe24638 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/VideoSettings.java @@ -0,0 +1,10 @@ +package pp.mdga.client.settingsState; + +import pp.mdga.client.ClientGameLogic; +import pp.mdga.client.ClientState; + +public class VideoSettings extends SettingStates { + public VideoSettings(ClientState parent, ClientGameLogic logic) { + super(parent, logic); + } +} diff --git a/Projekte/mdga/model/src/test/java/pp/mdga/client/clientState/ClientStateTest.java b/Projekte/mdga/model/src/test/java/pp/mdga/client/clientState/ClientStateTest.java index d48890a0..e09b5533 100644 --- a/Projekte/mdga/model/src/test/java/pp/mdga/client/clientState/ClientStateTest.java +++ b/Projekte/mdga/model/src/test/java/pp/mdga/client/clientState/ClientStateTest.java @@ -4,10 +4,28 @@ import org.junit.Test; import pp.mdga.client.*; import pp.mdga.client.Ceremony; -import pp.mdga.client.StartPiece; +import pp.mdga.client.ceremonyState.CeremonyStateMachine; +import pp.mdga.client.ceremonyState.Podium; +import pp.mdga.client.ceremonyState.Statistics; +import pp.mdga.client.dialogState.DialogsStateMachine; +import pp.mdga.client.dialogState.Lobby; +import pp.mdga.client.dialogState.NetworkDialog; +import pp.mdga.client.dialogState.StartDialog; +import pp.mdga.client.gameState.*; +import pp.mdga.client.gameState.turnState.choosePieceState.*; +import pp.mdga.client.gameState.determineStartPlayer.DetermineStartPlayerStateMachine; +import pp.mdga.client.gameState.turnState.*; +import pp.mdga.client.gameState.turnState.powerCardState.ChoosePowerCard; +import pp.mdga.client.gameState.turnState.powerCardState.PowerCardStateMachine; +import pp.mdga.client.gameState.turnState.powerCardState.Shield; +import pp.mdga.client.gameState.turnState.powerCardState.Swap; +import pp.mdga.client.Settings; +import pp.mdga.client.settingsState.AudioSettings; +import pp.mdga.client.settingsState.MainSettings; +import pp.mdga.client.settingsState.SettingsStateMachine; +import pp.mdga.client.settingsState.VideoSettings; import pp.mdga.game.BonusCard; import pp.mdga.game.Color; -import pp.mdga.game.Game; import pp.mdga.message.client.ClientMessage; import java.util.ArrayList; @@ -35,7 +53,7 @@ public class ClientStateTest { private DetermineStartPlayerStateMachine determineStartPlayerStateMachine; private Dialogs dialogs; private DialogsStateMachine dialogsStateMachine; - private GameState gameState; + private Game gameState; private GameStateMachine gameStateMachine; private Interrupt interrupt; private Lobby lobby; @@ -104,12 +122,12 @@ public class ClientStateTest { private BonusCard shieldCard; private BonusCard turboCard; - private Game game; + private pp.mdga.game.Game game; @Before public void setUp() { //initialize the game - game = new Game(); + game = new pp.mdga.game.Game(); //initialize the playerID from=1234; @@ -179,7 +197,7 @@ public void send(ClientMessage msg) { //initialize the states dialogs = new Dialogs(clientAutomaton,clientGameLogic); - gameState = new GameState(clientAutomaton,clientGameLogic); + gameState = new Game(clientAutomaton,clientGameLogic); ceremony = new Ceremony(clientAutomaton,clientGameLogic); interrupt = new Interrupt(clientAutomaton,clientGameLogic,gameState); @@ -243,10 +261,10 @@ public void testDialogsToGame() { clientGameLogic.receive(startGame); //tests if the client is in the gameState after receiving the message - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //tests if the new State of the GameStateMachine is in DetermineStartPlayer - GameState gameState1 = (GameState) clientAutomaton.getState(); + Game gameState1 = (Game) clientAutomaton.getState(); GameStateMachine gameStateMachine1 = gameState1.getGameStateMachine(); assertTrue(gameStateMachine1.getState() instanceof DetermineStartPlayer); @@ -272,7 +290,7 @@ public void testDialogsToClientStateEndState() { public void testClientGameToCeremony() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the Ceremony-Message to the client clientGameLogic.receive(ceremonyMessage); @@ -295,7 +313,7 @@ public void testClientGameSubStatesToInterrupt() { clientAutomaton.gotoState(gameState); //tests if the client is in GameState - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the Ceremony-Message to the client clientGameLogic.receive(interrupt); @@ -338,7 +356,7 @@ public void testClientInterruptToGame() { //Todo sends the continue-message //tests if the client is in the game - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); } /** @@ -562,10 +580,10 @@ public void testLobbyToRollRankingDice() { clientGameLogic.receive();//TODO message //tests if the clientStateMachine is in the GameState - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //tests if the clientStateMachine is in the DetermineStartPlayer - GameState gameState1 = (GameState) clientAutomaton.getState(); + Game gameState1 = (Game) clientAutomaton.getState(); GameStateMachine gameStateMachine1 = gameState1.getGameStateMachine(); assertTrue(gameStateMachine1.getState() instanceof DetermineStartPlayer); @@ -590,7 +608,7 @@ public void testDetermineStartPlayerToWait() { public void testWaitToAnimation() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the client in WaitState gameStateMachine.gotoState(waiting); @@ -598,7 +616,7 @@ public void testWaitToAnimation() { //tests if a piece is moved,that the client goes into Animation clientGameLogic.receive(moveMessage); //Todo ??? richtige message - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Animation); //sends the client in WaitState @@ -607,7 +625,7 @@ public void testWaitToAnimation() { //tests if a powerCard is played,that the client goes into Animation clientGameLogic.receive(playCardTurbo); //Todo ??? richtige message - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Animation); //sends the client in WaitState @@ -616,7 +634,7 @@ public void testWaitToAnimation() { //tests if a die is rolled,that the client goes into Animation clientGameLogic.receive(dice); //Todo ??? richtige message - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Animation); } @@ -627,7 +645,7 @@ public void testWaitToAnimation() { public void testWaitToTurn() { //sends client in gameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Waiting gameStateMachine.gotoState(waiting); @@ -637,7 +655,7 @@ public void testWaitToTurn() { clientGameLogic.receive(activePlayer); //tests if the client is in GameState - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //tests if Client is in Turn assertTrue(gameStateMachine.getState() instanceof Turn); @@ -714,7 +732,7 @@ public void testPowerCardSubStatesToRollDice() { public void testStayInPlayPowerCard() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -727,7 +745,7 @@ public void testStayInPlayPowerCard() { //Todo send messages to test to stay in playPowerCard //tests if the client is in PlayPowerCard - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof PlayPowerCard); } @@ -739,7 +757,7 @@ public void testStayInPlayPowerCard() { public void testPlayPowerCardToRollDice() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -753,7 +771,7 @@ public void testPlayPowerCardToRollDice() { //Todo test other messages, that there is no state change //tests if the client is in RollDice - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof RollDice); } @@ -839,7 +857,7 @@ public void testChoosePowerCardToRollDice() { //TODO //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -856,7 +874,7 @@ public void testChoosePowerCardToRollDice() { //todo send the messages, to force a state change to rollDice //tests if the turnStateMachine is in RollDice - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof RollDice); } @@ -868,7 +886,7 @@ public void testChoosePowerCardToRollDice() { public void testChoosePowerCardToSwap() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -885,7 +903,7 @@ public void testChoosePowerCardToSwap() { //todo send the messages, to force a state change to swap //tests if the client is in Swap - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof PowerCard); assertTrue(powerCardStateMachine.getState() instanceof Swap); @@ -898,7 +916,7 @@ public void testChoosePowerCardToSwap() { public void testChoosePowerCardToShield() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -915,7 +933,7 @@ public void testChoosePowerCardToShield() { //todo send the messages, to force a state change to shield //tests if the client is in Shield - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof PowerCard); assertTrue(powerCardStateMachine.getState() instanceof Shield); @@ -928,7 +946,7 @@ public void testChoosePowerCardToShield() { public void testStayInShield() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -945,7 +963,7 @@ public void testStayInShield() { //todo send the messages, which dont force a statechange //tests if the client is in PlayPowerCard - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof PowerCard); assertTrue(powerCardStateMachine.getState() instanceof PlayPowerCard); @@ -958,7 +976,7 @@ public void testStayInShield() { public void testShieldToPowerCardEndState() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -976,7 +994,7 @@ public void testShieldToPowerCardEndState() { //todo send the message to force the statechange //tests if the client is in PlayPowerCard - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof PlayPowerCard); } @@ -988,7 +1006,7 @@ public void testShieldToPowerCardEndState() { public void testSwapToPowerCardEndState() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -1005,7 +1023,7 @@ public void testSwapToPowerCardEndState() { //todo send the message to force the statechange //tests if the client is in PlayPowerCard - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof PlayPowerCard); } @@ -1017,7 +1035,7 @@ public void testSwapToPowerCardEndState() { public void testNoPieceInWaitingPiece() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -1036,7 +1054,7 @@ public void testNoPieceInWaitingPiece() { //sends to the clientGameLogic the message WaitPiece clientGameLogic.receive(waitPiece); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof ChoosePiece); assertTrue(choosePieceStateMachine.getState() instanceof WaitingPiece); @@ -1049,7 +1067,7 @@ public void testNoPieceInWaitingPiece() { public void testNoPieceInSelectedPiece() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -1068,7 +1086,7 @@ public void testNoPieceInSelectedPiece() { //sends to the clientGameLogic the message SelectPiece clientGameLogic.receive(selectPiece); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof ChoosePiece); assertTrue(choosePieceStateMachine.getState() instanceof SelectPiece); @@ -1081,7 +1099,7 @@ public void testNoPieceInSelectedPiece() { public void testNoPieceInStartPiece() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -1100,7 +1118,7 @@ public void testNoPieceInStartPiece() { //sends to the clientGameLogic the message StartPiece clientGameLogic.receive(startPiece); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof ChoosePiece); assertTrue(choosePieceStateMachine.getState() instanceof StartPiece); @@ -1113,7 +1131,7 @@ public void testNoPieceInStartPiece() { public void testNoPieceInWait() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -1132,7 +1150,7 @@ public void testNoPieceInWait() { //sends to the clientGameLogic the message NoTurn clientGameLogic.receive(noTurn); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof Waiting); } @@ -1144,7 +1162,7 @@ public void testNoPieceInWait() { public void testStayInWaitingPiece() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -1160,7 +1178,7 @@ public void testStayInWaitingPiece() { //TODO send all sever-messages except ... to the clientGameLogic to test there are no state change - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof ChoosePiece); assertTrue(choosePieceStateMachine.getState() instanceof WaitingPiece); @@ -1173,7 +1191,7 @@ public void testStayInWaitingPiece() { public void testWaitingPieceInChoosePieceEndState() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -1189,7 +1207,7 @@ public void testWaitingPieceInChoosePieceEndState() { //Todo send the message to the clientGameLogic to force a state change - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof MovePiece); } @@ -1201,7 +1219,7 @@ public void testWaitingPieceInChoosePieceEndState() { public void testStayInSelectedPiece() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -1217,7 +1235,7 @@ public void testStayInSelectedPiece() { //Todo send all server messages which dont force a state change here - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof ChoosePiece); assertTrue(choosePieceStateMachine.getState() instanceof SelectPiece); @@ -1230,7 +1248,7 @@ public void testStayInSelectedPiece() { public void testSelectedPieceInChoosePieceEndState() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -1246,7 +1264,7 @@ public void testSelectedPieceInChoosePieceEndState() { //Todo send the message which force a state change - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof MovePiece); } @@ -1258,7 +1276,7 @@ public void testSelectedPieceInChoosePieceEndState() { public void testStayInStartPiece() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -1274,7 +1292,7 @@ public void testStayInStartPiece() { //todo send all messages which dont force a state change - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof ChoosePiece); assertTrue(choosePieceStateMachine.getState() instanceof StartPiece); @@ -1287,7 +1305,7 @@ public void testStayInStartPiece() { public void testStartPieceToChoosePieceEndState() { //sends the ClientAutomaton in GameState clientAutomaton.gotoState(gameState); - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); //sends the gameStateMachine in the Turn gameStateMachine.gotoState(turn); @@ -1303,7 +1321,7 @@ public void testStartPieceToChoosePieceEndState() { //Todo send the message which force a state change - assertTrue(clientAutomaton.getState() instanceof GameState); + assertTrue(clientAutomaton.getState() instanceof Game); assertTrue(gameStateMachine.getState() instanceof Turn); assertTrue(turnStateMachine.getState() instanceof MovePiece); } From 2e76c41d3a77247f6f727bd9b874d3aa499f851b Mon Sep 17 00:00:00 2001 From: Daniel Grigencha Date: Tue, 26 Nov 2024 18:02:19 +0100 Subject: [PATCH 2/8] added new 'Disconnect' client message and updated 'Player' and 'Game' classes --- Projekte/.run/MdgaApp.run.xml | 17 - .../src/main/java/pp/mdga/game/Game.java | 473 ++++++++---------- .../src/main/java/pp/mdga/game/Player.java | 46 +- .../pp/mdga/message/client/Disconnected.java | 34 ++ .../message/server/{Dice.java => Die.java} | 14 +- .../src/main/java/pp/mdga/server/Game.java | 7 - 6 files changed, 263 insertions(+), 328 deletions(-) delete mode 100644 Projekte/.run/MdgaApp.run.xml create mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/message/client/Disconnected.java rename Projekte/mdga/model/src/main/java/pp/mdga/message/server/{Dice.java => Die.java} (86%) delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/server/Game.java diff --git a/Projekte/.run/MdgaApp.run.xml b/Projekte/.run/MdgaApp.run.xml deleted file mode 100644 index 82e2f2b6..00000000 --- a/Projekte/.run/MdgaApp.run.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - \ No newline at end of file diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/game/Game.java b/Projekte/mdga/model/src/main/java/pp/mdga/game/Game.java index 87669c71..39b5984d 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/game/Game.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/game/Game.java @@ -8,29 +8,29 @@ * The game state is updated by the game logic. */ public class Game { + /** + * Constants. + */ + public static final int MAX_PLAYERS = 4; + public static final int AMOUNT_OF_TURBO_CARDS = 16; + public static final int AMOUNT_OF_SHIELD_AND_SWAP_CARDS = 12; + + /** + * Attributes. + */ private int diceModifier = 1; private int diceEyes; - private Map players = new EnumMap<>(Color.class); + private Map players = new HashMap<>(); private Statistic gameStatistics; private List drawPile; private List discardPile = new ArrayList<>(); private Board board; private Color activeColor; - private List order; - private final ArrayList playerList = new ArrayList<>(4); - private final ArrayList observers = new ArrayList<>(); - private Player startPlayer; - private Boolean gameHasStarted = false; - private Boolean playerHasDisconnected = false; - private Boolean gameIsInterrupted = false; - private Boolean allRanked = false; - private Boolean movablePieces = false; - - private Boolean allReady = false; - - private static final int AMOUNT_OF_TURBO_CARDS = 16; - private static final int AMOUNT_OF_SHIELD_AND_SWAP_CARDS = 12; + private Player currentPlayer; + private boolean allRanked = false; + private boolean movablePieces = false; + private boolean allReady = false; /** * This constructor creates a new Game object. @@ -48,185 +48,23 @@ public Game() { board = new Board(); } - /** - * This method returns the dice modifier. - * - * @return the dice modifier - */ - public int getDiceModifier() { - return diceModifier; - } - - /** - * This method sets the dice modifier. - * - * @param diceModifier the new dice modifier - */ - public void setDiceModifier(int diceModifier) { - this.diceModifier = diceModifier; - } - - /** - * This method returns the dice eyes. - * - * @return the dice eyes - */ - public int getDiceEyes() { - return diceEyes; - } - - /** - * This method sets the dice eyes. - * - * @param diceEyes the new dice eyes - */ - public void setDiceEyes(int diceEyes) { - this.diceEyes = diceEyes; - } - - /** - * This method returns the players. - * - * @return the players - */ - public Map getPlayers() { - return players; - } - - /** - * This method sets the players. - * - * @param players the new players - */ - public void setPlayers(Map players) { - this.players = players; - } - - /** - * This method returns the game statistics. - * - * @return the game statistics - */ - public Statistic getGameStatistics() { - return gameStatistics; - } - - /** - * This method sets the game statistics. - * - * @param gameStatistics the new game statistics - */ - public void setGameStatistics(Statistic gameStatistics) { - this.gameStatistics = gameStatistics; - } - - /** - * This method returns the draw pile. - * - * @return the draw pile - */ - public List getDrawPile() { - return drawPile; - } - - /** - * This method sets the draw pile. - * - * @param drawPile the new draw pile - */ - public void setDrawPile(List drawPile) { - this.drawPile = drawPile; - } - - /** - * This method returns the discard pile. - * - * @return the discard pile - */ - public List getDiscardPile() { - return discardPile; - } - - /** - * This method sets the discard pile. - * - * @param discardPile the new discard pile - */ - public void setDiscardPile(List discardPile) { - this.discardPile = discardPile; - } - - /** - * This method returns the board. - * - * @return the board - */ - public Board getBoard() { - return board; - } - - /** - * This method sets the board. - * - * @param board the new board - */ - public void setBoard(Board board) { - this.board = board; - } - - /** - * This method returns the active color. - * - * @return the active color - */ - public Color getActiveColor() { - return activeColor; - } - - /** - * This method sets the active color. - * - * @param activeColor the new active color - */ - public void setActiveColor(Color activeColor) { - this.activeColor = activeColor; - } - - /** - * This method returns the order of the players. - * - * @return the order of the players - */ - public List getOrder() { - return order; - } - - /** - * This method sets the order of the players. - * - * @param order the new order of the players - */ - public void setOrder(List order) { - this.order = order; - } - /** * This method adds a player to the game. * - * @param color the color of the player + * @param id the id of the player * @param player the player to be added */ - public void addPlayer(Color color, Player player) { - players.put(color, player); + public void addPlayer(int id, Player player) { + players.put(id, player); } /** * This method removes a player from the game. * - * @param color the color of the player + * @param id the color of the player */ - public void removePlayer(Color color) { - players.remove(color); + public void removePlayer(int id) { + players.remove(id); } /** @@ -248,49 +86,129 @@ public void removeObserver(Observer observer) { } /** - * This method returns the game has started. * - * @return the game has started + * @param id + * @param active */ - public Boolean getGameHasStarted() { - return gameHasStarted; + public void updatePlayerActiveState(int id, boolean active) { + this.players.get(id).setActive(active); } /** - * This method sets the game has started. + * This method will be used to return the player which has the given id parameter. * - * @param gameHasStarted the new game has started + * @param id as the unique id of a player as an Integer. + * @return the player with the given id as a Player object. */ - public void setGameHasStarted(Boolean gameHasStarted) { - this.gameHasStarted = gameHasStarted; + public Player getPlayerById(int id) { + return this.players.get(id); + } + + public Player getCurrentPlayer(Color color) { + for (Map.Entry entry : this.players.entrySet()) { + if (entry.getValue().getColor() == color) { + return entry.getValue(); + } + } + + return null; } /** - * This method returns the player has disconnected. + * This method will be used to return the number of active players of this game. * - * @return the player has disconnected + * @return activePlayers as an Integer. */ - public Boolean playerHasDisconnected() { - return playerHasDisconnected; + public int getNumberOfActivePlayers() { + int activePlayers = 0; + for (Map.Entry entry : this.players.entrySet()) { + if (entry.getValue().isActive()) { + activePlayers++; + } + } + + return activePlayers; } /** - * This method sets the game interruption state. - * - * @param gameIsInterrupted the new game interruption state + * This method notifies the observers. */ - public void setGameIsInterrupted(Boolean gameIsInterrupted) { - this.gameIsInterrupted = gameIsInterrupted; - if (Boolean.FALSE.equals(gameIsInterrupted)) notifyObservers(); + public void notifyObservers() { + for (Observer observer : new ArrayList<>(observers)) { + observer.update(); + } } /** - * This method returns whether the game is interrupted. + * This method returns the dice modifier. * - * @return true if the game is interrupted, false otherwise + * @return the dice modifier */ - public Boolean gameIsInterrupted() { - return gameIsInterrupted; + public int getDiceModifier() { + return diceModifier; + } + + /** + * This method returns the dice eyes. + * + * @return the dice eyes + */ + public int getDiceEyes() { + return diceEyes; + } + + /** + * This method returns the players. + * + * @return the players + */ + public Map getPlayers() { + return players; + } + + /** + * This method returns the game statistics. + * + * @return the game statistics + */ + public Statistic getGameStatistics() { + return gameStatistics; + } + + /** + * This method returns the draw pile. + * + * @return the draw pile + */ + public List getDrawPile() { + return drawPile; + } + + /** + * This method returns the discard pile. + * + * @return the discard pile + */ + public List getDiscardPile() { + return discardPile; + } + + /** + * This method returns the board. + * + * @return the board + */ + public Board getBoard() { + return board; + } + + /** + * This method returns the active color. + * + * @return the active color + */ + public Color getActiveColor() { + return activeColor; } /** @@ -302,6 +220,78 @@ public Boolean getMovablePieces() { return movablePieces; } + /** + * This method sets the dice modifier. + * + * @param diceModifier the new dice modifier + */ + public void setDiceModifier(int diceModifier) { + this.diceModifier = diceModifier; + } + + /** + * This method sets the dice eyes. + * + * @param diceEyes the new dice eyes + */ + public void setDiceEyes(int diceEyes) { + this.diceEyes = diceEyes; + } + + /** + * This method sets the players. + * + * @param players the new players + */ + public void setPlayers(Map players) { + this.players = players; + } + + /** + * This method sets the game statistics. + * + * @param gameStatistics the new game statistics + */ + public void setGameStatistics(Statistic gameStatistics) { + this.gameStatistics = gameStatistics; + } + + /** + * This method sets the draw pile. + * + * @param drawPile the new draw pile + */ + public void setDrawPile(List drawPile) { + this.drawPile = drawPile; + } + + /** + * This method sets the discard pile. + * + * @param discardPile the new discard pile + */ + public void setDiscardPile(List discardPile) { + this.discardPile = discardPile; + } + + /** + * This method sets the board. + * + * @param board the new board + */ + public void setBoard(Board board) { + this.board = board; + } + + /** + * This method sets the active color. + * + * @param activeColor the new active color + */ + public void setActiveColor(Color activeColor) { + this.activeColor = activeColor; + } + /** * This method sets the game interruption state. * @@ -312,16 +302,6 @@ public void setMovablePieces(Boolean movablePieces) { if (Boolean.FALSE.equals(movablePieces)) notifyObservers(); } - /** - * This method sets the player has disconnected. - * - * @param playerHasDisconnected the new player has disconnected - */ - public void setPlayerHasDisconnected(Boolean playerHasDisconnected) { - this.playerHasDisconnected = playerHasDisconnected; - if (Boolean.TRUE.equals(playerHasDisconnected)) notifyObservers(); - } - /** * This method returns whether all players have ranked. * @@ -341,24 +321,6 @@ public void setAllRanked(Boolean allRanked) { if (Boolean.TRUE.equals(allRanked)) notifyObservers(); } - /** - * This method returns the start player. - * - * @return the start player - */ - public Player getStartPlayer() { - return startPlayer; - } - - /** - * This method sets the start player. - * - * @param startPlayer the new start player - */ - public void setStartPlayer(Player startPlayer) { - this.startPlayer = startPlayer; - } - /** * This method returns the all ready state. * @@ -371,53 +333,10 @@ public Boolean allReady() { /** * This method sets the all ready state. * - * @param allReady the new all ready state + * @param allReady the new all-ready state */ public void setAllReady(Boolean allReady) { this.allReady = allReady; if (Boolean.TRUE.equals(allReady)) notifyObservers(); } - - /** - * This method notifies the observers. - */ - public void notifyObservers() { - for (Observer observer : new ArrayList<>(observers)) { - observer.update(); - } - } - - /** - * This method returns the piece through its identifier. - * - * @param identifier the identifier of the piece - * @return the piece - */ - public Piece getPieceThroughIdentifier(String identifier) { - String[] parts = identifier.split("-"); - Color color = Color.valueOf(parts[0]); - int index = Integer.parseInt(parts[1]); - return board.getPlayerData().get(color).getPieces()[index]; - } - - public ArrayList getPlayerList() { - return playerList; - } - - public void addPlayerToList(Player player) { - playerList.add(player); - } - - public void removePlayerFromList(Player player) { - playerList.remove(player); - } - - public Player getPlayerFromList(String name) { - for (Player player : playerList) { - if (player.getName().equals(name)) { - return player; - } - } - return null; - } } diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/game/Player.java b/Projekte/mdga/model/src/main/java/pp/mdga/game/Player.java index 7371cf7b..1038bb6b 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/game/Player.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/game/Player.java @@ -10,18 +10,9 @@ public class Player { private String name; private Statistic playerStatistic; private ArrayList handCards; - private final int id; private Color color; private boolean isReady; - - /** - * This constructor constructs a new Player object - */ - public Player(int id) { - this.id = id; - playerStatistic = new Statistic(); - handCards = new ArrayList<>(); - } + private boolean active = true; /** * This constructor constructs a new Player object @@ -32,7 +23,13 @@ public Player(String name) { this.name = name; playerStatistic = new Statistic(); handCards = new ArrayList<>(); - id = 0; + } + + /** + * Constructor. + */ + public Player() { + super(""); } /** @@ -94,15 +91,6 @@ public BonusCard removeHandCard(BonusCard card) { return cardToRemove; } - /** - * Returns the id of the connection to the client represented by this player. - * - * @return the id - */ - public int getId() { - return id; - } - /** * This method returns the color of the player * @@ -130,6 +118,15 @@ public boolean isReady() { return isReady; } + /** + * This method will be used to return active attribute of Player class. + * + * @return active as a Boolean. + */ + public boolean isActive() { + return this.active; + } + /** * This method sets the player to ready * @@ -138,4 +135,13 @@ public boolean isReady() { public void setReady(boolean ready) { isReady = ready; } + + /** + * This method will be used to set active attribute of Player class to the given active parameter. + * + * @param active as the new active value as a Boolean. + */ + public void setActive(boolean active) { + this.active = active; + } } diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/message/client/Disconnected.java b/Projekte/mdga/model/src/main/java/pp/mdga/message/client/Disconnected.java new file mode 100644 index 00000000..0b901ff7 --- /dev/null +++ b/Projekte/mdga/model/src/main/java/pp/mdga/message/client/Disconnected.java @@ -0,0 +1,34 @@ +package pp.mdga.message.client; + +import com.jme3.network.serializing.Serializable; + +/** + * + */ +@Serializable +public class Disconnected extends ClientMessage { + public Disconnected() { + super(); + } + + /** + * Returns a string representation of this message. + * + * @return a string representation of this message + */ + @Override + public String toString() { + return "ClientStartGame{}"; + } + + /** + * Accepts a visitor to process this message. + * + * @param interpreter the visitor to process this message + * @param from the connection ID from which the message was received + */ + @Override + public void accept(ClientInterpreter interpreter, int from) { + interpreter.received(this, from); + } +} diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/message/server/Dice.java b/Projekte/mdga/model/src/main/java/pp/mdga/message/server/Die.java similarity index 86% rename from Projekte/mdga/model/src/main/java/pp/mdga/message/server/Dice.java rename to Projekte/mdga/model/src/main/java/pp/mdga/message/server/Die.java index 6b4bc1ee..607dea38 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/message/server/Dice.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/message/server/Die.java @@ -8,7 +8,7 @@ * A message sent by the server to the client to inform about the dice roll. */ @Serializable -public class Dice extends ServerMessage { +public class Die extends ServerMessage { /** * The eye of the dice */ @@ -25,7 +25,7 @@ public class Dice extends ServerMessage { * @param diceEye the eye of the dice * @param moveablePieces the pieces that can be moved */ - public Dice(int diceEye, List moveablePieces) { + public Die(int diceEye, List moveablePieces) { super(); this.diceEye = diceEye; this.moveablePieces = moveablePieces; @@ -34,7 +34,7 @@ public Dice(int diceEye, List moveablePieces) { /** * Default constructor for serialization purposes. */ - private Dice() { + private Die() { diceEye = 0; moveablePieces = null; } @@ -45,8 +45,8 @@ private Dice() { * @param diceEye the eye of the dice * @return a new Dice object */ - public static Dice inactivePlayer(int diceEye) { - return new Dice(diceEye, null); + public static Die inactivePlayer(int diceEye) { + return new Die(diceEye, null); } /** @@ -56,8 +56,8 @@ public static Dice inactivePlayer(int diceEye) { * @param moveablePieces the pieces that can be moved * @return a new Dice object */ - public static Dice activePlayer(int diceEye, List moveablePieces) { - return new Dice(diceEye, moveablePieces); + public static Die activePlayer(int diceEye, List moveablePieces) { + return new Die(diceEye, moveablePieces); } /** diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/server/Game.java b/Projekte/mdga/model/src/main/java/pp/mdga/server/Game.java deleted file mode 100644 index ad3f5897..00000000 --- a/Projekte/mdga/model/src/main/java/pp/mdga/server/Game.java +++ /dev/null @@ -1,7 +0,0 @@ -package pp.mdga.server; - -public class Game extends ServerState { - public Game(ServerGameLogic logic) { - super(logic); - } -} From 5c2df2430d02eabb7fd91cfbfa2666704f3ffab9 Mon Sep 17 00:00:00 2001 From: Hanno Fleischer Date: Tue, 26 Nov 2024 18:04:56 +0100 Subject: [PATCH 3/8] reworked the client state machine and removed the seperate classes for the statemachines these machines are now directly included in the parent states --- Projekte/.run/MdgaApp.run.xml | 2 + .../main/java/pp/mdga/client/Ceremony.java | 9 +- .../java/pp/mdga/client/ClientAutomaton.java | 24 --- .../java/pp/mdga/client/ClientGameLogic.java | 52 +++++- .../main/java/pp/mdga/client/ClientState.java | 149 +++++++++++++++++- .../pp/mdga/client/ClientStateMachine.java | 44 ------ .../src/main/java/pp/mdga/client/Dialogs.java | 42 ++++- .../src/main/java/pp/mdga/client/Game.java | 8 - .../main/java/pp/mdga/client/Settings.java | 8 - .../ceremonyState/CeremonyStateMachine.java | 18 --- .../dialogState/DialogsStateMachine.java | 16 -- .../client/dialogState/NetworkDialog.java | 52 ++++++ .../mdga/client/dialogState/StartDialog.java | 27 ++++ .../gameState/DetermineStartPlayer.java | 7 - .../client/gameState/GameStateMachine.java | 16 -- .../java/pp/mdga/client/gameState/Turn.java | 7 - .../DetermineStartPlayerStateMachine.java | 17 -- .../RollRankingDice.java | 1 - .../gameState/turnState/ChoosePiece.java | 8 - .../client/gameState/turnState/PowerCard.java | 7 - .../gameState/turnState/TurnStateMachine.java | 16 -- .../ChoosePieceStateMachine.java | 16 -- .../powerCardState/PowerCardStateMachine.java | 16 -- .../settingsState/SettingsStateMachine.java | 16 -- .../client/clientState/ClientStateTest.java | 4 - 25 files changed, 311 insertions(+), 271 deletions(-) delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/ClientAutomaton.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/ClientStateMachine.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/ceremonyState/CeremonyStateMachine.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/dialogState/DialogsStateMachine.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/GameStateMachine.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/determineStartPlayerState/DetermineStartPlayerStateMachine.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/TurnStateMachine.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/choosePieceState/ChoosePieceStateMachine.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/gameState/turnState/powerCardState/PowerCardStateMachine.java delete mode 100644 Projekte/mdga/model/src/main/java/pp/mdga/client/settingsState/SettingsStateMachine.java diff --git a/Projekte/.run/MdgaApp.run.xml b/Projekte/.run/MdgaApp.run.xml index 82e2f2b6..02de5600 100644 --- a/Projekte/.run/MdgaApp.run.xml +++ b/Projekte/.run/MdgaApp.run.xml @@ -1,5 +1,7 @@ +