Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: LuisGM en Agosto 04, 2010, 06:19:30 PM

Título: ?Por que no me trabaja este scrip? if not image_index = 11
Publicado por: LuisGM en Agosto 04, 2010, 06:19:30 PM
Hola! coloque este scrip en el step de un personaje y no ocurre nada  ???

if not image_index = 11
{
image_index+=1
}

La imagen queda paralizada, revice que el sprite se iniciara en cero, es mas, coloque en create este scrip: image_index = 0 y nada. He probado ya varias cosas y la verdad no se que hacer.

Saludos y gracias de antemano!
Título: Re: ?Por que no me trabaja este scrip? if not image_index = 11
Publicado por: Alfonsos1 en Agosto 04, 2010, 06:27:55 PM
tenes codigo en el evento draw?
Título: Re: ?Por que no me trabaja este scrip? if not image_index = 11
Publicado por: LuisGM en Agosto 04, 2010, 06:43:12 PM
Hola, no, ninguno...
Título: Re: ?Por que no me trabaja este scrip? if not image_index = 11
Publicado por: MatuX en Agosto 04, 2010, 10:05:24 PM
debes de tener mal el valor almacenado de image_index y que y por eso no te cumple esa condicion fijate que balor toma image_index 
Título: Re: ?Por que no me trabaja este scrip? if not image_index = 11
Publicado por: LuisGM en Agosto 04, 2010, 10:36:23 PM
Hola, no entiendo  ??? a que te refieres con el valor almacenado?
Título: Re: ?Por que no me trabaja este scrip? if not image_index = 11
Publicado por: NOKAUBURE en Agosto 05, 2010, 12:36:00 PM
lo que te pasa esque esta mal formulado.

Tu le estas diciendo que si la image_index no es 11, que cambie a la 2, por eso se paraliza, porque ese if se cumple siempre
Título: Re: ?Por que no me trabaja este scrip? if not image_index = 11
Publicado por: Texic en Agosto 05, 2010, 01:06:41 PM
No NOKABURE, no se cambia a la iamgen 2, suma de a una, mir? ese c?digo y te das cuenta
Yo usar?a esto, ya que no frecuento usar el not
if image_index <> 11
{
image_index+=1
}
Pero probablemente no tenga nada q ver. Puede que haya alg?n otro c?digo interfiriendo con este, como un cambio de sprite (Aunque sea a la misma), o algo
Qu? es lo que quieres hacer? Que la animaci?n se detenga al final del sprite?
Título: Re: ?Por que no me trabaja este scrip? if not image_index = 11
Publicado por: Raul_Omega en Agosto 05, 2010, 07:46:01 PM
Cita de: LuisGM en Agosto 04, 2010, 06:19:30 PM
Hola! coloque este scrip en el step de un personaje y no ocurre nada  ???

if not image_index = 11
{
image_index+=1
}

La imagen queda paralizada, revice que el sprite se iniciara en cero, es mas, coloque en create este scrip: image_index = 0 y nada. He probado ya varias cosas y la verdad no se que hacer.

Saludos y gracias de antemano!

Si que ocurre algo, lo que pasa es que es tan rapido que no te daras cuenta. Tu codigo hace esto:
A cada step le suma 1 a image_index y cuando llega a image_index=11 se para. El codigo actua durante los 11 primeros step, si tienes puesta la velocidad del juego a 30 steps/segundo, tu codigo deja de funcionar en 11/30 segundos.

?Que querias conseguir con ese codigo?

PD: Se dice script, no scrip (no es por ser tiquismiquis pero es que duele a la vista), ademas lo que tu habras puesto en step es una pieza de codigo y no un script.
Título: Re: ?Por que no me trabaja este scrip? if not image_index = 11
Publicado por: NOKAUBURE en Agosto 05, 2010, 08:43:40 PM
CitarNo NOKABURE, no se cambia a la iamgen 2, suma de a una, mir? ese c?digo y te das cuenta
Ha modificado el mensaje, antes decia = 2 xD

