Paso 7: Animación de Sprites
Hacia el final de la última página, comenzamos a mover nuestro globo sprite por la pantalla usando un para/siguiente bucle.
Esto proporciona el básico "vida" de nuestro sprite, pero ahora vamos a tomar las cosas un paso más.
Vamos a hacer lo que los animadores de Disney han hecho durante años. Poniendo rápidamente el sprite en sí mismo a Marcos adicionales, podemos crear la ilusión de movimiento y animación. Si has asomó en la DEMO. Archivo de la SPR, realmente tiene cuatro globos diferentes, a partir de sprite 4, cada uno con un pequeño adelanto.
Añadir las siguientes subrutinas nuevo a la parte inferior de su programa bajo el comando de LoadSpr...
Sub Animate sprite,start,end,delay I2C WRITE PC,0,6,1,219,sprite,start,end,delay End Sub Sub MoveSpeed sprite,xdelay,ydelay,xinc,yinc I2C Write PC,0,7,1,220,sprite,xdelay,ydelay,xinc,yinc End Sub
Estas dos nuevas subrutinas que pueda animar y mover sprites en el modo "piloto automático". Estos comandos son perfectos para situaciones cuando se necesita la acción de fondo a suceder automáticamente. Como los registros de balanceo en la trampa de juego o los tiburones nadando en la caza de la selva juego.
Vamos a configurar nuestro globo en movimiento.
Agregue los siguientes comandos debajo de la línea de LoadSpr 1,4,100,175,0,0 en tu programa:
Animate 1,4,7,30 'Animate Balloon - frames 4-7, speed 30 MoveSpeed 1,3,5,1,-1 'Put the Balloon in motion
Nuestro globo está animando ahora Marcos sprite 4-7 en velocidad de 30 y que viaja a través y hacia arriba!
El comando Animate es probablemente muy claro.
Animar programa Sprite, sprite imagen, imagen de sprite final, velocidad de inicio.
La subrutina de la velocidad de movimiento ha toma un examen más detenido.
Velocidad de movimiento ha programa Sprite, xdelay, ydelay, xinc, yinc
Xdelay y Xdelay se pueden establecer con velocidades entre 0 y 50. (el 0 se detiene y 50 es más lento)
Xinc y Yinc se define generalmente en entre -2...-1..1..2.
XINC, -1 queda de la posición actual, 1 es de posición actual por pixel
YINC, -1 es 1 píxel de la posición, 1 por 1 píxel de la posición actual.
A mayor los números utilizados en Xinc y Yinc, se moverá más rápido el sprite.
Una vez más, los dos comandos son ideales sprites deben ser parte del fondo.
¿Observe cómo el balón simplemente envuelve la pantalla cuando se alcanza el borde?