From cc72b82be931236d06585b5704f37e7683d0ef7f Mon Sep 17 00:00:00 2001 From: Cedric Beck Date: Mon, 9 Dec 2024 02:18:30 +0100 Subject: [PATCH] added shield Messages --- .../gamestate/turnstate/powercardstate/ShieldState.java | 7 ++++++- .../automaton/game/turn/powercard/ShieldCardState.java | 4 +++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gamestate/turnstate/powercardstate/ShieldState.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gamestate/turnstate/powercardstate/ShieldState.java index 75a99c63..95a53dd0 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/gamestate/turnstate/powercardstate/ShieldState.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gamestate/turnstate/powercardstate/ShieldState.java @@ -5,10 +5,12 @@ import pp.mdga.client.gamestate.turnstate.PowerCardState; import pp.mdga.game.Piece; import pp.mdga.message.client.RequestPlayCardMessage; +import pp.mdga.message.client.SelectedPiecesMessage; import pp.mdga.message.server.PlayCardMessage; import java.lang.System.Logger.Level; import java.util.ArrayList; +import java.util.List; public class ShieldState extends PowerCardStates { @@ -40,7 +42,10 @@ public void setPossiblePieces(ArrayList possiblePieces) { public void selectPiece(Piece piece) { if (possiblePieces.contains(piece)) { - logic.send(RequestPlayCardMessage.requestPlayShield(piece.getUuid())); +// logic.send(RequestPlayCardMessage.requestPlayShield(piece.getUuid())); + ArrayList temp = new ArrayList<>(); + temp.add(piece); + logic.send(new SelectedPiecesMessage(temp)); } else { LOGGER.log(Level.DEBUG, "Invalid piece selected"); } diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/server/automaton/game/turn/powercard/ShieldCardState.java b/Projekte/mdga/model/src/main/java/pp/mdga/server/automaton/game/turn/powercard/ShieldCardState.java index cf7eaff0..c7024e6c 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/server/automaton/game/turn/powercard/ShieldCardState.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/server/automaton/game/turn/powercard/ShieldCardState.java @@ -56,7 +56,9 @@ public void received(SelectedPiecesMessage msg, int from) { piece.setShield(ShieldState.ACTIVE); } } - this.logic.getServerSender().send(this.logic.getGame().getActivePlayerId(), new PlayCardMessage(this.powerCardAutomaton.getSelectedCard(), new ArrayList<>(), this.logic.getGame().getDiceModifier())); + ArrayList temp = new ArrayList<>(); + temp.add(msg.getPieces().get(0)); + this.logic.getServerSender().broadcast(new PlayCardMessage(this.powerCardAutomaton.getSelectedCard(), temp, 1)); this.logic.getGame().getPlayerByColor(this.logic.getGame().getActiveColor()).removeHandCard(this.powerCardAutomaton.getSelectedCard()); this.logic.getGame().getDiscardPile().add(this.powerCardAutomaton.getSelectedCard()); this.powerCardAutomaton.getTurnAutomaton().setCurrentState(this.powerCardAutomaton.getTurnAutomaton().getPlayPowerCardState());