Skip to content

Commit 3e39d33

Browse files
authored
Merge pull request #69 from NazaQuintero/refactorFinal
refactorFinal
2 parents 1975635 + fca6e87 commit 3e39d33

27 files changed

+106
-84
lines changed

src/main/java/edu/fiuba/algo3/controladores/ActivarTarjetasEventHandler.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import edu.fiuba.algo3.modelo.Jugador;
44
import edu.fiuba.algo3.modelo.excepciones.*;
5-
import edu.fiuba.algo3.modelo.paises.Pais;
65
import edu.fiuba.algo3.modelo.tarjetas.Tarjeta;
76
import edu.fiuba.algo3.vista.VentanaTarjetas;
87
import javafx.event.EventHandler;
@@ -27,12 +26,10 @@ public void handle(MouseEvent event) {
2726
}
2827

2928
void activarTarjetas(ArrayList<Tarjeta> tarjetas) {
30-
// Usado para no repetir el reproducir sonido en todos los catchs
3129
boolean error = true;
3230

3331
if (tarjetas.size() == 0) ventanaTarjetas.mostrarError("Se debe seleccionar al menos una tarjeta");
3432

35-
3633
for (Tarjeta tarjeta: tarjetas) {
3734
try {
3835
jugador.activarTarjeta(tarjeta);
@@ -42,25 +39,27 @@ void activarTarjetas(ArrayList<Tarjeta> tarjetas) {
4239
} catch (ElJugadorNoTieneTurnoException | TarjetaNoEncontradaException ignored) {}
4340

4441
catch (LaTarjetaYaFueActivadaException e) {
45-
ventanaTarjetas.mostrarError("La tarjeta de " + tarjeta.obtenerPais().getNombre() +" ya fue activada");
42+
ventanaTarjetas.mostrarError("La tarjeta de " + tarjeta.getPais().getNombre() + " ya fue activada");
4643
}
4744
catch (ActivacionTarjetaEnRondaEquivocadaException e) {
4845
ventanaTarjetas.mostrarError("No se pueden activar tarjetas en ronda de ataque");
4946
}
5047
catch (JugadorNoPoseePaisDeLaTarjetaException e) {
51-
ventanaTarjetas.mostrarError("El jugador no posee el pais " + tarjeta.obtenerPais().getNombre());
48+
ventanaTarjetas.mostrarError("El jugador no posee el pais " + tarjeta.getPais().getNombre());
5249
}
5350

5451
ventanaTarjetas.deseleccionarVistaTarjeta(tarjeta);
5552
}
53+
5654
if (error) ReproductorDeSonido.getInstance().playError();
5755
else ReproductorDeSonido.getInstance().playClick();
56+
5857
}
5958

6059
private String crearMensajeExito(ArrayList<Tarjeta> tarjetas){
6160
String mensaje = "Tarjetas activadas correctamente";
6261
if (tarjetas.size() == 1)
63-
mensaje = "Tarjeta " + tarjetas.get(0).obtenerPais().getNombre() +" activada correctamente";
62+
mensaje = "Tarjeta " + tarjetas.get(0).getPais().getNombre() +" activada correctamente";
6463
return mensaje;
6564
}
6665

src/main/java/edu/fiuba/algo3/controladores/AtaqueEventHandler.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@ public void handle(Event event) {
4646
int cantidadDeEjercitos = Integer.parseInt(inputText.getText());
4747
Resultado resultado = atacante.atacarA(defensor, cantidadDeEjercitos);
4848

49-
5049
menuLateralDerecho.update();
5150
mostrarAtaque();
5251
ProcesadorResultado.obtenerInstancia().procesar(resultado);

src/main/java/edu/fiuba/algo3/controladores/PaisEventHandler.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,6 @@ public PaisEventHandler(VistaPais vistaPais, CampoDeJuego campoDeJuego) {
3030
@Override
3131
public void handle(MouseEvent mouseEvent) {
3232

33-
34-
3533
Ronda ronda = this.campoDeJuego.getJuego().getTurno().obtenerRondaActual();
3634
MenuLateralDerecho menuLateral = (MenuLateralDerecho) campoDeJuego.getRight();
3735
VBox formularioDeAccion = (VBox) menuLateral.getChildren().get(1);
@@ -45,8 +43,9 @@ public void handle(MouseEvent mouseEvent) {
4543
ronda.colocarEjercitos(pais,1);
4644
ReproductorDeSonido.getInstance().playClick();
4745
menuLateral.update();
48-
} catch (NoEsRondaDeColocacionException | NoQuedanMasEjercitosPorColocarException e) {
46+
} catch (NoEsRondaDeColocacionException ignored) {}
4947

48+
catch (NoQuedanMasEjercitosPorColocarException e) {
5049
ReproductorDeSonido.getInstance().playError();
5150
menuLateral.mostrarErrorColocacion();
5251
Label labelDeError = (Label)(formularioDeAccion.getChildren().get(4));

src/main/java/edu/fiuba/algo3/modelo/CargarJuego.java

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,16 @@
1717

1818
public class CargarJuego {
1919

20-
public static void cargarContinentesYPaises(String archivoContinentesYPaises) throws ArchivoDeContinentesYPaisesNoEncontradoException {
20+
private static final String ARCHIVO_CONTINENTES_Y_PAISES = "continentesYPaises.json";
21+
private static final String ARCHIVO_PAISES_LIMITROFES = "paisesLimitrofes.json";
22+
private static final String ARCHIVO_TARJETAS = "tarjetas.json";
23+
24+
public static void cargarContinentesYPaises() throws ArchivoDeContinentesYPaisesNoEncontradoException {
2125
String json;
2226
Gson gson = new Gson();
2327

2428
try {
25-
InputStream is = App.class.getClassLoader().getResourceAsStream(archivoContinentesYPaises);
29+
InputStream is = App.class.getClassLoader().getResourceAsStream(ARCHIVO_CONTINENTES_Y_PAISES);
2630
json = new String(Objects.requireNonNull(is).readAllBytes(), StandardCharsets.UTF_8);
2731
}
2832
catch (IOException | NullPointerException e) {
@@ -39,11 +43,11 @@ public static void cargarContinentesYPaises(String archivoContinentesYPaises) th
3943
MultitonContinentes.cargarContinentes(continentes);
4044
}
4145

42-
public static void cargarPaisesLimitrofes(String archivoPaisesLimitrofes) throws ArchivoDePaisesLimitrofesNoEncontradoException {
46+
public static void cargarPaisesLimitrofes() throws ArchivoDePaisesLimitrofesNoEncontradoException {
4347
String json;
4448

4549
try {
46-
InputStream is = App.class.getClassLoader().getResourceAsStream(archivoPaisesLimitrofes);
50+
InputStream is = App.class.getClassLoader().getResourceAsStream(ARCHIVO_PAISES_LIMITROFES);
4751
json = new String(Objects.requireNonNull(is).readAllBytes(), StandardCharsets.UTF_8);
4852
} catch (IOException | NullPointerException e) {
4953
throw new ArchivoDePaisesLimitrofesNoEncontradoException();
@@ -74,11 +78,11 @@ public static void cargarPaisesLimitrofes(String archivoPaisesLimitrofes) throws
7478

7579
}
7680

77-
public static void cargarTarjetas(String archivoTarjetas) throws ArchivoDeTarjetasNoEncontradoException {
81+
public static void cargarTarjetas() throws ArchivoDeTarjetasNoEncontradoException {
7882
String json;
7983

8084
try {
81-
InputStream is = CargarJuego.class.getClassLoader().getResourceAsStream(archivoTarjetas);
85+
InputStream is = CargarJuego.class.getClassLoader().getResourceAsStream(ARCHIVO_TARJETAS);
8286
json = new String(Objects.requireNonNull(is).readAllBytes(), StandardCharsets.UTF_8);
8387
}
8488
catch (IOException | NullPointerException e) {

src/main/java/edu/fiuba/algo3/modelo/Juego.java

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,20 @@
99

1010
public class Juego {
1111

12-
private static final String ARCHIVO_CONTINENTES_Y_PAISES = "continentesYPaises.json";
13-
private static final String ARCHIVO_PAISES_LIMITROFES = "paisesLimitrofes.json";
14-
private static final String ARCHIVO_TARJETAS = "tarjetas.json";
15-
1612
private final Jugadores jugadores;
1713
private Turno turno = new SinTurno();
1814

1915
public Juego() throws ArchivoDeContinentesYPaisesNoEncontradoException, ArchivoDePaisesLimitrofesNoEncontradoException, ArchivoDeTarjetasNoEncontradoException {
2016
jugadores = new Jugadores();
2117

22-
CargarJuego.cargarContinentesYPaises(ARCHIVO_CONTINENTES_Y_PAISES);
23-
CargarJuego.cargarPaisesLimitrofes(ARCHIVO_PAISES_LIMITROFES);
24-
CargarJuego.cargarTarjetas(ARCHIVO_TARJETAS);
18+
CargarJuego.cargarContinentesYPaises();
19+
CargarJuego.cargarPaisesLimitrofes();
20+
CargarJuego.cargarTarjetas();
21+
22+
}
23+
24+
public Turno getTurno() {
25+
return turno;
2526
}
2627

2728
public void agregarJugador(Jugador jugador){
@@ -31,15 +32,11 @@ public void agregarJugador(Jugador jugador){
3132
public void comenzar() throws CantidadDeJugadoresInsuficienteException {
3233
if (jugadores.obtenerCantidad() < 2) throw new CantidadDeJugadoresInsuficienteException();
3334

34-
RepartidorDePaises repartidorDePaises = new RepartidorDePaises();
35-
repartidorDePaises.repartirPaises(jugadores);
35+
RepartidorDePaises.repartirPaises(jugadores);
3636
jugadores.mezclar();
3737
Objetivos.asignarObjetivos(jugadores);
3838
turno = new ConTurno(jugadores);
39-
}
4039

41-
public Turno getTurno() {
42-
return turno;
4340
}
4441

4542
public boolean estaTerminado() {

src/main/java/edu/fiuba/algo3/modelo/Jugador.java

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -85,21 +85,25 @@ public void recibirTarjeta(Tarjeta tarjeta){
8585
}
8686

8787
public void activarTarjeta(Tarjeta tarjeta) throws JugadorNoPoseePaisDeLaTarjetaException, ActivacionTarjetaEnRondaEquivocadaException, ElJugadorNoTieneTurnoException, LaTarjetaYaFueActivadaException, TarjetaNoEncontradaException {
88+
8889
if (!this.tarjetas.contains(tarjeta)) throw new TarjetaNoEncontradaException();
89-
if (!this.paisesDominados.contains(tarjeta.obtenerPais())) throw new JugadorNoPoseePaisDeLaTarjetaException();
90+
if (!this.paisesDominados.contains(tarjeta.getPais())) throw new JugadorNoPoseePaisDeLaTarjetaException();
91+
9092
this.turno.activarTarjeta(tarjeta);
93+
9194
}
9295

9396
public void colocarEjercitos(Pais pais, int cantidadEjercitos) throws ElJugadorNoTieneTurnoException, NoEsRondaDeColocacionException, PaisOcupadoPorOtroJugadorException, NoQuedanMasEjercitosPorColocarException {
97+
9498
if (paisesDominados.contains(pais)) {
9599
this.turno.colocarEjercitos(pais, cantidadEjercitos);
96100
}
97-
98-
else if (pais.estaLibre()){
101+
else if (pais.estaLibre()) {
99102
pais.colocarEjercito(new Ejercito(this));
100103
pais.modificarCantidadEjercito(cantidadEjercitos-1);
101104
}
102105
else throw new PaisOcupadoPorOtroJugadorException();
106+
103107
}
104108

105109
public void finalizarRonda() throws ElJugadorNoTieneTurnoException{
@@ -135,9 +139,7 @@ public void canjearTarjetas(ArrayList<Tarjeta> tarjetas) throws JugadorNoTieneTo
135139
public void devolverTarjetas(ArrayList<Tarjeta> tarjetasADevolver) {
136140

137141
tarjetasADevolver.forEach(tarjeta -> {
138-
try {
139-
tarjeta.desactivar();
140-
} catch (LaTarjetaYaEstaDesactivadaException ignored) {}
142+
tarjeta.desactivar();
141143
MultitonTarjetas.agregarTarjeta(tarjeta);
142144
tarjetas.remove(tarjeta);
143145
});

src/main/java/edu/fiuba/algo3/modelo/canjes/Canje.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ public Canje() {
1616

1717
public abstract Canje siguienteCanje();
1818

19-
public abstract int cantidadEjercitos(); // Setear canjeActivado como true
19+
public abstract int cantidadEjercitos();
2020

2121
public Canje habilitarCanje(ArrayList<Tarjeta> tarjetas) throws SinCanjeHabilitadoException {
2222

@@ -26,4 +26,5 @@ public Canje habilitarCanje(ArrayList<Tarjeta> tarjetas) throws SinCanjeHabilita
2626
return nuevoCanje;
2727

2828
}
29+
2930
}

src/main/java/edu/fiuba/algo3/modelo/canjes/NesimoCanje.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,5 @@ public int cantidadEjercitos() {
2121
canjeActivado = true;
2222
return cantidadEjercitos;
2323
}
24+
2425
}

src/main/java/edu/fiuba/algo3/modelo/canjes/PrimerCanje.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,5 @@ public int cantidadEjercitos() {
1111
canjeActivado = true;
1212
return 4;
1313
}
14+
1415
}

src/main/java/edu/fiuba/algo3/modelo/canjes/SegundoCanje.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,5 @@ public int cantidadEjercitos() {
1111
canjeActivado = true;
1212
return 7;
1313
}
14+
1415
}

0 commit comments

Comments
 (0)