Skip to content

Commit

Permalink
Merge pull request #18 from Vinceto/developer
Browse files Browse the repository at this point in the history
M4 Arreglos y Archivos D26 - Ejercicio Guiado Juego + Animales
  • Loading branch information
Andressep authored Jun 11, 2024
2 parents 8e40f9d + 3729e8d commit fe88c53
Show file tree
Hide file tree
Showing 10 changed files with 172 additions and 0 deletions.
22 changes: 22 additions & 0 deletions Vinceto/src/D26/Animales/Animal.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
package D26.Animales;

public abstract class Animal {
private int altura;
private int peso;

public int getAltura() {
return altura;
}

public void setAltura(int altura) {
this.altura = altura;
}

public int getPeso() {
return peso;
}

public void setPeso(int peso) {
this.peso = peso;
}
}
14 changes: 14 additions & 0 deletions Vinceto/src/D26/Animales/Carnivoro.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
package D26.Animales;

import java.util.List;
public abstract class Carnivoro extends Animal {
List<String> carnesFavoritas;

public List<String> getCarnesFavoritas() {
return carnesFavoritas;
}

public void setCarnesFavoritas(List<String> carnesFavoritas) {
this.carnesFavoritas = carnesFavoritas;
}
}
4 changes: 4 additions & 0 deletions Vinceto/src/D26/Animales/Leon.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package D26.Animales;

public class Leon extends Carnivoro {
}
19 changes: 19 additions & 0 deletions Vinceto/src/D26/Animales/Main.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package D26.Animales;

import java.util.ArrayList;

public class Main {
public static void main(String[] args) {
Leon leon = new Leon();
Tigre tigre = new Tigre();
ArrayList<Animal> listaAnimales = new ArrayList<>();
ArrayList<Carnivoro> listaCarnivoros = new ArrayList<>();
listaAnimales.add(leon);
listaCarnivoros.add(tigre);
listaAnimales.add(leon);
listaCarnivoros.add(tigre);
System.out.println(listaAnimales);
System.out.println(listaCarnivoros);
}
}

4 changes: 4 additions & 0 deletions Vinceto/src/D26/Animales/Tigre.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package D26.Animales;

public class Tigre extends Carnivoro {
}
6 changes: 6 additions & 0 deletions Vinceto/src/D26/Interfaces/Jugador.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package D26.Interfaces;

public interface Jugador {
void Saltar();
void ejecutarAccion(String accion);
}
6 changes: 6 additions & 0 deletions Vinceto/src/D26/Interfaces/Personaje.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package D26.Interfaces;

public interface Personaje {
void mover(int x);
int getX();
}
23 changes: 23 additions & 0 deletions Vinceto/src/D26/Personajes/Enemigo.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package D26.Personajes;

import D26.Interfaces.Personaje;

public class Enemigo implements Personaje {
private int xActual;

public Enemigo() {
this.xActual = 0;
}

@Override
public void mover(int x) {
while (xActual < x) {
xActual++;
}
}

@Override
public int getX() {
return xActual;
}
}
32 changes: 32 additions & 0 deletions Vinceto/src/D26/Personajes/Main.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
package D26.Personajes;

public class Main {
public static void main(String[] args) {
// Crear una instancia de Protagonista
Protagonista protagonista = new Protagonista();
System.out.println("Probando Protagonista...");

// Mover el protagonista
protagonista.mover(3);
System.out.println("Protagonista se ha movido a X: " + protagonista.getX() + ", Y: " + protagonista.getY());

// Saltar con el protagonista
protagonista.Saltar();
System.out.println("Protagonista ha saltado a X: " + protagonista.getX() + ", Y: " + protagonista.getY());

// Ejecutar acciones con el protagonista
protagonista.ejecutarAccion("saltar");
System.out.println("Protagonista ejecuta acción saltar a X: " + protagonista.getX() + ", Y: " + protagonista.getY());

protagonista.ejecutarAccion("avanzar");
System.out.println("Protagonista ejecuta acción avanzar a X: " + protagonista.getX() + ", Y: " + protagonista.getY());

// Crear una instancia de Enemigo
Enemigo enemigo = new Enemigo();
System.out.println("Probando Enemigo...");

// Mover el enemigo
enemigo.mover(5);
System.out.println("Enemigo se ha movido a X: " + enemigo.getX());
}
}
42 changes: 42 additions & 0 deletions Vinceto/src/D26/Personajes/Protagonista.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
package D26.Personajes;

import D26.Interfaces.Jugador;
import D26.Interfaces.Personaje;

public class Protagonista implements Personaje, Jugador {
private int xActual = 1;
private int yActual = 1;

@Override
public void mover(int x) {
xActual = xActual + x;
}

@Override
public void Saltar() {
while (yActual < 5) {
yActual++;
}
while (yActual > 1) {
yActual--;
}
}

@Override
public void ejecutarAccion(String accion) {
if (accion.equals("saltar") && yActual == 1) {
Saltar();
} else if (accion.equals("avanzar")) {
mover(1);
}
}

@Override
public int getX() {
return xActual;
}

public int getY() {
return yActual;
}
}

0 comments on commit fe88c53

Please sign in to comment.