Diciembre 15, 2015, 01:00:11 PM Ultima modificación: Diciembre 15, 2015, 08:33:49 PM por zHeMaa
Buenos días makeros!

Estaba probando de hacer un objeto que suba y baje (hasta su posición inicial) en un intervalo de tiempo y así sucesivamente sin parar.

De momento mi codigo es este:

Create:

velocidad = 1;
movimiento = true;



Step:
if movimiento = true
{
    y += velocidad
    alarm[0] = 30
}
else
if movimiento = false
{
    y -= velocidad
    alarm[1] = 30
}



Alarm[0]:

movimiento = false;



Alarm[1]:

movimiento = true;


El problema es que yo veía claro que funcionaria, pero nada, el objeto se va para abajo y no sube al detectar la alarma y la verdad que no tengo ni idea de porque, he tocado varias veces el tema de las alarmas y casi siempre bien, pero esta vez nada..

Ese es el código que tengo de momento, no funciona como os he dicho, pero os lo dejo para que os hagáis una idea de lo que tengo.

Gracias de antemano!! :)

 ;)
Sugerencia :
No cambies la fórmula y += velocidad por
y -= velocidad
En todo caso multiplica velocidad por -1
velocidad *= -1
Ok ??
Saludos !!!
:)

me paso algo similar hace poco y me respondieron amablemente sobre el problema XD
lo que sucede es que el código lo empleas en el evento step, entonces la alarma0 lo que hace es llamarse varias veces, por lo que siempre estará en 30 y no bajará hasta hacerse 0, por lo que nunca ocurrirá el echo de que cambie de direccion y eventualmente suba.

yo digo que uses el evento create para darle la direccion inicial al objeto y desde allí actives la alarma0, y si reemplazas el codigo, por lo que dice Carlos81lp, entonces el objeto va a subir y bajar cada cierto tiempo.

Si, es debido a lo que menciona Yuki. El código podría ser así, usando la sugerencia de carlos18lp:
[gml]
///Create
velocidad = 1;
alarm[0] = 30;

///Step
y += velocidad;

///Alarm[0]
velocidad *= -1;
alarm[0] = 30;
[/gml]

Bien ! Lo logramos yuki y clamud.
Creo que ese código va a andar bien. :)
Saludos . ;)

Muchas gracias! no sabia eso de las alarmas.. funciona perfectamente!  :)