Skip to content

Commit

Permalink
agrego el ultimo test
Browse files Browse the repository at this point in the history
  • Loading branch information
Damlima committed Nov 23, 2023
1 parent d901bf4 commit a21a839
Show file tree
Hide file tree
Showing 35 changed files with 127 additions and 254 deletions.
33 changes: 29 additions & 4 deletions src/main/java/edu/fiuba/algo3/modelo/AlgoRoma.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,38 @@
import java.util.List;

public class AlgoRoma {
/* public AlgoRoma(){

private TableroB tablero;
private List<Gladiador> gladiadores;

private int turnosJugados = 0;


public void iniciarJuego() throws IOException {
List<JsonObject> mapa = obtenerListaDatosDesdeJson("mapa.json");
this.gladiadores = new ArrayList<>();

gladiadores.add(new Gladiador("Pepe"));


tablero = new TableroB(gladiadores, mapa);

}

public moverGladiador(Gladiador gladiador, Posicion posicionesAMover){
gladiador.mover(posicion);
}*/
public int jugar() {
boolean sinGanadores = true;
while (sinGanadores) {
turnosJugados += 1;
for (Gladiador gladiador: this.gladiadores) {
gladiador.turnoEn(this.tablero);
}

if (turnosJugados == 30) {
sinGanadores = false;
}
}
return 0;
}

//posibel ejemplo de como leer el json
public static List<JsonObject> obtenerListaDatosDesdeJson(String rutaArchivoJson) throws IOException {
Expand Down
6 changes: 1 addition & 5 deletions src/main/java/edu/fiuba/algo3/modelo/Casilla.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package edu.fiuba.algo3.modelo;

import edu.fiuba.algo3.modelo.camino.CaminoTipo;
import edu.fiuba.algo3.modelo.efectos.Efecto;

public class Casilla {

Expand All @@ -16,9 +17,4 @@ public Casilla(Efecto e, CaminoTipo t) {
public void aplicarEfecto(Gladiador g) {
this.efecto.aplicar(g);
}

//para la interfaz grafica
public void pintar() {
this.tipo.pintar();
}
}
4 changes: 0 additions & 4 deletions src/main/java/edu/fiuba/algo3/modelo/Casillero.java

This file was deleted.

2 changes: 1 addition & 1 deletion src/main/java/edu/fiuba/algo3/modelo/Dado.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

public class Dado {

public int tirar(){
public static int tirar(){
return new Random().nextInt(5) + 1;
}
}
6 changes: 0 additions & 6 deletions src/main/java/edu/fiuba/algo3/modelo/Efecto.java

This file was deleted.

28 changes: 0 additions & 28 deletions src/main/java/edu/fiuba/algo3/modelo/Energia.java

This file was deleted.

37 changes: 20 additions & 17 deletions src/main/java/edu/fiuba/algo3/modelo/Gladiador.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,28 +3,31 @@
import edu.fiuba.algo3.modelo.equipamiento.Equipo;
import edu.fiuba.algo3.modelo.equipamiento.SinEquipo;
import edu.fiuba.algo3.modelo.estado.Estado;
import edu.fiuba.algo3.modelo.estado.Lesionado;
import edu.fiuba.algo3.modelo.estado.Sano;
import edu.fiuba.algo3.modelo.nivel.Nivel;
import edu.fiuba.algo3.modelo.nivel.Novato;

public class Gladiador {

private final Energia energia;
private int energia = 20;
private Nivel nivel;
private Estado estado;

private String nombre;

//como no tiene efecto el historial de obtenciones de equipo por parte del jugador, simplemente tiene el ultimo equipo obtenido
private Equipo equipo;
private int turnosJugados = 0;

public Gladiador() {
this.energia = new Energia();
public Gladiador(String nombre) {
this.nivel = new Novato();
this.equipo = new SinEquipo();
this.estado = new Sano();
this.nombre = nombre;
}

public void jugar(TableroB t) {
public void turnoEn(TableroB t) {
this.estado = this.estado.jugar(this, t);
}

Expand All @@ -33,23 +36,27 @@ public void actualizarEquipo() {
}

public void beber(int puntosPerdidos) {
this.energia.restarPuntos(puntosPerdidos);
this.energia -= puntosPerdidos;
}

public void esAtacado() {
this.equipo.resistirAtaque(this);
}

public void comer() {
this.energia.sumarPuntos(10);
public void comer(int puntosGanados) {
this.energia += puntosGanados;
}

public void esLesionado() {
this.estado = new Lesionado();
}

public boolean tenesEsteEquipo(Equipo e) {
return this.equipo.equals(e);
}

public boolean tenesPuntosDeEnegia(int puntos) {
return this.energia.tenes(puntos);
return this.energia == puntos;
}

public boolean tenesElNivel(Nivel n) {
Expand All @@ -60,29 +67,25 @@ public String obtenerNombre() {
return "nombre";
}

public void setEstado(Estado e) {
this.estado = e;
}

public void actualizarPuntosSegunNivel() {
turnosJugados += 1;
this.nivel = this.nivel.actualizarPuntos(this.energia, this.turnosJugados);
this.nivel = this.nivel.actualizarPuntos(this, this.turnosJugados);
}

public void sumarEnergia(int cantidad) {
this.energia.sumarPuntos(cantidad);
this.energia += cantidad;
}

public void restarEnegia(int cantidad) {
this.energia.restarPuntos(cantidad);
this.energia -= cantidad;
}

public boolean sinEnergia() {
return this.energia.tenesPuntosMenorA(0);
return this.energia <= 0;
}

public boolean conEnergia() {
return this.energia.tenesPuntosMayorA(0);
return this.energia >= 0;
}

}
20 changes: 0 additions & 20 deletions src/main/java/edu/fiuba/algo3/modelo/Localize.java

This file was deleted.

12 changes: 0 additions & 12 deletions src/main/java/edu/fiuba/algo3/modelo/Message.java

This file was deleted.

3 changes: 2 additions & 1 deletion src/main/java/edu/fiuba/algo3/modelo/TableroB.java
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
package edu.fiuba.algo3.modelo;

import java.util.*;

import com.google.gson.JsonObject;
import edu.fiuba.algo3.modelo.camino.CaminoFactory;
import edu.fiuba.algo3.modelo.camino.CaminoTipo;
import edu.fiuba.algo3.modelo.efectos.Efecto;
import edu.fiuba.algo3.modelo.efectos.EfectoFactory;
import edu.fiuba.algo3.modelo.equipamiento.Llave;

public class TableroB {
Expand Down
6 changes: 1 addition & 5 deletions src/main/java/edu/fiuba/algo3/modelo/camino/Camino.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,5 @@

import edu.fiuba.algo3.modelo.camino.CaminoTipo;

public class Camino extends CaminoTipo {
@Override
public void pintar() {

}
public class Camino implements CaminoTipo {
}
3 changes: 1 addition & 2 deletions src/main/java/edu/fiuba/algo3/modelo/camino/CaminoTipo.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package edu.fiuba.algo3.modelo.camino;

public abstract class CaminoTipo {
public interface CaminoTipo {

public abstract void pintar();
}
6 changes: 1 addition & 5 deletions src/main/java/edu/fiuba/algo3/modelo/camino/NoEsCamino.java
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@
package edu.fiuba.algo3.modelo.camino;

public class NoEsCamino extends CaminoTipo {
@Override
public void pintar() {

}
public class NoEsCamino implements CaminoTipo {
}
1 change: 0 additions & 1 deletion src/main/java/edu/fiuba/algo3/modelo/efectos/Bacanal.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package edu.fiuba.algo3.modelo.efectos;

import edu.fiuba.algo3.modelo.Dado;
import edu.fiuba.algo3.modelo.Efecto;
import edu.fiuba.algo3.modelo.Gladiador;

public class Bacanal implements Efecto {
Expand Down
3 changes: 1 addition & 2 deletions src/main/java/edu/fiuba/algo3/modelo/efectos/Comida.java
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
package edu.fiuba.algo3.modelo.efectos;

import edu.fiuba.algo3.modelo.Efecto;
import edu.fiuba.algo3.modelo.Gladiador;

public class Comida implements Efecto {

@Override
public void aplicar(Gladiador g) {
g.comer();
g.comer(10);
}
}
8 changes: 8 additions & 0 deletions src/main/java/edu/fiuba/algo3/modelo/efectos/Efecto.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package edu.fiuba.algo3.modelo.efectos;

import edu.fiuba.algo3.modelo.Gladiador;

public interface Efecto {

void aplicar(Gladiador g);
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package edu.fiuba.algo3.modelo;
package edu.fiuba.algo3.modelo.efectos;

import edu.fiuba.algo3.modelo.efectos.*;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package edu.fiuba.algo3.modelo.efectos;

import edu.fiuba.algo3.modelo.Efecto;
import edu.fiuba.algo3.modelo.Gladiador;

public class Equipamiento implements Efecto {
Expand Down
1 change: 0 additions & 1 deletion src/main/java/edu/fiuba/algo3/modelo/efectos/Fiera.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package edu.fiuba.algo3.modelo.efectos;

import edu.fiuba.algo3.modelo.Efecto;
import edu.fiuba.algo3.modelo.Gladiador;

public class Fiera implements Efecto {
Expand Down
4 changes: 1 addition & 3 deletions src/main/java/edu/fiuba/algo3/modelo/efectos/Lesion.java
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
package edu.fiuba.algo3.modelo.efectos;

import edu.fiuba.algo3.modelo.Efecto;
import edu.fiuba.algo3.modelo.Gladiador;
import edu.fiuba.algo3.modelo.estado.Lesionado;

public class Lesion implements Efecto {
@Override
public void aplicar(Gladiador g) {
g.setEstado(new Lesionado());
g.esLesionado();
}
}
1 change: 0 additions & 1 deletion src/main/java/edu/fiuba/algo3/modelo/efectos/Ninguno.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package edu.fiuba.algo3.modelo.efectos;

import edu.fiuba.algo3.modelo.Efecto;
import edu.fiuba.algo3.modelo.Gladiador;

public class Ninguno implements Efecto {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package edu.fiuba.algo3.modelo.equipamiento;

import edu.fiuba.algo3.modelo.Energia;
import edu.fiuba.algo3.modelo.Gladiador;

public class Armadura extends Equipo {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package edu.fiuba.algo3.modelo.equipamiento;

import edu.fiuba.algo3.modelo.Energia;
import edu.fiuba.algo3.modelo.Gladiador;

public class Casco extends Equipo {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package edu.fiuba.algo3.modelo.equipamiento;

import edu.fiuba.algo3.modelo.Energia;
import edu.fiuba.algo3.modelo.Gladiador;

public abstract class Equipo {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package edu.fiuba.algo3.modelo.equipamiento;

import edu.fiuba.algo3.modelo.Energia;
import edu.fiuba.algo3.modelo.Gladiador;

public class EscudoYEspada extends Equipo {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package edu.fiuba.algo3.modelo.equipamiento;

import edu.fiuba.algo3.modelo.Energia;
import edu.fiuba.algo3.modelo.Gladiador;

public class Llave extends Equipo {
Expand Down
Loading

0 comments on commit a21a839

Please sign in to comment.