Änderungen

Wechseln zu: Navigation, Suche

Has

3.076 Bytes hinzugefügt, 19:48, 15. Jan. 2011
has val="" möglich
== Syntax ==
<code xml n>
<has [item="" [equipped=""]] [talent=""] [quality=""] [name=""] [attribute=""] [val=""] [min=""] [max=""] [hero-quantity=""] [show="result"] />
</code>
Optional zusätzlich dazu:
*'''val''' oder '''value''' (nur in Kombination mit '''attribute''' oder '''name'''!): prüft, ob das zu prüfende Attribut oder die zu prüfende Variable eine konkrete Ausprägung besitzt
*'''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 [[Gruppe|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 [[Besondere Werte|besonderer Werte]] möglich.
 
Für die Auswertung siehe '''<success>...</success>''' und '''<failure>...</failure>''' unter [[challenge]].
== Beispiele ==
 
=== has item ===
Mit <has item=""> lässt sich prüfen, ob der Held einen oder mehrere bestimmte Gegenstände dabei hat.
 
<code xml n>
<has item="Feuerstein und StahlZunderdose">
<success>
[Probe auf Wildnisleben normal um ein Feuer zu entfachen]
</code>
Für die Auswertung siehe '''Das ODER-Zeichen "|" erlaubt auch alternative Gegenstände, z.B.:<code xml n><has item="Zunderdose|Wasserdichte Zunderdose|Feuerstein und Stahl"> <success>... [Probe auf Wildnisleben normal um ein Feuer zu entfachen] </success>''' und ''' <failure>... [Probe auf Wildnisleben +3 um ein Feuer zu entfachen] </failure>''' unter [[challenge]].</has></code>
=== equipped ===
Wenn ''equipped'' nicht angegeben, wird der Gegenstand (item) sowohl im Gepäck als auch bei getragener Kleidung/Rüstung/Waffen gesucht.<br />
Wenn ''equipped="true"'' wird nur in der getragenen Kleidung/Rüstung/Waffe gesucht.<br />
Wenn ''equipped="false"'' wird nur im Gepäck gesucht.
<code xml n>
<!-- prüfen, ob der Held einen Schuppenpanzer anhat angelegt hat (gerade trägt) -->
<has item="Schuppenpanzer" equipped="true">
<success>
<p>Schöner Ein schöner Schuppenpanzer, den du da trägst!</p> </success></has></code> === min und max ===<code xml n><!-- prüfen, ob der Held das Talent "Fechtwaffen" auf mindestens 5 gesteigert hat --><has talent="Fechtwaffen" min="5"> <success> <p>Du verstehst etwas von Fechtwaffen!</p> </success> <failure> <p>Du kennst dich mit Fechtwaffen bisher nicht besonders gut aus!</p> </failure></has> <!-- prüfen, ob der Held die Eigenschaft FF <= 12 hat --><has quality="FF" max="12"> <success> <p>Du bist nicht besonders fingerfertig!</p> </success></has> <!-- prüfen, wie gut die Sprache 'Zwergisch' bekannt --><has talent="Zwergisch" max="3"> <success> <p>Du verstehst kein Wort, von dem, was die Zwerge sagen.</p> </success></has></code>   === val ===Das Attribut '''val''' ermöglicht die Prüfung auf ganz bestimmte Ausprägungen. Es steht bisher nur in Kombination mit '''attribute''' und '''name''' zur Verfügung und sollte nicht mit min- oder max- kombiniert werden.<code xml n><!-- Beispiel 1: Variable auf bestimmte Ausprägung prüfen --><store name="meine-testvariable" scope="quest">Leberkäs</store>...<has name="meine-testvariable" val="Leberkäs"> <success> <!-- die Variable hat den Inhalt 'Leberkäs' --> </success> <failure> <!-- die Variable ist nicht mehr mit 'Leberkäs' beschrieben. Der Wert wurden zwischendurch geändert. --> </failure></has> <!-- Beispiel 2: ein Heldattribut auf bestimmte Ausprägung testen --><has attribute="race" val="Mensch"> <success> <p>Du bist ein Mensch.</p>
</success>
<failure><
<p>Du bist kein Mensch.</p>
</failure>
</has>
</code>
=== hero-quantity ===
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.
<code xml n>
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).
<code xml n>
<!-- prüfen, ob alle Helden der Gruppe die Gesinnung 'getreu' (steht für gesetzestreu) haben -->
<has attribute="gesinnung" val="getreu" hero-quantity="all">
<success>
<p>Ihr seid rechtschaffende Helden!</p>
</success>
</has>
</code>
== Waren-Tags ==
[[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 [[Waren-Tags|Tag-Bezeichnung]] angegeben werden, Beispiel:
<code xml n>
<has item="*Lichtquelle">
<success>
<p>Du machst dir erstmal Licht.</p>
</success>
<failure>
<p>Du kannst nichtmal deine Hand vor den Augen sehen, so dunkel ist es hier.</p>
</failure>
</has>
 
<!-- prüfen, ob mind. 15 Nahkampfwaffen dabei -->
<has item="*Nahkampfwaffe" min="15">
<success>
<p>Du trägst ja ein ganz schönes Waffenarsenal mit dir herum...</p>
</success>
</has>
</code>

Navigationsmenü