Auslösertechniken: Unechte Timer
Unechte Timer haben letztendlich den gleichen Effekt wie die "Warten"-Funktion: Ein Auslöser wird nach einer bestimmten Zeitspanne ausgeführt. Der große Unterschied zur "Warten"-Funktion ist jedoch, dass unechte Timer andere Auslöser nicht behindern; Unechte Timer eignen sich also besonders dann, wenn mehrere Skripts parallel ablaufen sollen.
Bei einem unechten Timer werden Statistiken benutzt, die sonst nicht benötigt werden, wie z.B. die Todesfälle von Vespin-Geysiren. Da Geysire nicht sterben können, wird dieser Zähler nur von den eigenen Auslösern beeinflußt. Deutlich wird das System z.B. in der achten BroodWar-Mission der Terraner, in der ja bekannterweise alle zehn Minuten ein Torrasque erstellt wird:
Timer starten:
- Spieler 1
- Timer ist eingestellt
- Totalverluste einstellen auf: Erhöhen um 2 für Vespin-Geysir im Besitz von Spieler 1
- Auslöser aufbewahren
Aktion ausführen und Timer zurückstellen:
- Spieler 1
- Aktueller Spieler mußte bei Vespin-Geysir mindestens 600 Todesfälle hinnehmen.
- Erstelle 1 Torrasque (Ultralisk) bei Region 0 für Spieler 2
- Totalverluste einstellen auf: Gesetzt auf 0 für Vespin-Geysir im Besitz von Spieler 1
- Auslöser aufbewahren
Erklärung:
Der erste Trigger dient einfach als Sekundenzähler, wobei die Totalverluste an Vespin-Geysiren die verstrichenen Sekunden
angeben. Sie werden pro Skriptablauf um 2 erhöht, da ein Auslöser durch Auslöser aufbewahren
alle zwei Sekunden ausgeführt
wird (falls dies nicht durch einen Hypertrigger geändert wurde!).
Im zweiten Skript wird einfach nach 600 Sekunden (=10 Minuten) eine Aktion ausgeführt – hier das Erstellen eines Torrasques – und der Timer wieder auf 0 gesetzt.
Solange also der Schalter Timer
eingestellt ist, wird Spieler 1 alle zehn Minuten einen Torrasque erhalten.