Vorlage Dokumentation#after
Allgemeines
   Aufruf
   Einleitung
   Installation
   Konfiguration
   Syntax
Einführung
   MetabefehlsAusdruecke
   MetabefehlsSyntax
   RegulaereAusdruecke
   VordefinierteVariablen
Funktionen
   abs()
   after()
   and()
   antoi()
   before()
   ceil()
   change()
   close()
   crop()
   equals()
   exp()
   flatten()
   float()
   floor()
   int()
   isnothing()
   itoan()
   length()
   log()
   log10()
   match()
   not()
   open()
   or()
   random()
   read()
   readline()
   sign()
   status()
   statustext()
   substr()
   system()
   time()
   tolower()
   toupper()
   typeof()
   write()
   writeline()
   xname()
   xor()
Metabefehle
   #after
   #array
   #break
   #call
   #config
   #const
   #debug
   #default
   #dict
   #else
   #every
   #forever
   #func
   #if
   #ifregion
   #ifunit
   #include
   #input
   #message
   #next
   #notrace
   #proc
   #return
   #sort
   #table
   #tag
   #trace
   #var
   #while
Rückruf-Prozeduren
   CalcUnitCapacities
   CreateRegionHeader
   CreateUnitHeader
   EndRegion
   EndUnit
   OnBuilding
   OnExit
   OnInit
   OnRegion
   OnShip
   OnUnit
   OutputLineFilter
Report-Objekte
   building
   grenze
   partei
   preise
   races
   region
   report
   ship
   things
   unit
Anhang
   Danksagungen
   SkriptDebugger
   VorlageFAQ

#after

Verzögerte Ausführung von Befehlen

Syntax

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

Beschreibung

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.

Parameter

 n  Gibt an, nach wieviel Runden die Befehle ausgefuehrt werden sollen. (1=naechste Vorlage)

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 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

Referenzen

#next

Revision 12 May 2003

Page design, graphics and contents (c) copyright 1999-2004
by S.Schümann and contributing authors