Skip to content

Commit

Permalink
feat: primeras implementaciones de Juego.
Browse files Browse the repository at this point in the history
Co-authored-by: mariagalindez <mgalindez@fi.uba.ar>
Co-authored-by: Sebakrag <sebaskrag@gmail.com>
  • Loading branch information
3 people committed Nov 22, 2023
1 parent d74e856 commit ed2c888
Show file tree
Hide file tree
Showing 4 changed files with 63 additions and 19 deletions.
44 changes: 44 additions & 0 deletions src/main/java/edu/fiuba/algo3/modelo/Juego.java
Original file line number Diff line number Diff line change
@@ -1,4 +1,48 @@
package edu.fiuba.algo3.modelo;

import edu.fiuba.algo3.modelo.celdas.CeldaInicial;

import java.util.*;


public class Juego {
private Tablero tablero;
private int cantidadJugadores; // Lo borramos? Podemos pedirlo por interfaz grafica.
private ArrayList<Jugador> jugadores;

public Juego() {
// Instanciar la interfaz grafica --> se pide la cantidad de jugadores y el ingreso de los nombres.??????
// VERIFICAR QUE LOS JUGADORES INGRESADOS SEN ENTRE 2 Y 6
this.jugadores = new ArrayList<Jugador>();

CeldaInicial celdaInicial = new CeldaInicial();
this.tablero = new Tablero(celdaInicial);
}

public void iniciarJuego(int cantidadCeldas){
this.tablero.armarMapa(cantidadCeldas);

//Cantidad de jugadores a jugar -> Lo pedimos por interfaz.
this.crearJugadores(this.cantidadJugadores);


}

public void crearJugadores(int cantidadJugadores) {
for (int i = 0; i < cantidadJugadores; i++) {
Gladiador gladiador = new Gladiador();
//Jugador jugador = new Jugador(gladiador, this.tablero.getCeldaInicial());
//this.jugadores.add(jugador);
}
}

// Este metodo va aca (no en Jugador):
// public boolean chequearTurno(){
// if (this.turnos != 30) {
// this.turnos ++;
// return true;
// } else {
// return false;
// }
// }
}
2 changes: 1 addition & 1 deletion src/main/java/edu/fiuba/algo3/modelo/Jugador.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,12 @@ public boolean jugarTurno() {
return aDevolver;
}

// Este metodo iria en Juego:
public boolean chequearTurno(){
if (this.turnos != 30) {
this.turnos ++;
return true;
} else {
//juego.terminarPartida();
return false;
}
}
Expand Down
15 changes: 7 additions & 8 deletions src/main/java/edu/fiuba/algo3/modelo/Tablero.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,32 +9,31 @@

