From 569ce39d2ac1e39a48b7cae2b637609d36de06cf Mon Sep 17 00:00:00 2001 From: Benjamin Feyer Date: Mon, 9 Dec 2024 18:04:24 +0100 Subject: [PATCH 1/2] bug Fixed --- .../game/turn/choosepiece/ChoosePieceAutomatonState.java | 1 + 1 file changed, 1 insertion(+) diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/server/automaton/game/turn/choosepiece/ChoosePieceAutomatonState.java b/Projekte/mdga/model/src/main/java/pp/mdga/server/automaton/game/turn/choosepiece/ChoosePieceAutomatonState.java index 3b0e121c..b1fec104 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/server/automaton/game/turn/choosepiece/ChoosePieceAutomatonState.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/server/automaton/game/turn/choosepiece/ChoosePieceAutomatonState.java @@ -183,6 +183,7 @@ else if (piece.getState() == PieceState.ACTIVE) { if (targetIdx >= 40) { int stepsToHome = 39 - normPieceIdx; int restMovement = steps - stepsToHome - 1; + if(restMovement>=3) return false; System.out.println("Server: ChoosePieceStateMachine: canPieceMoveInHome: stepsToHome:" + stepsToHome + "restMovement:" + restMovement + "jumpOver:" + jumpOver(restMovement, 0, true) + "canPieceMoveInHome: return:" + true); return !jumpOver(restMovement, 0, true); } From 0be25ecb29275a884d5c02a83704fa72a21193a4 Mon Sep 17 00:00:00 2001 From: Fleischer Hanno Date: Mon, 9 Dec 2024 18:11:21 +0100 Subject: [PATCH 2/2] made Intro state work with more PowerCards on the hand --- .../gamestate/determinestartplayerstate/Intro.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/Projekte/mdga/model/src/main/java/pp/mdga/client/gamestate/determinestartplayerstate/Intro.java b/Projekte/mdga/model/src/main/java/pp/mdga/client/gamestate/determinestartplayerstate/Intro.java index 26ea3d3d..f3642f78 100644 --- a/Projekte/mdga/model/src/main/java/pp/mdga/client/gamestate/determinestartplayerstate/Intro.java +++ b/Projekte/mdga/model/src/main/java/pp/mdga/client/gamestate/determinestartplayerstate/Intro.java @@ -4,6 +4,7 @@ import pp.mdga.client.ClientState; import pp.mdga.client.gamestate.DetermineStartPlayerState; import pp.mdga.game.Player; +import pp.mdga.game.card.PowerCard; import pp.mdga.message.client.AnimationEndMessage; import pp.mdga.notification.AcquireCardNotification; import pp.mdga.notification.ActivePlayerNotification; @@ -48,10 +49,12 @@ public void enter() { logic.getGame().getBoard().getInfield()[entry.getValue().getStartNodeIndex()].setOccupant(entry.getValue().getPieces()[0]); entry.getValue().getWaitingArea()[0] = null; animationCounter++; - if(entry.getKey() == logic.getOwnPlayerId()){ - logic.addNotification(new AcquireCardNotification(entry.getValue().getHandCards().get(0).getCard())); - } else { - logic.addNotification(new DrawCardNotification(entry.getValue().getColor(), entry.getValue().getHandCards().get(0).getCard())); + for (PowerCard card : entry.getValue().getHandCards()){ + if(entry.getKey() == logic.getOwnPlayerId()){ + logic.addNotification(new AcquireCardNotification(card.getCard())); + } else { + logic.addNotification(new DrawCardNotification(entry.getValue().getColor(), card.getCard())); + } } } }