diff --git a/assets/escudo_activado3.png b/assets/escudo_activado.png similarity index 100% rename from assets/escudo_activado3.png rename to assets/escudo_activado.png diff --git a/assets/fondofondo6.png b/assets/hud.png similarity index 100% rename from assets/fondofondo6.png rename to assets/hud.png diff --git a/assets/icono_escudo_disponible.png b/assets/icono_escudo_disponible1.png similarity index 100% rename from assets/icono_escudo_disponible.png rename to assets/icono_escudo_disponible1.png diff --git a/assets/municion_activa1.png b/assets/municion_activa.png similarity index 100% rename from assets/municion_activa1.png rename to assets/municion_activa.png diff --git a/assets/ralentizacion1.png b/assets/ralentizacion.png similarity index 100% rename from assets/ralentizacion1.png rename to assets/ralentizacion.png diff --git a/assets/ralentizacion_desactivada1.png b/assets/ralentizacion_desactivada.png similarity index 100% rename from assets/ralentizacion_desactivada1.png rename to assets/ralentizacion_desactivada.png diff --git a/example.wlk b/example.wlk index 691cdacf..f164cd51 100644 --- a/example.wlk +++ b/example.wlk @@ -11,7 +11,7 @@ class ObjetoJuego { image = newImage } } -class Entidades inherits ObjetoJuego{ +class EntidadesVivas inherits ObjetoJuego{ var property vida = 0 var rango_X = 4 var rango_Y = 4 @@ -22,7 +22,7 @@ class Entidades inherits ObjetoJuego{ (otraEntidad.position().y() >= position.y() - rango_Y && otraEntidad.position().y() <= position.y() + rango_Y) } } -class Nave inherits Entidades { +class Nave inherits EntidadesVivas { var property municionesDisponibles = 12 method gastarMunicion(){municionesDisponibles-=1} @@ -51,20 +51,16 @@ class Nave inherits Entidades { } method ponerEscudo(){ vida=2 - image="escudo_activado3.png" + image="escudo_activado.png" } - method cambiarFondo(fondo){ - image = fondo - } } class Bala inherits ObjetoJuego(image = "bala.png"){ } -class Meteorito inherits Entidades(image = "meteorito.png",rango_X=5,rango_Y=5) { +class Meteorito inherits EntidadesVivas(image = "meteorito.png",rango_X=5,rango_Y=5) { var velocidad = 0 - method recibirDisparo() { vida = vida - 1 } @@ -76,8 +72,8 @@ class Meteorito inherits Entidades(image = "meteorito.png",rango_X=5,rango_Y=5) -class Nivel { - var nivel = 1 +class Nivel inherits ObjetoJuego(image= "fondo.jpg", position=game.at(9, 0)) { + var nivel = 1 var property meteoritosEliminados = 0 var property tiempoRestante = 0 var meteoritosParaEliminacion = 10 @@ -86,12 +82,12 @@ class Nivel { var property contadorMunicion = 0 var property contadorEscudo = 0 var property contadorVelocidad = 0 - method incrementarNivel() { nivel += 1 meteoritosEliminados = 0 meteoritosParaEliminacion += 5 velocidadMeteoritos += 1 + return nivel } @@ -103,7 +99,7 @@ class Nivel { contadorVelocidad += 1 if (self.meteoritosRestantes() == 0) { self.incrementarNivel() - self.cambiarFondo() + image= fondo.cambiarFondo(self.nivelActual()) } } @@ -114,7 +110,7 @@ class Nivel { method generarMeteoritoVeloz() = nivel >= 4 method iniciar_nave(){ - const nave = new Nave(vida=1,position=game.at(30,6),image="nave.png",rango_X=4,rango_Y=4,ajuste_X=3,ajuste_Y=2,municionesDisponibles=balas_disponibles) + const nave = new Nave(vida=1,position=game.at(30,6),image="nave.png",rango_X=3,rango_Y=3,ajuste_X=2,ajuste_Y=1,municionesDisponibles=balas_disponibles) return nave } @@ -130,27 +126,10 @@ class Nivel { method aumentarVelocidad(aumento){ velocidadMeteoritos += aumento } - //FONDO - var position = game.at(9, 0) - - method limite_derecho() = 99 - method limite_izquierdo() = 9 - method limite_arriba() = 80 - method limite_abajo() = 0 - - - method position() = position - var property image = "fondo.jpg" - - method cambiarFondo() { - if (nivel >= 2 && nivel <= 5) { - self.image("fondo-nivel-" + nivel + ".jpg") - } - } method crearMeteorito(tipo) { - const x = self.limite_izquierdo().randomUpTo(self.limite_derecho()).truncate(0) + const x = fondo.limite_izquierdo().randomUpTo(fondo.limite_derecho()).truncate(0) const y = 75 var velocidadExtra = 0 var vida = 1 @@ -168,7 +147,18 @@ method crearMeteorito(tipo) { } - +object fondo{ + var property image ="fondo.jpg" + method limite_derecho() = 99 + method limite_izquierdo() = 9 + method limite_arriba() = 80 + method limite_abajo() = 0 + method cambiarFondo(nivel) { + if (nivel >= 2 && nivel <= 5) { + self.image("fondo-nivel-" + nivel + ".jpg") + return self.image() + }else return 1 + }} object sumar_minicion { var property position = game.at(120, 51) var property image = "municion_sinMunicion.png" @@ -188,7 +178,7 @@ object poner_Escudo{ object reducir_velocidad{ var property position = game.at(120, 8) - var property image = "ralentizacion_desactivada1.png" + var property image = "ralentizacion_desactivada.png" method cambiarFondo(fondo){ image = fondo diff --git a/mainExample.wpgm b/mainExample.wpgm index e32cf436..da47c35d 100644 --- a/mainExample.wpgm +++ b/mainExample.wpgm @@ -6,7 +6,7 @@ program meteoricSpace { game.height(75) game.width(150) game.cellSize(25) - game.boardGround("fondofondo6.png") + game.boardGround("hud.png") var juegoIniciado = false var pantallaInicio = new ObjetoJuego(position = game.at(0, 0), image = "pantalla de inicio8.png") @@ -36,25 +36,25 @@ var pantallaGameOver = new ObjetoJuego(position = game.at(0, 0), image = "pantal // Movimiento de la nave keyboard.right().onPressDo({ - if(nave.position().x() < nivel.limite_derecho()) { + if(nave.position().x() < fondo.limite_derecho()) { nave.position(nave.position().right(5)) } }) keyboard.left().onPressDo({ - if(nave.position().x() > nivel.limite_izquierdo()) { + if(nave.position().x() > fondo.limite_izquierdo()) { nave.position(nave.position().left(5)) } }) keyboard.up().onPressDo({ - if(nave.position().y() < nivel.limite_arriba()) + if(nave.position().y() < fondo.limite_arriba()) nave.position(nave.position().up(5)) }) keyboard.down().onPressDo({ - if(nave.position().y() > nivel.limite_abajo()) + if(nave.position().y() > fondo.limite_abajo()) nave.position(nave.position().down(5)) }) @@ -83,7 +83,7 @@ var pantallaGameOver = new ObjetoJuego(position = game.at(0, 0), image = "pantal keyboard.v().onPressDo({ if (nivel.contadorVelocidad() >= 15) { nivel.reducirVelocidad(5) - reducir_velocidad.cambiarFondo("ralentizacion_desactivada1.png") + reducir_velocidad.cambiarFondo("ralentizacion_desactivada.png") nivel.contadorVelocidad(0) } }) @@ -121,25 +121,28 @@ var pantallaGameOver = new ObjetoJuego(position = game.at(0, 0), image = "pantal nivel.aumentarVelocidad(2) } } - }) - //METEORITOS ESPECIALES - - game.onTick(2000, "Aparece Meteorito",{ + + + game.onTick(2000, "Aparece Meteorito",{ if(nivel.generarMeteoritoDuro()){ if (meteoritos.size()< nivel.meteoritosRestantes()){ const meteorito = nivel.crearMeteorito("duro") meteoritos.add(meteorito) game.addVisual(meteorito)} - }}) - - game.onTick(3000, "Aparece Meteorito",{ + }}) + game.onTick(3000, "Aparece Meteorito",{ if(nivel.generarMeteoritoVeloz()){ if (meteoritos.size()< nivel.meteoritosRestantes()){ const meteorito = nivel.crearMeteorito("veloz") meteoritos.add(meteorito) game.addVisual(meteorito)} - }} - ) + }}) + + + + }) + //METEORITOS ESPECIALES + // Movimiento de meteoritos game.onTick(53, "Cae Meteorito", { @@ -154,6 +157,22 @@ var pantallaGameOver = new ObjetoJuego(position = game.at(0, 0), image = "pantal meteoritos.remove(meteorito) game.removeVisual(meteorito) }) + if (nivel.contadorMunicion() == 5) { + sumar_minicion.cambiarFondo("municion_activa.png") + game.removeVisual(sumar_minicion) + game.addVisual(sumar_minicion) + } + if (nivel.contadorEscudo() == 10) { + poner_Escudo.cambiarFondo("icono_escudo_disponible1.png") + game.removeVisual(poner_Escudo) + game.addVisual(poner_Escudo) + } + if (nivel.contadorVelocidad() == 15) { + reducir_velocidad.cambiarFondo("ralentizacion.png") + game.removeVisual(reducir_velocidad) + game.addVisual(reducir_velocidad) + + } }) game.onTick(13, "Verificar Colisiones", { @@ -169,22 +188,6 @@ var pantallaGameOver = new ObjetoJuego(position = game.at(0, 0), image = "pantal meteoritosABorrar.add(meteorito) nivel.eliminarMeteorito()} } - if (nivel.contadorMunicion() == 5) { - sumar_minicion.cambiarFondo("municion_activa1.png") - game.removeVisual(sumar_minicion) - game.addVisual(sumar_minicion) - } - if (nivel.contadorEscudo() == 10) { - poner_Escudo.cambiarFondo("icono_escudo_disponible.png") - game.removeVisual(poner_Escudo) - game.addVisual(poner_Escudo) - } - if (nivel.contadorVelocidad() == 15) { - reducir_velocidad.cambiarFondo("ralentizacion1.png") - game.removeVisual(reducir_velocidad) - game.addVisual(reducir_velocidad) - - } }) })