-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathPiecePawn.java
More file actions
74 lines (61 loc) · 1.24 KB
/
PiecePawn.java
File metadata and controls
74 lines (61 loc) · 1.24 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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
import javafx.scene.image.Image;
public class PiecePawn extends Piece {
boolean firstmove;
public String name = "Pawn";
public String imgname = "pawn.png";
private Piece[][] boardstate;
private int i;
private int j;
private int te;
public PiecePawn(int type, int ii, int jj, boolean fm) {
super(type);
te=type;
i = ii;
j = jj;
firstmove = fm;
}
@Override
public Image image(){
if(te==1)
return new Image("whitepawncursor.png");
else
return new Image("blackpawncursor.png");
}
@Override
public int icoord(){
if(i > 8){
return 7;}
if(i < 0){
return 0;}
else{return i;}
}
@Override
public int jcoord(){
if(j > 8){
return 7;}
if(j < 0){
return 0;}
else{return j;}
}
@Override
public String toString(){
return name;
}
@Override
public String imagefilename(){
return imgname;
}
@Override
public boolean firstmove(){
return firstmove;
}
public Piece[][] movepawn(Piece p, Piece t, Piece[][] bs){
boardstate = bs;
// Move pawn
firstmove = false;
boardstate[t.icoord()][t.jcoord()] = new PiecePawn(p.type(), t.icoord(), t.jcoord(), firstmove);
boardstate[p.icoord()][p.jcoord()] = new Empty(0, p.icoord(), p.jcoord());
// Return the new board
return boardstate;
}
}