diff --git a/src/Globales.js b/src/Globales.js index 37889c1..e2a8a57 100644 --- a/src/Globales.js +++ b/src/Globales.js @@ -64,6 +64,7 @@ var sizeMapaAlto = 21; var velocidadEnemigoJefeNormal = 1; var velocidadEnemigoJefeEscapando = 0.75; +var velocidadEnemigoJefeInvecible = 0.1; var ultimoNivel = 2; diff --git a/src/controles/EventosTeclado.js b/src/controles/EventosTeclado.js index b6991ed..55f445a 100644 --- a/src/controles/EventosTeclado.js +++ b/src/controles/EventosTeclado.js @@ -16,15 +16,19 @@ function onKeyDown( event) { break; case 38: controles.moverY = 1; + controles.moverX = 0; break; case 40: controles.moverY = -1; + controles.moverX = 0; break; case 39: controles.moverX = 1; + controles.moverY = 0; break; case 37: controles.moverX = -1; + controles.moverY = 0; break; case 27: controles.pausa = true; @@ -44,26 +48,6 @@ function onKeyUp( event) { controles.disparo = false; controles.continuar = false; break; - case 38: - if ( controles.moverY == 1 ){ - controles.moverY = 0; - } - break; - case 40: - if ( controles.moverY == -1 ){ - controles.moverY = 0; - } - break; - case 39: - if ( controles.moverX == 1 ){ - controles.moverX = 0; - } - break; - case 37: - if ( controles.moverX == -1 ){ - controles.moverX = 0; - } - break; } } diff --git a/src/layers/GameLayer.js b/src/layers/GameLayer.js index 9e8fe24..93f21d7 100644 --- a/src/layers/GameLayer.js +++ b/src/layers/GameLayer.js @@ -299,7 +299,7 @@ class GameLayer extends Layer { // disparar if ( controles.disparo ){ - var nuevoDisparo = this.jugador.disparar(); + let nuevoDisparo = this.jugador.disparar(); if ( nuevoDisparo != null ) { this.espacio.agregarCuerpoDinamico(nuevoDisparo); this.disparosJugador.push(nuevoDisparo); @@ -489,7 +489,7 @@ class GameLayer extends Layer { controles.pausa = false; - for(var i=0; i < pulsaciones.length; i++) { + for(let i=0; i < pulsaciones.length; i++) { // MUY SIMPLE SIN BOTON cualquier click en pantalla lo activa if(pulsaciones[i].tipo == tipoPulsacion.inicio){ controles.continuar = true; diff --git a/src/modelos/EnemigoBoss.js b/src/modelos/EnemigoBoss.js index bc89ca1..bcd135f 100644 --- a/src/modelos/EnemigoBoss.js +++ b/src/modelos/EnemigoBoss.js @@ -66,37 +66,37 @@ class EnemigoBoss extends Enemigo { this.lastUpdate++; if(this.estado != estados.esperando && !this.isInvencible()) { + if(this.estado != estados.escapando && this.estado != estados.escapandoFinal) + this.velocidad = velocidadEnemigoJefeNormal; super.actualizar(); - //if(this.lastUpdate % 30 == 0) { - this.calcularMejorMovimiento(jugador, matrizMapa); - switch (this.orientacion) { - case orientaciones.derecha: - this.vx = this.velocidad * 1; - this.vy = 0; - break; - case orientaciones.izquierda: - this.vx = this.velocidad * -1; - this.vy = 0; - break; - case orientaciones.arriba: - this.vx = 0; - this.vy = this.velocidad * -1; - break; - case orientaciones.abajo: - this.vx = 0; - this.vy = this.velocidad * 1; - break; - } - //} + this.calcularMejorMovimiento(jugador, matrizMapa); if (this.estado == estados.muriendo && this.estado == estados.muerto) { this.vx = 0; this.vy = 0; } } else if(this.isInvencible()) { - this.vx = 0; - this.vy = 0; + this.velocidad = velocidadEnemigoJefeInvecible; + } + + switch (this.orientacion) { + case orientaciones.derecha: + this.vx = this.velocidad * 1; + this.vy = 0; + break; + case orientaciones.izquierda: + this.vx = this.velocidad * -1; + this.vy = 0; + break; + case orientaciones.arriba: + this.vx = 0; + this.vy = this.velocidad * -1; + break; + case orientaciones.abajo: + this.vx = 0; + this.vy = this.velocidad * 1; + break; } }