-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMove.java
More file actions
39 lines (35 loc) · 1.26 KB
/
Move.java
File metadata and controls
39 lines (35 loc) · 1.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
public class Move {
public final int fromRow, fromCol, toRow, toCol;
public PieceType promotion;
public boolean isEnPassant;
public Move(int fromRow, int fromCol, int toRow, int toCol) {
this.fromRow = fromRow;
this.fromCol = fromCol;
this.toRow = toRow;
this.toCol = toCol;
this.promotion = null;
this.isEnPassant = false;
}
public Move(int fromRow, int fromCol, int toRow, int toCol, PieceType promotion) {
this.fromRow = fromRow;
this.fromCol = fromCol;
this.toRow = toRow;
this.toCol = toCol;
this.promotion = promotion;
this.isEnPassant = false;
}
public Move(int fromRow, int fromCol, int toRow, int toCol, boolean isEnPassant) {
this.fromRow = fromRow;
this.fromCol = fromCol;
this.toRow = toRow;
this.toCol = toCol;
this.promotion = null;
this.isEnPassant = isEnPassant;
}
@Override
public String toString() {
return "Move from (" + fromRow + "," + fromCol + ") to (" + toRow + "," + toCol + ")" +
(promotion != null ? " with promotion to " + promotion : "") +
(isEnPassant ? " (en passant)" : "");
}
}