Hola,

alguien me puede ayudar con este problema? Trato de mantener un objeto en una posicion, si esta al final del path definido, quiero que dispare mediante un script ya creado. Lo que pasa que quiero que dispare 3 veces a intervalos, es decir, un disparo cada 30 steps por ejemplo.

Al parecer el problema esta en la alarma definida, ya que en cada step debe de reiniciarse y no se termina de inicializar las variables que tengo definidas en el Evento Alarma. He probado a poner alarm[0]=1 , es decir, que la ejecute en 1 step, y  si hace lo que tiene que hacer.

Alguna idea o ayuda??


En Step Event del objeto:
if y>50 && flag==1{

    path_start(e6_path,4,0,false) //asigno el path
    flag=0;
}


if path_position == 1 { //si esta al final del path
   
    if global.e6num_loop > 2{ //mientras no llegue al maximo (3)
        VER_GLOBALE6num = global.e6num_loop;
        fin=true;
    }
   
    if fin == false{ //si no ha finalizado , sigue disparando
   
    vspeed = 0 ; //detengo la nave
    alarm[0]=30; // >>>>> AQUI ES DONDE TENGO EL PROBLEMA !!
    }
     if fin == true{
         e6_move_out();
     }   
} //endif path_position



Porque estas inicializando siempre una alarma.
Lo mas facil es crear una variable (que haga de alarma falsa).

Por ejemplo, donde falla has de poner algo asi:

Variable+=1 //Ira incrementando
Y cuando variable==30, entonces pones que ocurra lo que querias en el evento alarm.

Luego de llegar a 30 que se reinicie.
Huir y rendirse nunca son la soluci?n, asi que afronta todo con valor.