Verzögerte Ausführung von Befehlen
#after n { <Befehl1> [: <Befehl2> [: ...]] }
Dieser Metabefehl sorgt dafür, das nach n Auswertungen die Befehle in die Zugvorlage eingebaut werden. Dazu wird n mit jedem Durchlauf verringert und falls es bei Vorlagenerzeugung auf 0 verringert wird, die Befehle in die Vorlage geschrieben.
In Unterprogrammen darf n nur ein Übergabeparameter sein, da sonst keine Inkrementierung erfolgen kann.
n | Gibt an, nach wieviel Runden die Befehle ausgefuehrt werden sollen. (1=naechste Vorlage) |
EINHEIT foo; Gandalf [1,20$] hinten
; Dieser Magier hat noch kein Geld und soll auch
; die kommenden 2 Runden warten (Dann gibt ihm
; einer was. :-))
// #next 2 { ARBEITE }
// #after 3 { LERNE Magie }
ARBEITE
In der nächsten Vorlage steht dann:
EINHEIT foo; Gandalf [1,24$] hinten
// #next 1 { ARBEITE }
// #after 2 { LERNE Magie }
ARBEITE
Es folgt:
EINHEIT foo; Gandalf [1,28$] hinten
// #next 0 { ARBEITE }
// #after 1 { LERNE Magie }
; INFO: #next ist abgelaufen!
ARBEITE
Und schliesslich wird in der 3. Vorlage nach Befehlseingabe LERNE MAGIE erzeugt:
EINHEIT foo; Gandalf [1,32$] hinten
// #next 0 { ARBEITE }
// #after 0 { LERNE Magie }
; INFO: #after ist abgelaufen!
LERNE Magie
#next Revision 12 May 2003
|