fixed ChoosePowerCardState

This commit is contained in:
Cedric Beck
2024-12-09 18:45:00 +01:00
parent f8179f191f
commit afec74416f
3 changed files with 12 additions and 5 deletions

View File

@@ -87,7 +87,7 @@ public Game() {
gameStatistics = new Statistic();
initializeDrawPile();
board = new Board();
die = new Die(1,6,6,6,6);
die = new Die(1,2,3,4,5);
}
/**

View File

@@ -1,6 +1,8 @@
package pp.mdga.server.automaton.game.turn.powercard;
import pp.mdga.game.BonusCard;
import pp.mdga.game.card.HiddenCard;
import pp.mdga.game.card.PowerCard;
import pp.mdga.game.card.ShieldCard;
import pp.mdga.game.card.SwapCard;
import pp.mdga.game.card.TurboCard;
@@ -12,6 +14,8 @@
import pp.mdga.server.automaton.game.turn.PowerCardState;
import pp.mdga.visitor.Visitor;
import java.util.List;
public class ChoosePowerCardState extends PowerCardAutomatonState implements Visitor {
private static final System.Logger LOGGER = System.getLogger(ChoosePowerCardState.class.getName());
@@ -44,7 +48,10 @@ public void exit() {
@Override
public void received(SelectCardMessage msg, int from) {
if (this.powerCardAutomaton.getVisitor().getCards().contains(msg.getCard())) {
BonusCard receivedCard = msg.getCard().getCard();
List<BonusCard> acceptedCards = powerCardAutomaton.getVisitor().getCards().stream().map(PowerCard::getCard).toList();
if (acceptedCards.contains(receivedCard)) {
this.powerCardAutomaton.setSelectedCard(msg.getCard());
msg.getCard().accept(this);
} else {

View File

@@ -43,7 +43,7 @@ public ServerCardVisitor(ServerGameLogic logic) {
public void visit(TurboCard card) {
for (Piece piece : this.logic.getGame().getActivePlayer().getPieces()) {
if (piece.getState() == PieceState.ACTIVE) {
if (!this.cards.contains(card)) {
if (!this.cards.stream().map(PowerCard::getCard).toList().contains(card.getCard())) {
this.cards.add(card);
}
}
@@ -82,7 +82,7 @@ public void visit(SwapCard card) {
if (!possibleOtherPieces.isEmpty() && !possibleOwnPieces.isEmpty()) {
this.swapOwnPieces.addAll(possibleOwnPieces);
this.swapOtherPieces.addAll(possibleOtherPieces);
if (!this.cards.contains(card)) {
if (!this.cards.stream().map(PowerCard::getCard).toList().contains(card.getCard())) {
this.cards.add(card);
}
}
@@ -100,7 +100,7 @@ public void visit(ShieldCard card) {
if (!this.shieldPieces.contains(piece)) {
this.shieldPieces.add(piece);
}
if (!this.cards.contains(card)) {
if (!this.cards.stream().map(PowerCard::getCard).toList().contains(card.getCard())) {
this.cards.add(card);
}
}