Has
Mit dem <has>-Tag kann in AOQML überprüft werden, ob ein Held ein Talent oder eine Eigenschaft oder einen Gegestand oder eine gespeicherte Variable hat.
Syntax
<has [item="" [equipped=""]] [talent=""] [quality=""] [name=""] [attribute=""] [min=""] [max=""] [hero-quantity=""] [show="result"] />
- item: Bezeichnung des Gegenstandes, z.B. "Angelschnur mit Haken". Es können auch Waren-Tags verwendet werden.
- equipped: (nur in Kombination mit item) Wenn nicht angegeben, wird der Gegenstand sowohl im Gepäck als auch bei getragener Kleidung/Rüstung/Waffen gesucht. Wenn equipped="true" wird nur in der getragenen Kleidung/Rüstung/Waffe gesucht. Wenn equipped="false" wird nur im Gepäck gesucht.
- talent: Bezeichnung des Talentes, z.B. "Zechen"
- quality: Kurz-Bezeichnung der Eigenschaft, z.B. "ST" (für Stärke)
- attribute: Bezeichnung des Attributes
- name: Bezeichnung einer Variablen/Markierung, siehe u.a. Globale marker, Store/Fetch
Optional zusätzlich dazu:
- min: minimale Anzahl bzw. minimaler Wert, um in den </success>-Zweig zu gelangen
- max: maximale Anzahl bzw. maximaler Wert, um in den </success>-Zweig zu gelangen
Das max-Attribut ist damit praktisch eine Negierung derselben Abfrage mit min und umgekehrt.
- hero-quantity: (greift nur bei Gruppenbegegnungen und in Kombination mit talent/quantity) Wenn z.B. 2 angegeben, müssen zwei Helden die talent oder quantity-Bedingung erfüllen.
Mit show="none" wird die has-Abfrage für den Spieler nicht sichtbar durchgeführt (sie wird versteckt durchgeführt).
In allen Attributen ist die Verwendung besonderer Werte möglich.
Beispiele
<has item="Feuerstein und Stahl">
<success>
[Probe auf Wildnisleben normal um ein Feuer zu entfachen]
</success>
<failure>
[Probe auf Wildnisleben +3 um ein Feuer zu entfachen]
</failure>
</has>
Für die Auswertung siehe <success>...</success> und <failure>...</failure> unter challenge.
<!-- prüfen, ob der Held einen Schuppenpanzer anhat (trägt) -->
<has item="Schuppenpanzer" equipped="true">
<success>
<p>Schöner Schuppenpanzer!</p>
</success>
</has>
Für Gruppen-Begegnungen wurde das Attribut hero-quantity eingeführt, das eine Zahl als Parameter erwartet. hero-quantity gibt an, wie viele Helden die Bedingung erfüllen müssen, um in den success-Pfad zu gelangen.
<!-- NUR FÜR GRUPPENBEGEGNUNGEN !!! Anwendung von hero-quantity
zwei Helden müssen mindestens ein Charisma von 15 aufweisen -->
<has quality="CH" min="15" hero-quantity="2">
<success>
<p>Ihr seid ja ganz schön beeindruckend!</p>
</success>
</has>
Sollte hero-quantity größer sein als die Anzahl der Helden der Gruppe wird hero-quantity intern auf die Anzahl der Gruppenmitglieder gesetzt (wenn 5 angegeben, aber nur 4 Helden in der Gruppe ist der Wert 4).
Waren-Tags können in AOQML bei has und drop beim Attribut item (anstelle der Angabe eines Gegenstandes) benutzt werden. Dazu muss lediglich ein * gefolgt von der Tag-Bezeichnung angegeben werden, Beispiel:
<has item="*Lichtquelle">
<failure>
<p>Du kannst nichtmal deine Hand vor den Augen sehen, so dunkel ist es hier.</p>
</failure>
</has>