Bah une alarm c'est juste une variable (ou plus exactement un tableau de variables), qui est décrémenté chaque step par GM.
Quand l'alarm atteint 0, alors l'event qui lui est associé est exécuté.
Par exemple si tu met alarm[0] = 5 dans créate, alors :
step 1: alarm[0] descend a 4
step 2: alarm[0] descend a 3
step 3: alarm[0] descend a 2
step 4: alarm[0] descend a 1
step 5: l'event alarm[0] est exécuté.
step 6: alarm[0] vaut -1
C'est aussi pour ça que si tu veux utiliser une alarm dans un step, il vaux mieux vérifier qu'elle n'a pas été déjà lancé avec
if(alarm[0] != -1) alarm[0] = valeur
Il faut aussi savoir qu'une alarme ne se décrémente que si l'event qui lui est associé a été crée.
Je pense avoir fait le tour.
Pour ce qui est du GML as tu lu les tutos ? Y a-t-il un truc que tu n'arrive pas a comprendre ?