Retain replay: Unterschied zwischen den Versionen
Zeile 2: | Zeile 2: | ||
<code xml> | <code xml> | ||
− | <retain name=""> | + | <retain name="" id=""> |
... | ... | ||
</retain> | </retain> | ||
</code> | </code> | ||
+ | |||
+ | Neben dem Namen wird auch immer ein ''id''-Attribut benötigt, damit intern später auf die Referenz zugegriffen werden kann. Beachte: Die ID muss im gesamten Dokument eindeutig sein! | ||
Das '''<replay>'''-Tag spielt die unter dem als Attribut 'name' angegebenen Namen abgespeicherte Aktionsfolge ab. Das Speichern muss zuvor mit dem '''<retain>'''-Tag erfolgt sein. Auch ein mehrmaliges Abspielen ist möglich. | Das '''<replay>'''-Tag spielt die unter dem als Attribut 'name' angegebenen Namen abgespeicherte Aktionsfolge ab. Das Speichern muss zuvor mit dem '''<retain>'''-Tag erfolgt sein. Auch ein mehrmaliges Abspielen ist möglich. |
Version vom 9. Dezember 2010, 15:53 Uhr
Das <retain>-Tag speichert seinen Inhalt unausgewertet als Skript unter dem als Attribut 'name' angegebenen Namen. Dieser Inhalt kann dann später mit dem <replay>-Tag abgespielt werden.
<retain name="" id="">
...
</retain>
Neben dem Namen wird auch immer ein id-Attribut benötigt, damit intern später auf die Referenz zugegriffen werden kann. Beachte: Die ID muss im gesamten Dokument eindeutig sein!
Das <replay>-Tag spielt die unter dem als Attribut 'name' angegebenen Namen abgespeicherte Aktionsfolge ab. Das Speichern muss zuvor mit dem <retain>-Tag erfolgt sein. Auch ein mehrmaliges Abspielen ist möglich.
<replay name=""/>
Beispiel (basierend auf dem PDF-Tutorial): Die errungenden EP soll der Held erst am Ende des Quest erhalten. Aus diesem Grund werden die set-Tags zum Steigern der EP in einem Skript hinterlegt.
...
<retain name="EP-1" id="EP-1a">
<set attribute="EP" inc="5"/>
</retain>
...
<retain name="EP-1" id="EP-1b">
<set attribute="EP" inc="5"/>
</retain>
...
<retain name="EP-1" id="EP-1c">
<set attribute="EP" inc="1"/>
</retain>
...
<!-- EP-1 wird ausgeführt und damit die drei hinterlegten set-Tags. Der Held bekommt 11 EP(5+5+1) -->
<replay name="EP-1"/>