Tengo este código que según mi entender debería funcionar
en create tengo
humo = 0
tiempo_humo = 0
if instance_create(x,y,obj_bala){humo = 1} aquí se crearía el objeto bala y humo pasaría a ser 1
if humo = 1 {scr_humos(); tiempo_humo ++} aquí se crearía el script humos y tiempo_humo pasaría a sumar
if tiempo_humo >= 2{humo = 0} una vez pasado o igualado el tiempo_humo deberia volver humo a 0 y no reproducirse el scr_humos
pero no se porque se sigue reproduciendo lo que hace que se lagee el juego hasta quedar parado ya que scr_humo es un script de particulas y siguen saliendo particulas hasta el infinito
Gracias de antemano a todos
En primera, tienes una alarma o alguna forma de controlar que esto no se reproduzca a la velocidad del room?
Segundo, el orden de tus instrucciones, primero, pones humo en 1 y la siguiente línea compara si en 1, por lo que siempre es verdadero y lo pone en 2, y al final comparas si es dos, por lo que vuelve a ser verdadero y se vuelve a poner en 0.
Sugiero que inviertas el orden solamente y una alarma en caso de que quieras que sea más lento.