-
Notifications
You must be signed in to change notification settings - Fork 0
/
Turn.java
52 lines (45 loc) · 1.14 KB
/
Turn.java
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
40
41
42
43
44
45
46
47
48
49
50
51
52
import java.util.ArrayList;
import java.util.List;
/**
* A turn in the game.<br>
* A turn is defined by a piece, a starting position, an ending position, and a list of eaten pawns.
*/
public class Turn {
/**
* the piece that was moved in the turn
*/
private final ConcretePiece piece;
/**
* the starting position of the piece
*/
private final Position from;
/**
* the ending position of the piece
*/
private final Position to;
/**
* the list of eaten pawns in the turn (max 4)
*/
private final List<Pawn> eatenPawn;
public Turn(ConcretePiece piece, Position from, Position to) {
this.piece = piece;
this.from = from;
this.to = to;
this.eatenPawn = new ArrayList<>(4); // max 4 pawns can be eaten in a turn
}
public ConcretePiece getPiece() {
return piece;
}
public Position getFrom() {
return from;
}
public Position getTo() {
return to;
}
public List<Pawn> getEatenPawn() {
return eatenPawn;
}
public void addEatenPawn(Pawn pawn) {
this.eatenPawn.add(pawn);
}
}