Amigos, soy nuevo en este foro y estoy creando mi primer juego en Game Maker 8. Es un juego de plataformas estilo Mario Bross.
El problema que tengo es q quiero q mi personaje, despues de unos 10 segundos de que el usuario no presione nada, haga una animacion (basada en un sprite que ya cree) digamos que, bailando, por dar un ejemplo. Y que cuando el usuario vuelva a presionar cualquier tecla, retorne al estado anterior.
Ojala me haya explicado bien, es mas creo que muchos de ustedes me entenderàn, ya que en muchos juegos cuando uno no hace nada el personaje hace algo, en ocasiones, hasta gracioso.
Saludos y gracias!!!
Usa un contador.
If !(keyboard_check(vk_left) and !(keyboard_check(vk_right)
inactividad += 1
else
inactividad = 0
if (inactividad >= room_speed * 10)
sprite_index = spr_bailando
y en donde pongo ese codigo? es decir, en step de mi personaje principal?
Sí, siempre y cuando te muevas con las flechas de dirección, si no es así, esa parte hay que cambiarla. La variable inactividad se debe declarar en CREATE
Muchas gracias!, lo hice y ya cambia el sprite, pero no se mueve, osea de la animacion del sprite solo me aparece el primer frame :(
Eso tiene qué ver con la manera en que manejas los sprites. Intenta especificando una velocidad de animación
if (inactividad >= room_speed * 10)
{
sprite_index = spr_bailando
image_speed = 0.5
}
ya lo hice pero sale estatico el personaje y si tiene animacion!! :(
Algún código en otra sección está afectando el sprite. Si quieres puedes subir el proyecto para revisarlo
Te lo agradecería mucho. Como lo hago?
Ah! y acabo de descubrir que cuando el personaje (que es un gato) ya cambia el sprite y se queda estatico, si presiono otra tecla que no sea ni derecha ni izquierda y la mantengo presionada, entonces comienza la animacion. Me deje entender?
Ya lo tienes, en el ejemplo puse 2 segundos. Es como lo hizo penumbra basicamente, a ver si asi lo entiendes mejor.
Muchas gracias a todos!! ya lo logre y ya funciona!!!!! :)