-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMover.java
More file actions
117 lines (97 loc) · 1.88 KB
/
Copy pathMover.java
File metadata and controls
117 lines (97 loc) · 1.88 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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
import javax.swing.JLabel;
@SuppressWarnings("serial")
public abstract class Mover extends JLabel{
private int row; //current row
private int column; //current column
private int dRow; //current row direction (-1, 0, or 1)
private int dColumn; //current column direction (-1, 0, or 1)
private boolean isDead; //death status
private boolean isWeak; //weak status
//Getters and Setters
public int getRow() {
return row;
}
public void setRow(int row) {
this.row = row;
}
public int getColumn() {
return column;
}
public void setColumn(int column) {
this.column = column;
}
public int getdRow() {
return dRow;
}
public void setdRow(int dRow) {
this.dRow = dRow;
}
public int getdColumn() {
return dColumn;
}
public void setdColumn(int dColumn) {
this.dColumn = dColumn;
}
public boolean isDead() {
return isDead;
}
public void setDead(boolean isDead) {
this.isDead = isDead;
}
public boolean isWeak(){
return isWeak;
}
public void setWeak(boolean isWeak){
this.isWeak = isWeak;
}
//dRow, ddColumn will either be -1, 0, or +1
public void move(){
row += dRow;
column += dColumn;
}
public void setDirection(int dir){
//Reset
dRow = 0;
dColumn = 0;
//Left
if (dir == 0){
dColumn = -1;
}
//Up
else if (dir == 1){
dRow = -1;
}
//Right
else if (dir == 2){
dColumn = 1;
}
//Down
else if (dir == 3){
dRow = 1;
}
}
public int getDirection(){
//Left
if (dRow == 0 && dColumn == -1){
return 0;
}
//Up
else if (dRow == -1 && dColumn == 0){
return 1;
}
//Right
else if (dRow == 0 && dColumn == 1){
return 2;
}
//Down
else {
return 3;
}
}
public int getNextRow(){
return row + dRow;
}
public int getNextColumn(){
return column + dColumn;
}
}