-
Notifications
You must be signed in to change notification settings - Fork 0
/
Pieza.java
110 lines (90 loc) · 2.41 KB
/
Pieza.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
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
import java.util.List;
/**
* Nombre del método: main
* Descripción: <i>Método para </i>
* @author hernan.gil
* @param args
*
* MODIFICACIONES:
*
* Fecha: 11/02/2016
* Autor - Empresa: hernan.gil - E.T.N. S.A.S.
* Descripción: Creación del método
*/
public abstract class Pieza {
private String nombre;
private Color color;
private int valor;
boolean posicionInicial = true;
boolean baja = true;
boolean enJaque = false;
boolean promovido = false;
boolean enPassant = false;
boolean saltoDos = false;
protected Pieza(String tipo, Color color, int valor, boolean enJaque, boolean posicionInicial) {
super();
this.nombre = tipo;
this.color = color;
this.valor = valor;
this.enJaque = enJaque;
this.posicionInicial = posicionInicial;
}
protected Pieza(String tipo, Color color, int valor, boolean baja, boolean promovido, boolean enPassant, boolean saltoDos) {
super();
this.nombre = tipo;
this.color = color;
this.valor = valor;
this.baja = baja;
this.promovido = promovido;
this.enPassant = enPassant;
this.saltoDos = saltoDos;
}
protected Pieza(String tipo, Color color, int valor) {
super();
this.nombre = tipo;
this.color = color;
this.valor = valor;
}
public abstract List<Posicion> getMovimientos(Posicion from, Pieza[][] tablero);
public abstract List<Posicion> getMovimientosConDireccion(Posicion from, Posicion dest, Pieza[][] tablero);
public enum Color {
BLACK, WHITE
}
public Color getColor() {
return color;
}
public int getValor() {
return valor;
}
public String getNombre() {
return nombre;
}
public boolean isPosicionInicial() {
return posicionInicial;
}
public void setPosicionInicial(boolean posicionInicial) {
this.posicionInicial = posicionInicial;
}
public boolean isBaja() {
return baja;
}
public boolean isEnJaque() {
return enJaque;
}
public boolean isPromovido() {
return promovido;
}
public boolean isEnPassant() {
return enPassant;
}
public boolean isSaltoDos() {
return saltoDos;
}
@Override
public String toString() {
return getNombre() + (getColor() == Pieza.Color.WHITE ? "B" : "N");
}
public String colorToString() {
return getNombre() + (getColor() == Pieza.Color.WHITE ? "WHITE" : "BLACK");
}
}