Contenido

Pulsando Botones Diseños responsivos

Creando un Bucle de Juego

Al crear juegos, imágenes o sprites, se agregan a la película para representar los elementos en los juegos como personajes, vehículos o explosiones. Muchas veces un segundo desde dentro de un bucle dependiendo de una lógica del juego es ajustar la posición del sprite. Cada película ha construido en un ciclo del juego, llamado 'Al Actualizar'. Se llama cada vez que las actualizaciones de animación y pueden encontrarse en las propiedades de película.


Creando un Bucle de Juego 1

Cree una nueva película y agregue una imagen, también denominada sprite. Aquí hemos utilizado una pelota de playa.


Import Importar

Haga clic para guardar esta imagen en su ordenador.


BeachBall.png
Creando un Bucle de Juego BeachBall

Creando un Bucle de Juego 2

En las propiedades del primer fotograma de la pelota de playa, desactive Usar Línea de Tiempo e introduzca Ball en el campo 'Script ID'. La desactivación de la línea de tiempo permite controlar la pelota usando JavaScript.


Creando un Bucle de Juego 3

Vamos a hacer que la pelota rebote alrededor de la película. Para esto tenemos que crear algunas variables de velocidad en el script de eventos 'General' de la película. Se asignarán los valores iniciales.



var VelocityX=10,VelocityY=7;

En el evento 'Al Actualizar', podemos hacer que la pelota se mueva mediante la adición de los valores de velocidad a los valores de la posición X y Y de la pelota.



Ball.X+=VelocityX;
Ball.Y
+=VelocityY;

Presione reproductir para probar la película. La pelota debe desplazarse directamente fuera de la película.


Play Play

Creando un Bucle de Juego 6

Las propiedades de posición X y Y de la pelota se localizan en su punto central. Comprobando estos valores en relación a la anchura y la altura de la película, podemos detectar si debe rebotar la pelota. Para hacer que rebote la pelota, sólo hay que invertir la velocidad cambiando su signo.



Ball.X+=VelocityX;
Ball.Y
+=VelocityY;
var MovieWidth=600,MovieHeight=400,BallRadius=50;
if(Ball.X>MovieWidth-BallRadius){VelocityX=-VelocityX;}
if(Ball.X<BallRadius){VelocityX=-VelocityX;}
if(Ball.Y>MovieHeight-BallRadius){VelocityY=-VelocityY;}
if(Ball.Y<BallRadius){VelocityY=-VelocityY;}

Presione reproducir para probar la película otra vez. Ahora debe rebotar la pelota.


Creando un Bucle de Juego 8

Exporte la película a HTML y observe que la pelota se mueve a una velocidad ligeramente diferente a la del reproductor. Esto se debe a a que los distintos dispositivos y navegadores trabajan a velocidades diferentes.


Creando un Bucle de Juego 9

Para mover la pelota a la misma velocidad en todas partes, tenemos que calcular la diferencia de tiempo entre las actualizaciones. El 'Al Actualizar' evento incluye dos variable útil que hacer precisamente eso. TimeChange: El número de fotogramas que han pasado desde la última actualización. SecondsChange: El número de segundos transcurridos desde la última actualización. Estos valores son independientes de si la película ha sido detenida o no. Son simplemente una manera de calcular el tiempo transcurrido desde la última actualización. Para realizar animación corre siempre a la misma velocidad, cada cambio de posición, ángulo u opacidad debe ser multiplicado por el cambio en el tiempo o segundos.



Ball.X+=VelocityX*TimeChange;
Ball.Y
+=VelocityY*TimeChange;
var MovieWidth=600,MovieHeight=400,BallRadius=50;
if(Ball.X>MovieWidth-BallRadius){VelocityX=-VelocityX;}
if(Ball.X<BallRadius){VelocityX=-VelocityX;}
if(Ball.Y>MovieHeight-BallRadius){VelocityY=-VelocityY;}
if(Ball.Y<BallRadius){VelocityY=-VelocityY;}

Prueba de la película en el reproductor y en HTML en el navegador. La pelota debe moverse a exactamente la misma velocidad en ambas.


Pulsando Botones Diseños responsivos
Esta documentación fue traducida del inglés, utilizando un traductor en línea. Le pedimos disculpas si encuentra algún error. Si desea que nos ayude a hacer las correcciones. Hay un editor de traducciones en Hippani Animator (en el menú Ayuda). Que damos claves de licencia gratis a cualquiera que corrige más de 100 frases. Póngase en contacto con nosotros para más detalles.