El quinto tutorial de esta serie veremos como animar el salto de nuestro personaje, traducido de Day 5 – Jumping.
Día 5, Saltando
¡Todo el código y los recursos para este tutorial están en github!
En el día 4, hemos añadido un pequeño marco de 3 animación en ejecución a nuestro jugador. ¡Ahora lo vamos a hacer saltar!
Para ponerse al día, descarga el día 4 de github
Abre el IDE DIV. Si decides continuar en la pantalla de inicio, deberíamos estar dónde estábamos cuando nos fuimos ayer.
Lo primero que tenemos que hacer es crear nuestro sprite saltar.
Cierra todos los mapas abiertos a través del menú MAP, y has una copia del gráfico 1 como lo hicimos anteriormente.
Edita el nuevo gráfico con el editor de gráficos para mostrar nuestro personaje en un movimiento de salto.
Una vez que haya terminado, arrastra esta imagen a tu FPG y dále la ID 5.
Y.png" />
Ahora el código saltar!
Agrega estas tres nuevas variables privadas en el PRIVATE de tu PROCESS del jugador justo debajo de animcount de la siguiente manera:
1 2 3 |
jumping = FALSE; jump_offset = 0; jump_power = 8; |
La variable “jumping” que usaremos para saber si estamos saltando (o no)
La variable “jump_offset” se va a utilizar para realizar un seguimiento de cuántos píxeles para saltar cada “FRAME”
La variable “jump_power” se utiliza para almacenar cuánto puede saltar nuestro jugador.
Veamos cómo se usan:
Vamos a usar la barra de espacio para saltar, agregamos la condición para comprobar que se presiona la tecla espacio en nuestro código:
1 2 3 4 |
IF ( KEY(_space) && jumping == FALSE ) jump_offset = -jump_power; jumping = TRUE; END |
Este código hace dos cosas. Primero comprueba si la barra espaciadora está presionada, y luego verifica si ya estamos saltando. ¡Si lo estamos, no queremos saltar de nuevo! Más tarde cambiaremos esto para también comprobar si estamos de pie en el suelo.
Ahora debajo de esto, agrega otra instrucción IF, para hacer algunos cálculos en la variable Y.
1 2 3 4 5 6 7 8 9 |
IF ( jumping == TRUE ) y = y + jump_offset; jump_offset = jump_offset +1; graph = 5; IF ( jump_offset > jump_power ) jumping = FALSE; graph = 1; END END |
Esta rutina de salto simplificada cambia la variable Y por un valor diferente de cada cuadro y establece el gráfico como 5 (que es nuestro sprite de salto), hasta que el desplazamiento vuelva a su valor original. En ese punto, se pone de nuevo a FALSE, y devuelve el gráfico al sprite de marcha.
Ejecuta el código con F10, debemos obtener algo que se asemeja a alguna animación de salto razonable
Palabras clave aprendidas en esta lección:
1 2 3 4 5 6 7 8 |
TRUE FALSE IF() KEY() _space END graph y |
ufff genial, ojalá tuviese tiempo para dedicarme a esto.
Siempre se puede, una hora al día se hace algo de a poco 🙂
menudo trabajo, creo que esta bueno para practicarlo los domingos 🙂
Hola, he visto los tutoriales y me han encantado ,la verdad es que no hay nada de tutoriales en español de este programa y se agradece este tutorial.
Porque no te animas ha sacar mas, yo estoy empezando con bennugd,pero div que es mas o menos igual tambien me gusta.
Podrias sacar tambien de bennugd,bueno me despido y te animo a que saques mas tutoriales.Un saludo y hasta luego
Gracias por la visita :), estos realmente fueron la traducción de unos tutoriales en inglés, probablemente en un futuro cercano haga tutoriales propios de DIV, de bennugd hace rato que no lo uso, no lo descarte pero es menos probable
Hola,gracias por responderme,estare pendiente del blog para ver esos futuros tutoriales de div.Porque la verdad me esta gustando mucho este programa,hasta pronto