Pues el de arriba tiene razon, es un script bastante inutil, di que quieres hacer, asi es mas facil, porque para dejar la image_index en 11, mejor pon image_speed = 0 y image_index = 11
Título: Re: ?Por que no me trabaja este scrip? if not image_index = 11
Publicado por: LuisGM en Agosto 05, 2010, 09:50:24 PM
Ok, lo que pasa es que tengo una imagen con una secuencia ubicada en mi barra? esta secuencia se divide en 35 subim?genes. Lo que pasa es que mi personaje tiene tres estado diferentes y obviamente cada estado est? identificado en una de las subimagenes, con esto quiero lograr que cada vez que mi personaje cambie de estado la secuencia se active (esto para dar un efecto giratorio) hasta llegar al estado correspondiente.
Originalmente la pieza de c?digo es as?:

if global.estado = 1
{
if not image_index = 11
{
image_index+=1
}
}

Pero el global.estado no tiene nada que ver porque se lo quite para probar y no ocurri? nada diferente.
Título: Re: ?Por que no me trabaja este scrip? if not image_index = 11
Publicado por: Raul_Omega en Agosto 06, 2010, 02:36:20 AM
Cita de: LuisGM en Agosto 05, 2010, 09:50:24 PM
Ok, lo que pasa es que tengo una imagen con una secuencia ubicada en mi barra? esta secuencia se divide en 35 subim?genes. Lo que pasa es que mi personaje tiene tres estado diferentes y obviamente cada estado est? identificado en una de las subimagenes, con esto quiero lograr que cada vez que mi personaje cambie de estado la secuencia se active (esto para dar un efecto giratorio) hasta llegar al estado correspondiente.
Originalmente la pieza de c?digo es as?:

if global.estado = 1
{
if not image_index = 11
{
image_index+=1
}
}

Pero el global.estado no tiene nada que ver porque se lo quite para probar y no ocurri? nada diferente.

Vale tu problema es que la animacion sucede demasiado rapido, una forma de resolverlo es lo siguiente:

if not image_index = 11
{
t+=1;
if t>=5 then {t=0; image_index+=1}
}


De esta forma, cada 5 steps, image_index sumara 1, asi la animacion completa se desarrollara en un tiempo de 11*5/30=1.83 segundos (suponiendo una velocidad de 30 setps/segundo). Variando ese t>=5 conseguiras la velocidad de animacion que desees.

Un saludo!

Título: Re: ?Por que no me trabaja este scrip? if not image_index = 11
Publicado por: LuisGM en Agosto 06, 2010, 06:42:52 PM
Hola Raul_Omega, intente lo que me dijiste de:
if not image_index = 11
{
t+=1;
if t>=5 then {t=0; image_index+=1}
}


y sigue sin funcionar, inclusive lleve el t>= 5 hasta t>= 30 y nada. Simplemente la imagen no se mueve.  ??? No entiendo que puede ocurrir.
Título: Re: ?Por que no me trabaja este scrip? if not image_index = 11
Publicado por: slampdesign en Agosto 07, 2010, 10:48:53 PM
hola luis GM, parecera raro, pero creo q estas equivocado(a mi parecer), segun tu pregunta inicial:

CitarLa imagen queda paralizada
, el image index, sirve para ver que imagen esta corriendo en ese momento.

AHORA EL "image_angle" es para que (por decir algo) para que ruede en su mismo eje.

Espero que sea de ayuda... saludos!!!
Título: Re: ?Por que no me trabaja este scrip? if not image_index = 11
Publicado por: LuisGM en Agosto 08, 2010, 03:00:34 AM
Hola slampdesign, la secuencia de sprite da la sensacion de que la forma de la imagen gire... no puedo usar el image_angle ya que no necesito que realmente la imagen gire, esto porque el efecto de la imagen girando es como 3D y dudo que el image_angle ayude. En todo caso gracias por la ayuda  :D