Skip to content

VorlageDokuCmdNext

Steffen Schuemann edited this page Oct 12, 2019 · 1 revision

#next

Mehrfache Ausführung von Befehlen

Syntax

#next n { <Befehl1> [: <Befehl2> [: ...]] }

Beschreibung

Dieser Metabefehl sorgt dafür, das in den nächsten n Vorlagen die Befehle in die Zugvorlage eingebaut werden. Dazu werden mit jedem Durchlauf bei dem n ungleich 0 ist die Befehle abgearbeitet und der Wert anschließend verringert.

In Unterprogrammen darf n nur ein Referenz-Übergabeparameter sein, da sonst keine Inkrementierung erfolgen kann.

Parameter

n
Gibt an, nach wieviele Runden die Befehle ausgeführt werden sollen.

Beispiel

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 schließlich 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

Referenzen

#after

Clone this wiki locally