Repository navigation
Expand file tree
/
Copy pathTablero.java
More file actions
70 lines (61 loc) · 2.22 KB
/
Copy pathTablero.java
File metadata and controls
70 lines (61 loc) · 2.22 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
package com.example.yugioh;
import java.util.ArrayList;
public class Tablero {
private static final int LIMITE_CARTAS_MONSTRUO = 3;
private static final int LIMITE_CARTAS_TRAMPA = 3;
private CartaMonstruo[] cartasMonstruo = new CartaMonstruo[LIMITE_CARTAS_MONSTRUO];
private CartaTrampa[] cartasTrampa = new CartaTrampa[LIMITE_CARTAS_TRAMPA];
private ArrayList<Carta> cementerio = new ArrayList<>();
public CartaMonstruo[] getCartasMonstruo() {
return cartasMonstruo;
}
public CartaTrampa[] getCartasTrampa() {
return cartasTrampa;
}
public ArrayList<Carta> getCementerio() {
return cementerio;
}
public boolean colocarCartaMonstruo(CartaMonstruo carta) {
if (carta == null) {
throw new IllegalArgumentException("La carta de monstruo no puede ser nula.");
}
for (int i = 0; i < LIMITE_CARTAS_MONSTRUO; i++) {
if (cartasMonstruo[i] == null) {
cartasMonstruo[i] = carta;
carta.setUbi(Ubicacion.CAMPO);
return true;
}
}
System.out.println("No se puede colocar más cartas de monstruo. Límite alcanzado.");
return false;
}
public boolean colocarCartaTrampa(CartaTrampa carta) {
if (carta == null) {
throw new IllegalArgumentException("La carta de trampa no puede ser nula.");
}
for (int i = 0; i < LIMITE_CARTAS_TRAMPA; i++) {
if (cartasTrampa[i] == null) {
cartasTrampa[i] = carta;
carta.setUbi(Ubicacion.CAMPO);
return true;
}
}
System.out.println("No se puede colocar más cartas de trampa. Límite alcanzado.");
return false;
}
public int contarCartasMonstruo() {
int contador = 0;
for (CartaMonstruo carta : cartasMonstruo) {
if (carta != null) {
contador++;
}
}
return contador;
}
public void enviarAlCementerio(Carta carta) {
if (carta != null) {
cementerio.add(carta);
carta.setUbi(Ubicacion.CEMENTERIO);
}
}
}