add playMove
This commit is contained in:
parent
23758f25e5
commit
acfd893135
|
|
@ -411,14 +411,41 @@ public class Board {
|
||||||
//Deep copy highlighted positions
|
//Deep copy highlighted positions
|
||||||
this.highlightedPositions = new ArrayList<>();
|
this.highlightedPositions = new ArrayList<>();
|
||||||
for (int[] pos : highlightedPositions) {
|
for (int[] pos : highlightedPositions) {
|
||||||
|
this.highlightedPositions.add(new int[]{pos[0], pos[1]});
|
||||||
//TO BE DONE
|
}
|
||||||
|
//Deep copy of board and pieces
|
||||||
|
this.board = new Piece[col][line];
|
||||||
|
for (int y = 0; y < line; y++) {
|
||||||
|
for (int x = 0; x < col; x++) {
|
||||||
|
Piece p = board.board[y][x];
|
||||||
|
if (p != null) {
|
||||||
|
this.board[y][x] = new Piece(p.isWhite(), p.getType(), p.getX(), p.getY());
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void playMove(Move move) {
|
public void playMove(Move move) {
|
||||||
//TODO
|
//get current piece coordinate
|
||||||
|
int fromX = move.piece.getX();
|
||||||
|
int fromY = move.piece.getY();
|
||||||
|
//Remove the piece from the original position
|
||||||
|
board[fromX][fromY] = null;
|
||||||
|
//Update the internal position of the piece
|
||||||
|
move.piece.setX(move.toX);
|
||||||
|
move.piece.setY(move.toY);
|
||||||
|
//place the piece at the new position
|
||||||
|
board[move.toY][move.toX] = move.piece;
|
||||||
|
|
||||||
|
//end turn logic
|
||||||
|
this.turnWhite = !this.turnWhite;
|
||||||
|
this.turnNumber++;
|
||||||
|
|
||||||
|
//Clear selection/highlight
|
||||||
|
this.selectedPosition = null;
|
||||||
|
this.highlightedPositions.clear();
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue