Ich weiss nicht genau wie die restliche Programmierung aussieht, und ich hoffe ich rede keinen absoluten Blödsinn da ich doch noch ein ziemlicher Anfänger bin.

Aber:
Vielleicht probierst du es mal von der anderen Richtung aus?
Also mit Kollision Dedection von deinen Gegnern durchführst

z.B.

//Tropfen Funktion
function touch_event()
{
if(you == strahlAction && strahlon== 1)
{
my.death = 1;
}
}

//Tropfen Entity Ausschnitt:
Action ent_trpopfen()
{
my.emask |= ENABLE_IMPACT;
my.event = touch_event;

while(my.death != 1)
{
wait(1)
}
highscore += 10;
todesanimation(); //Explosion oder was weiss ich
ent_remove(me);
}

in deiner strahlAction könntest du dann noch ne Globale Variable einbauen ob der Strahl gerade an ist oder nicht.

(Diese funktion event_touch könntest du dann auch für alle anderen Gegner benutzen und immer nur in der action des Gegners die Punkte definieren)

Hoffe ich konnte dir damit vielleicht weiter helfen