added flag

This commit is contained in:
Benjamin Feyer
2024-12-10 14:05:43 +01:00
parent 888b52f314
commit 11fa303f1b

View File

@@ -18,6 +18,7 @@ public class SwapState extends PowerCardStates {
private final System.Logger LOGGER = System.getLogger(this.getClass().getName()); private final System.Logger LOGGER = System.getLogger(this.getClass().getName());
private final PowerCardState parent; private final PowerCardState parent;
private boolean hasSended = false;
private ArrayList<Piece> possibleOwnPieces; private ArrayList<Piece> possibleOwnPieces;
private ArrayList<Piece> possibleEnemyPieces; private ArrayList<Piece> possibleEnemyPieces;
@@ -33,6 +34,7 @@ public SwapState(ClientState parent, ClientGameLogic logic) {
@Override @Override
public void enter() { public void enter() {
hasSended = false;
LOGGER.log(System.Logger.Level.INFO, "Entering SwapState"); LOGGER.log(System.Logger.Level.INFO, "Entering SwapState");
ArrayList<UUID> ownPieces = new ArrayList<>(possibleOwnPieces.stream().map(Piece::getUuid).toList()); ArrayList<UUID> ownPieces = new ArrayList<>(possibleOwnPieces.stream().map(Piece::getUuid).toList());
ArrayList<UUID> enemyPieces = new ArrayList<>(possibleEnemyPieces.stream().map(Piece::getUuid).toList()); ArrayList<UUID> enemyPieces = new ArrayList<>(possibleEnemyPieces.stream().map(Piece::getUuid).toList());
@@ -41,6 +43,7 @@ public void enter() {
@Override @Override
public void exit() { public void exit() {
hasSended = false;
LOGGER.log(System.Logger.Level.INFO, "Exiting SwapState"); LOGGER.log(System.Logger.Level.INFO, "Exiting SwapState");
possibleOwnPieces = null; possibleOwnPieces = null;
possibleEnemyPieces = null; possibleEnemyPieces = null;
@@ -66,7 +69,10 @@ public void selectPiece(Piece piece){
temp.add(selectedOwnPiece); temp.add(selectedOwnPiece);
temp.add(selectedEnemyPiece); temp.add(selectedEnemyPiece);
System.out.println("Client : Swap: temp: "+temp.get(0)+temp.get(1)); System.out.println("Client : Swap: temp: "+temp.get(0)+temp.get(1));
logic.send(new SelectedPiecesMessage(temp)); if(!hasSended){
hasSended = true;
logic.send(new SelectedPiecesMessage(temp));
}
} }
} }