Hola buenas, este es uno de los principales problemas y esque la alarma se ejecuta cuando le sale de los huevos (es error mio lo se xD).
Bueno en step tengo este codigo.
STEP
if (mouse_x>view_xview[0]+32 and mouse_x<view_xview[0]+32+32 and mouse_y>view_yview[0]+448 and mouse_y<view_yview[0]+448+32) and mouse_check_button(mb_left) {
if global.oro >= 10 {
cursor_sprite = spr_escaleras
alarm[0] = room_speed * 1
}
Bien al pinchar se me pone el cursor con dicho sprite, pero la alarma no me corre.
Alarma 0
global.construir = 1
show_message('FFJASDfasdjks')
El show message es para mostrar si le tira xD ¿Algun consejillo?
el código de la alarma esta bien igual que cuando la seteas, por descarte el error debería estar en el if prueba dejando una única condición obvia para probar si ese es el error
El show_message deberías meterlo dentro del primer if, para ver si la condición se cumple, si la condición nunca se cumple, la alarma nunca va a iniciar
PERO, como la condición está en STEP, si se cumple recurrentemente, la alarma tampoco va a avanzar, porque en cada paso va a reajustarse al mismo valor de room_speed * 1.
Resumiendo: cuando se usan alarmas en STEP, la condición debe hacerse de tal manera que sólo sea cierta durante un solo paso, y a los siguientes ser falsa, de lo contrario la alarma nunca "correrá"
¿Tipo asi? xS
CREATE
alarma = 0
STEP
if (mouse_x>view_xview[0]+32 and mouse_x<view_xview[0]+32+32 and mouse_y>view_yview[0]+448 and mouse_y<view_yview[0]+448+32) and mouse_check_button(mb_left) {
if global.oro >= 10 {
cursor_sprite = spr_escaleras
alarma = 1
alarm[0] = room_speed * 1
}
ALARMA 0
global.construir = 1
show_message('FFJASDfasdjks')
alarma = 0
Yo me refería a algo así:
if (mouse_x>view_xview[0]+32 and mouse_x<view_xview[0]+32+32 and mouse_y>view_yview[0]+448 and mouse_y<view_yview[0]+448+32) and mouse_check_button(mb_left) {
show_message('FFJASDfasdjks')
//if global.oro >= 10 {
//cursor_sprite = spr_escaleras
//alarma = 1
//alarm[0] = room_speed * 1
}
sólo para ver si la condición se cumple, por eso puse las demás líneas como comentarios, si se muestra el mensaje, entonces la condición si funciona, pero aun quedaría hacer dentro de ese if la alarma se inicie sólo una vez , de lo contrario jamás llegaría a cero, y el evento de alarma nunca se ejecutaría.
Pues no..no me sale, nunca se me ha dado demasiado bien el tiempo :S