Cómo saltar y correr en plataformas en su juego html5

Video: 2.- Curso Juego Plataformas con HTML5 - Crear proyecto

El “saltar y correr” plataforma de género ha sido durante mucho tiempo un género de juegos electrónicos básico para una buena razón. Se proporciona una agradable experiencia interactiva para su juego HTML5 y es relativamente fácil de modificar para muchos tipos diferentes de juegos.

Video: Tutorial Juego Horizontal Runner en Game Maker

El elemento esencial de un juego de plataformas es - además - plataformas. La acción sucede generalmente con una vista lateral y una personaje del jugador que responde a la gravedad. Normalmente, el jugador se desplace por las plataformas y luchar contra los enemigos de disparar, saltar, o combate cuerpo a cuerpo.

Mi prototipo muestra las características esenciales. Incluye un personaje de jugador que puede saltar y aterrizar en las plataformas. plataformas que pueden arrastrarse se incluyen para que pueda editar la escena y ver cómo el personaje interactúa con diversas configuraciones de la plataforma.

códigos de salto y el juego terrestre

La clave para un juego de desplazamiento lateral es el saltar y aterrizar mecánico. Usar una que cae propiedad para realizar un seguimiento de si el personaje debe responder a la gravedad o no. Aquí está el código de la checkKeys () método que lee la flecha hacia arriba y hace que el personaje salte.

 si (keysDown [K_UP]) {if (this.falling == false) {this.setImage ("characterUp.jpg") -this.y - = 5-this.falling = true-this.addVector (0, 15) -} // fin if} else {checkFalling () -} // fin si

los checkFalling () función comprueba cada uno de los bloques. Si el personaje no está en contacto con cualquiera de los bloques, cayendo a establecer cierto. Esto hará que la caída personaje una vez que se mueve fuera de un bloque.

Cómo venir para un aterrizaje

La interacción entre el personaje y los bloques es importante porque desea que el personaje deje de moverse antes de golpea un bloque. Esto requiere una técnica llamada detección de colisiones predictivo, que suena mucho más complicado de lo que es. Aquí está el mecanismo:

  1. Mover el elemento de forma normal.

    Hacer los cálculos para mover el objeto (en este caso el personaje) de forma normal. Tenga en cuenta que el personaje no se dibuja todavía, pero los nuevos valores x e y se han determinado mediante la adición dx y dy.

  2. Compruebe si hay una colisión.

    Comprobar para ver si el personaje ha colisionado con cualquier cosa (en este caso, cada bloque de la matriz de bloques).

  3. Si se produce una colisión, una copia de seguridad del personaje.

    Estás comprobación de una colisión, pero no desea que el carácter se superponga con el bloque. En su lugar, usted está interesado en saber si el vector de movimiento actual podría causar una colisión.

  4. Sustraer dx de x, dy de y.

    Una colisión ha sido detectado, por lo que resta de colisión restando el vector de movimiento. Esto se traduce en el ser sprite, donde se inició antes de que se detecta la colisión.

  5. Ajustar la velocidad del sprite a cero.

    Ajustar la velocidad del sprite a cero por lo que la siguiente trama no hace que el sprite para chocar contra el bloque de nuevo.

La forma más fácil de obtener el comportamiento predictivo es añadir una apoyo() método para la Duende objeto, que puede ser llamado en cualquier tipo de colisión:

 tCharacter.backup = function () {// Estoy superposición algo que no debería compartir el espacio con // volver a donde estaba antes de la colisión fue detectedX = this.x - this.dx-Y = this.y - this.dy-this.setPosition (X, Y) -} // copia de seguridad final

Cómo hacer bloques que pueden arrastrarse

Este juego cuenta con otra característica muy interesante: Cada bloque se puede arrastrar a una nueva posición para que pueda experimentar con otras colocaciones de bloques. Hacer cualquier sprites que pueden arrastrarse es relativamente fácil. Basta con comprobar para ver si está siendo hecho clic en el bloque. Si es así, establecer su posición igual a la posición del ratón:

 tBlock.checkDrag = function () {// permitir que el bloque que se draggableif (this.isClicked ()) {this.setPosition (scene.getMouseX (), scene.getMouseY ()) -} // fin if} // fin checkDrag

¿Cómo mejorar el juego de plataformas

El juego de la plataforma está abierta a muchos tipos de mejoras:

Video: Juego de Plataformas en Scratch

  • El uso de múltiples niveles. Los bloques predeterminados son fáciles de construir y trabajar con ellos, pero no son muy interesantes. Experimentar con diferentes formas de bloque y posiciones para construir niveles interesantes. Puede almacenar las posiciones de los bloques de matrices para hacer nuevos niveles, y simplemente volver a utilizar los bloques.

  • Considerar un enfoque basado en el azulejo. El ejemplo plataforma utiliza un esquema de colocación de bloques arbitraria, pero también se puede utilizar un enfoque basado en el azulejo.

    Video: Rogue Soul - Juego de correr, saltar y disparar - Zonas 1 y 2

  • Añadir objetivos y enemigos. Una mejora obvia a este juego sería incluir algún objetivo de alcanzar con algún obstáculo en el camino. Considere cómo puede aplicar personajes enemigos. Van a pasar? Van a disparar? También considerar la adición de potenciadores para mejorar la velocidad de salto, añadir un arma a distancia, o cualquier otra cosa que se pueda imaginar.

  • Añadir más potencia de fuego. Añadir un arma al personaje para que pueda disparar. En scrollers laterales, el arma se dispara normalmente en posición horizontal, pero se puede jugar una vuelta para conseguir el comportamiento que desea.

  • Mejorar la física. La dinámica de este juego funcione bastante bien, pero se pueden mejorar con un poco más ajustes. Sigue el esquema general del programa existente, sino ver si se puede hacer que funcione exactamente como lo desea.

Artículos Relacionados