diff --git a/core/assets/p3.png b/core/assets/p3.png new file mode 100644 index 0000000..4319045 Binary files /dev/null and b/core/assets/p3.png differ diff --git a/core/bin/main/com/mygdx/game/MyGdxGame.class b/core/bin/main/com/mygdx/game/MyGdxGame.class index 6203f57..ce9c979 100644 Binary files a/core/bin/main/com/mygdx/game/MyGdxGame.class and b/core/bin/main/com/mygdx/game/MyGdxGame.class differ diff --git a/core/bin/main/menus/.gitignore b/core/bin/main/menus/.gitignore index 6e08eb0..469aa7c 100644 --- a/core/bin/main/menus/.gitignore +++ b/core/bin/main/menus/.gitignore @@ -2,3 +2,5 @@ /MenuInicio.class /MenuOpcions.class /Battle.class +/MenuSeleccion.class +/Caratula.class diff --git a/core/bin/main/menus/Menu.class b/core/bin/main/menus/Menu.class index 4b1d9f4..a5b89cf 100644 Binary files a/core/bin/main/menus/Menu.class and b/core/bin/main/menus/Menu.class differ diff --git a/core/bin/main/utilidades/.gitignore b/core/bin/main/utilidades/.gitignore index 52f3d69..07d1f98 100644 --- a/core/bin/main/utilidades/.gitignore +++ b/core/bin/main/utilidades/.gitignore @@ -1,2 +1,4 @@ /Gifs.class /Personaje.class +/Barra.class +/Bot.class diff --git a/core/src/com/mygdx/game/MyGdxGame.java b/core/src/com/mygdx/game/MyGdxGame.java index 9346493..8f6eb3c 100644 --- a/core/src/com/mygdx/game/MyGdxGame.java +++ b/core/src/com/mygdx/game/MyGdxGame.java @@ -10,6 +10,7 @@ import menus.Battle; import menus.Menu; import menus.MenuInicio; import menus.MenuOpcions; +import menus.MenuSeleccion; import utilidades.Gifs; public class MyGdxGame extends ApplicationAdapter { @@ -29,7 +30,7 @@ public class MyGdxGame extends ApplicationAdapter { Gdx.graphics.setWindowedMode(WIN_ALT, WIN_ANCH); Menu.menus.add(new MenuInicio()); Menu.menus.add(new MenuOpcions()); - Menu.menus.add(new Battle()); + Menu.menus.add(new MenuSeleccion()); } @Override diff --git a/core/src/menus/Battle.java b/core/src/menus/Battle.java index e8f7661..da39542 100644 --- a/core/src/menus/Battle.java +++ b/core/src/menus/Battle.java @@ -5,16 +5,22 @@ import com.badlogic.gdx.Input; import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.graphics.g2d.SpriteBatch; +import utilidades.Bot; import utilidades.Personaje; public class Battle extends Menu{ Personaje p1; - Personaje p2; + Bot p2; Texture suelo; - public Battle() { - this.p2=new Personaje("ken", true); - this.p1=new Personaje("ryu", false); + float contador; + boolean cambio; + public Battle(String np1, String np2) { + this.cambio=true; + this.p2=new Bot(np2, true); + this.p1=new Personaje(np1, false); + this.p1.setEnemigo(p2.getCaja()); + this.p2.setEnemigo(p1.getCaja()); suelo = new Texture("sueloChina.png"); } @@ -23,18 +29,47 @@ public class Battle extends Menu{ batch.draw(suelo,0,0); if (Gdx.input.isKeyPressed(Input.Keys.E)) { p1.cambiarEstado(p1.MEDIO); - }else { + }else if(Gdx.input.isKeyPressed(Input.Keys.W)){ + p1.cambiarEstado(p1.ALTO); + }else{ p1.cambiarEstado(p1.STAND); } - this.p1.draw(batch, delta, 150, 10); - this.p2.draw(batch, delta, 250, 10); - return Menu.BATTLE; + contador+=delta; + if(contador>0.5) { + if(cambio) { + p2.cambiarEstado((int)Math.round(Math.random()*2)); + cambio=false; + } + if(contador>1) { + contador=0; + cambio=true; + } + }else { + p2.cambiarEstado(p2.STAND); + } + p1.mover(); + p2.mover(); + p2.recivir(p1.atacar(delta)); + p1.recivir(p2.atacar(delta)); + this.p1.draw(batch, delta); + this.p2.draw(batch, delta); + return darSeleccionado(); } @Override int darSeleccionado() { - - return 0; + if(p1.muerto()||p2.muerto()) { + Menu.menus.remove(Menu.BATTLE); + return Menu.INICIAL; + } + + return Menu.BATTLE; + } + + public void dispose() { + super.dispose(); + p1.dispose(); + p2.dispose(); } } diff --git a/core/src/menus/Caratula.java b/core/src/menus/Caratula.java new file mode 100644 index 0000000..e7fc704 --- /dev/null +++ b/core/src/menus/Caratula.java @@ -0,0 +1,19 @@ +package menus; + +import com.badlogic.gdx.graphics.Texture; +import com.badlogic.gdx.graphics.g2d.SpriteBatch; +import com.badlogic.gdx.graphics.g2d.TextureRegion; + +public class Caratula { + TextureRegion caratula; + String nombre; + public Caratula(String ruta, String nombre, int x, int y, int width, int height) { + this.caratula=new TextureRegion(new Texture(ruta), x, y, width, height); + this.nombre=nombre; + } + + public void draw(SpriteBatch batch, float x, float y) { + batch.draw(this.caratula, x, y); + } + +} diff --git a/core/src/menus/Menu.java b/core/src/menus/Menu.java index 5c93434..8d1ad61 100644 --- a/core/src/menus/Menu.java +++ b/core/src/menus/Menu.java @@ -20,7 +20,8 @@ public abstract class Menu { static final int FHD=2; static final int INICIAL=0; static final int OPCIONES=1; - static final int BATTLE=2; + static final int SELEC=2; + static final int BATTLE=3; int local; static int resolution; BitmapFont font; diff --git a/core/src/menus/MenuInicio.java b/core/src/menus/MenuInicio.java index 9c31d4a..46dde7c 100644 --- a/core/src/menus/MenuInicio.java +++ b/core/src/menus/MenuInicio.java @@ -30,7 +30,7 @@ public class MenuInicio extends Menu{ int darSeleccionado() { switch(this.position) { - case 0:return Menu.BATTLE; + case 0:return Menu.SELEC; case 1:return Menu.OPCIONES; default: return -1; } diff --git a/core/src/menus/MenuSeleccion.java b/core/src/menus/MenuSeleccion.java new file mode 100644 index 0000000..018d63c --- /dev/null +++ b/core/src/menus/MenuSeleccion.java @@ -0,0 +1,76 @@ +package menus; + +import java.util.ArrayList; + +import com.badlogic.gdx.Gdx; +import com.badlogic.gdx.Input; +import com.badlogic.gdx.graphics.Color; +import com.badlogic.gdx.graphics.g2d.SpriteBatch; +import com.badlogic.gdx.graphics.glutils.ShapeRenderer; +import com.badlogic.gdx.graphics.glutils.ShapeRenderer.ShapeType; + +public class MenuSeleccion extends Menu{ + + ArrayList caratulas; + ShapeRenderer shapeDrawer; + + public MenuSeleccion() { + super(); + this.shapeDrawer=new ShapeRenderer(); + this.n_opciones=3; + this.local=Menu.SELEC; + this.caratulas=new ArrayList(); + this.caratulas.add(new Caratula("p1.png", "ryu", 984, 88, 128, 110)); + this.caratulas.add(new Caratula("p2.png", "ken", 228, 565, 128, 110)); + this.caratulas.add(new Caratula("p3.png", "cam", 243,0,128, 110)); + } + + @Override + public int draw(SpriteBatch batch, float delta) { + for(int i=0; i