tengo el sprite del reloj, también ya hice los eventos para el contrarreloj. el problema ahora es hacer que se sume tiempo al reloj y que regrese a unas subimagenes anteriores el sprite cada ves que el jugador hace 4 o 5 en linea, como lo puedo lograr.
Maneja el tiempo con el image_index o el image_number, si quieres que sume hasle la suma o si quieres que reste de igual manera, ejemplo: image_index +=+5 (le suma 5 segundos)
donde tendría que colocar esa acción?. y como le digo al juego que solo sume cuando se hace 4 en linea
Si tu condicion es por ejemplo, cuatro_linea:
if cuatro_linea = true
{Contrarreloj.image_index += 5}
Tomando en cuenta que lo llamas desde el evento Step de un objeto "control" o algo parecido, dependiendo de el caso
Gracias, el código me funciono, lo puse en el evento step, vinculado con un sprite que simula el tiempo. El inconveniente que tengo ahora es que cuando se retrosede la animacion a la imagen 0 se me reinicia el juego ( aclaro que el objeto del sprite lo puse en animation end, y puse que cuando llege a la ultima imagen se reinisie el juego). como hago para que cuando retroceda hasta el inicio de la animación no me reinicie el juego?
Cita de: zangetsu en Mayo 21, 2014, 08:09:19 PM
y puse que cuando llege a la ultima imagen se reinisie el juego). como hago para que cuando retroceda hasta el inicio de la animación no me reinicie el juego?
Quitando la función que reinicia el juego de ese evento
esa funcion es la que puse como gameover del juego. no hay alguna funcion que impida que la animacion pase de la imagen00 a la imagen112 (que es la ultima!!)
alguien sabe como ayudarme, llevo una semana y no puedo solucionar ese maldito contratiempo >:(. :'( :'( :'(
if cuatro_linea = true
{if Contrarreloj.image_index!=122 Contrarreloj.image_index += 5}
Seria poner el limite..... Como cualquier otra duda no veo tu codigo...., imaginate algo asi:
if Contrarreloj.image_index!=0
Contrarreloj.image_index-=1
Dices que tienes 122 imagenes no? supongo que se reduce...... asi al llegar a 0 no comenzara a mostrar imagenes del final y reiniciar todo..... eso?
Si no es asi necesitare mas info....
En las propiedades de objeto tiempo lo tengo asi mira:
en el evento CREATE= variable: image_speed: 0.050 ( porque tengo la room funsionando a 30fps).
en el evento Step= if oControl.combo
{otempo.image_index-=0.05}
.
en el evento ANIMATION END= reiniciar el room.
Lo que me hace el juego con eso es corre el sprite lo mas bien pasando una imagen por ves, al hacer 3 o 4 en linea retrocede el sprite 2 o 3 imágenes, hasta ahí todo bien, el problema es que cuando retrocedio hasta la imagen 00, la que sigue hacia atrás es la ultima imagen del sprite ( la 112), y al volver a correr la animación se termina el juego porque quedo en la ultima imagen. yo quisiera que el retroceso de las imágenes se haga hasta la imagen_00.
probé poniendo los códigos que me distes pero se me vuelve loca la pantalla del juego
No entiendo qué quieres hacer ni por qué estás usando así el evento animation end. Tampoco entiendo por qué tu sprite tiene 112 imágenes ni por qué lo reproduces al revés.
Si lo que quieres es que de la imagen 0 no se pase a la 112 (suponiendo que se reproduce en sentido inverso):
if (image_index == 0)
{
image_speed = 0 //Detener la animación (evitar que salte a 112)
image_index = 111 //Indicar donde comenzar la animación
image_index -= 0.05 //Volver a correr (hacia atrás) la animación (no estoy seguro, pero creo que sería lo mismo si haces image_speed = -0.05
}