public class Tablero {
private Celda celdaInicial;
private int tamanio; //
private int tamanio;
//private ArrayList<Afectante> afectantes;

public Tablero(int cantidadCeldas, CeldaInicial celdaInicial) {
this.tamanio = cantidadCeldas;
public Tablero(CeldaInicial celdaInicial) {
this.celdaInicial = celdaInicial;
//this.afectantes = new ArrayList<>();
}

public void armarMapa(){
public void armarMapa(int cantidadCeldas){
Afectante afectante = new Vacio(); // Esto deberia ser un RANDOM siguiendo el mapa del JSON.
Celda actual = this.celdaInicial;
int i = 1;
for (; i < (this.tamanio - 1); i++) {
for (; i < (cantidadCeldas - 1); i++) {
Celda celdaComun = new CeldaComun(i, i, afectante);
actual.setSiguiente(celdaComun);
actual = celdaComun;
}
Celda celdaMedio = this.buscarCeldaDelMedio();
Celda celdaMedio = this.buscarCeldaDelMedio(cantidadCeldas);
Celda celdaFinal = new CeldaFinal(celdaMedio, i, i);
actual.setSiguiente(celdaFinal);
}

private Celda buscarCeldaDelMedio() {
private Celda buscarCeldaDelMedio(int cantidadCeldas) {
Celda celdaMedio = this.celdaInicial;
for (int i = 1; i < (tamanio / 2) ; i++) {
for (int i = 1; i < (cantidadCeldas / 2) ; i++) {
celdaMedio = celdaMedio.celdaSiguiente();
}
return celdaMedio;
Expand Down
21 changes: 11 additions & 10 deletions src/main/test/edu/fiuba/algo3/entregas/CasosDeUsoSemana1Test.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ public void test01SeInicializaUnJugadorConLaEnergiaYElEquipamientoCorrecto() {

CeldaInicial celdaInicial = new CeldaInicial();
int cantidadCeldas = 3;
Tablero tablero = new Tablero(cantidadCeldas, celdaInicial);
tablero.armarMapa();
Tablero tablero = new Tablero(celdaInicial);
tablero.armarMapa(cantidadCeldas);

Gladiador gladiador = new Gladiador();
Jugador jugador = new Jugador(gladiador, celdaInicial);
Expand All @@ -39,8 +39,8 @@ public void test02JugadorSaleCorrectamenteDeLaCasillaInicial(){

CeldaInicial celdaInicial = new CeldaInicial();
int cantidadCeldas = 6;
Tablero tablero = new Tablero(cantidadCeldas, celdaInicial);
tablero.armarMapa();
Tablero tablero = new Tablero(celdaInicial);
tablero.armarMapa(cantidadCeldas);

Gladiador gladiador = new Gladiador();
Jugador jugador = new Jugador(gladiador, celdaInicial);
Expand Down Expand Up @@ -141,8 +141,8 @@ public void test07AlHaberUnCombateConFieraSiTieneCascoPierdeQuincePuntosDeEnergi
public void test08AlPasarOchoTurnosElGladiadorPasaDeNovatoASemiSenior() {
CeldaInicial celdaInicial = new CeldaInicial();
int cantidadCeldas = 20;
Tablero tablero = new Tablero(cantidadCeldas, celdaInicial);
tablero.armarMapa();
Tablero tablero = new Tablero(celdaInicial);
tablero.armarMapa(cantidadCeldas);

Gladiador gladiador = new Gladiador();
Jugador jugador = new Jugador(gladiador, celdaInicial);
Expand All @@ -162,8 +162,8 @@ public void test09AlLlegarAlaMetaSinLaLlaveRetrocedeAlaMitadDeLasCasillas() {
// Hay que hacer la logica de ganar.
CeldaInicial celdaInicial = new CeldaInicial();
int cantidadCeldas = 2;
Tablero tablero = new Tablero(cantidadCeldas, celdaInicial);
tablero.armarMapa();
Tablero tablero = new Tablero(celdaInicial);
tablero.armarMapa(cantidadCeldas);
Gladiador gladiador = new Gladiador();
Jugador jugador = new Jugador(gladiador, celdaInicial);
int coordenadaXMedio = 0;
Expand All @@ -176,6 +176,7 @@ public void test09AlLlegarAlaMetaSinLaLlaveRetrocedeAlaMitadDeLasCasillas() {

@Test
public void test10AlSerAtacadoPorUnaFieraYConTodoElEquipamientoNoPierdeEnergia() {

Celda celdaInicial = new CeldaInicial();
Gladiador gladiador = new Gladiador();
Jugador jugador = new Jugador(gladiador, celdaInicial);
Expand Down Expand Up @@ -220,8 +221,8 @@ public void test12AlPasarTreintaTurnosYnadieLlegaAlaMetaSeTerminoElJuego() {

CeldaInicial celdaInicial = new CeldaInicial();
int cantidadCeldas = 3;
Tablero tablero = new Tablero(cantidadCeldas, celdaInicial);
tablero.armarMapa();
Tablero tablero = new Tablero(celdaInicial);
tablero.armarMapa(cantidadCeldas);

Gladiador gladiador1 = new Gladiador();
Gladiador gladiador2 = new Gladiador();
Expand Down

0 comments on commit ed2c888

Please sign in to comment.