Take: Unterschied zwischen den Versionen

Aus AntamarWiki
Wechseln zu: Navigation, Suche
(max= im Beispiel)
(Gefüllten Behälter aufnehmen)
 
(15 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 4: Zeile 4:
  
 
<code xml n>
 
<code xml n>
<take [item=""] [count=""] [max=""] [from="" [target=""] [takeAllAtOnce=""] [immediately=""] [equip="false"] [quality="100"] [show="none"]/>
+
<take [item=""] [count="1"] [max=""] [from=""] [target=""] [takeAllAtOnce=""] [immediately=""] [group-sync="true"] [equip="false"] [quality=""] [show="none"]/>
<take [item=""] [count=""] [max=""] [from="" [target=""] [takeAllAtOnce=""]][immediately=""] [equip="false"] [quality="100"] [show="none"]>Bezeichnung</take>
+
<take [item=""] [count="1"] [max=""] [from=""] [target=""] [takeAllAtOnce=""] [immediately=""] [group-sync="true"] [equip="false"] [quality=""] [show="none"]>Bezeichnung</take>
 +
<take [item=""] [count="1"] [max=""] [quality=""]>
 +
  <contains item="" [count="1"] [quality=""] />
 +
</take>
 
</code>
 
</code>
  
*'''item''': für eine menschenlesbare Bezeichnung des Gegenstandes oder ein [[Besondere Werte|besonderen Wert]]
+
*'''item''': die Bezeichnung des Gegenstandes (siehe [[Aktuelle_Warenliste]]).
*'''count''': für die Anzahl (default ist 1, auch [[Besondere Werte]] sind möglich)
+
*'''count''': für die Anzahl (default ist 1)
 
*'''max''': Maximale Anzahl, die der Held hinterher haben soll. Wirkt nicht bei Inventaren und begrenzt nur zusätzliche Items, nicht die der Held bereits hat.
 
*'''max''': Maximale Anzahl, die der Held hinterher haben soll. Wirkt nicht bei Inventaren und begrenzt nur zusätzliche Items, nicht die der Held bereits hat.
*'''from''': Erlaubt den Zugriff auf ein [[Inventar]]
+
*'''from''': Ermöglicht die Entnahme von Items aus einem zuvor festgelegten [[Inventar]].
*'''target''': Sobald die unter ''count'' angegebene Menge an Gegenständen aufgenommen wurde, wird automatisch die Szene aufgerufen, die unter ''target'' angegeben ist. Wird kein ''target'' angegeben, findet auch keine direkte Weiterleitung statt.
+
*'''target''': Sobald die unter ''count'' angegebene Menge an Gegenständen aufgenommen wurde, wird automatisch die Szene aufgerufen, die unter ''target'' angegeben ist. Wird kein ''target'' angegeben, findet keine Weiterleitung auf eine andere Szene statt.
*'''takeAllAtOnce''': (nur in Verbindung mit 'from' und ohne 'count') zeigt bei der Entnahme aus einem Inventar einen Link an, der es ermöglicht alle Gegenstände aufzunehmen ('alles mitnehmen')
+
*'''takeAllAtOnce''': (nur in Verbindung mit 'from' und ohne 'count') zeigt bei der Entnahme aus einem Inventar einen Link an, der es ermöglicht alle Gegenstände aufzunehmen (''alles mitnehmen'')
*'''immediately''': Wenn 'true' werden die Gegenstände unmittelbar aus einem [[Inventar]] aufgenommen, ohne, dass das Inventar angezeigt wird.
+
*'''immediately''': Wenn 'true' werden die Gegenstände unmittelbar aus einem [[Inventar]] aufgenommen, ohne dass das Inventar erst angezeigt wird.
 +
*'''group-sync''': Diese Einstellung greift für Inventare mit scope="hero" in Gruppenquests. Standardmäßig (wenn group-sync="true") wird der Inventarinhalt für ALLE Gruppenmitglieder synchronisiert. Sollte es nur für die selektierten Gruppenmitglieder gewünscht sein, dann muss group-sync="false" angegeben werden.
 
*'''equip''' (nur für ZBs!): Greift nur in Verbindung mit dem ''from''-Attribut in Zufallsbegegnungen. Wenn 'true' wird versucht, aufgenommene Waren direkt anzulegen (auszurüsten).
 
*'''equip''' (nur für ZBs!): Greift nur in Verbindung mit dem ''from''-Attribut in Zufallsbegegnungen. Wenn 'true' wird versucht, aufgenommene Waren direkt anzulegen (auszurüsten).
*'''quality''': Ein Zahlenwert zwischen 0 und 100, der die Qualität der Ware festlegt. 100 bedeutet "Superior" (perfekt), 0 bedeutet "Murks" (unbrauchbar)
+
*'''[[Quality (AOQML-Attribut)|quality]]''': Ein Zahlenwert zwischen 0 und 100, der die Qualität der Ware festlegt. 100 bedeutet "Superior" (perfekt), 0 bedeutet "Murks" (unbrauchbar)
 
*'''show''': wenn 'none' erfolgt keine sichtbare Ausgabe für den Spieler über die aufgenommenen Waren.
 
*'''show''': wenn 'none' erfolgt keine sichtbare Ausgabe für den Spieler über die aufgenommenen Waren.
  
Wenn das take keinen Inhalt hat, wird die Anzahl und Bezeichnung des Gegenstandes ausgegeben. Falls ein Inhalt vorhanden ist, wird nur dieser ausgewertet und ausgegeben.
+
Wenn das take-Tag keinen Inhalt hat, wird die Anzahl und Bezeichnung des Gegenstandes ausgegeben. Falls ein Inhalt vorhanden ist, wird dieser ausgewertet und ausgegeben.
 +
 
 +
Zudem ist es möglich, gefüllte [[Gegenstände#Behälter|Behälter]] zu vergeben. Dazu kann das Subtag ''contains'' verwendet werden, siehe Beispiel weiter unten.
  
 
== Beispiele ==
 
== Beispiele ==
  
<code xml n>
+
=== Item aufnehmen ===
 +
<code xml>
 
<take item="Schwert" />
 
<take item="Schwert" />
 
</code>
 
</code>
 
 
legt dem Helden ein Schwert ins Inventar.
 
legt dem Helden ein Schwert ins Inventar.
  
<code xml n>
+
<code xml>
 
<take item="Schneeball" count="5" />
 
<take item="Schneeball" count="5" />
 
</code>
 
</code>
 
 
gibt dem Helden fünf Schneebälle.
 
gibt dem Helden fünf Schneebälle.
  
<code xml n>
+
<code xml>
 
<take item="Schneeball" count="2" max="5"/>
 
<take item="Schneeball" count="2" max="5"/>
 
</code>
 
</code>
 +
Hat der Held 3 oder weniger Schnellbälle, so er hält er 2 dazu, hat er schon 4, erhält er nur noch 1. Hat er schon 5 oder mehr, erhält er keinen zusätzlichen Schneeball.
  
Hat der Held 3 oder weniger Schnellbälle, so er hält er 2 dazu, hat er schon 4, erhält er nur noch einen, hat er schon 5 oder mehr, erhält er keinen zusätzlichen Schneeball. Hat er also 5 oder mehr, so wird er hinterher genauso viel wie vorher.
 
  
 
+
Man kann auch die WarenID angeben, sofern sie bekannt ist.
Man kann auch die WarenID angeben, sofern bekannt.
+
<code xml>
<code xml n><take item="#623"/><!-- der Held erhält einen unbearbeiteten Feueropal --></code>
+
<take item="#623"/><!-- der Held erhält einen unbearbeiteten Feueropal -->
 +
</code>
 
Dies macht jedoch nur Sinn, wenn es mehrere Waren mit demselben Namen gibt (meist Edelsteine mit unterschiedlichen Schliffen)
 
Dies macht jedoch nur Sinn, wenn es mehrere Waren mit demselben Namen gibt (meist Edelsteine mit unterschiedlichen Schliffen)
  
 +
=== Item aus Inventar entnehmen ===
 +
<code xml>
 +
<take from="ein-inventar" takeAllAtOnce="true" />
 +
</code>
 +
Der Spieler bekommt ein [[Inventar]] (das vorher definiert worden sein muss) angezeigt, aus das er Waren entnehmen kann. Das Attribut 'takeAllAtOnce' ermöglicht zudem die Entnahme aller Gegenstände mit einem Klick ('alles mitnehmen').
  
<code xml n><take from="ein-inventar" takeAllAtOnce="true" /></code>
 
Der Spieler bekommt ein [[Inventar]] (das vorher definiert worden sein muss) angezeigt, aus das er Waren entnehmen kann. Das Attribut 'takeAllAtOnce' ermöglicht zudem die Entnahme aller Gegenstände mit einem Klick ('alles mitnehmen').
 
  
 +
Auf diese Art und Weise können in Questen die Waffen des Helden abgelegt werden - und nach einiger Zeit wieder angelegt werden:
 +
<code xml>
 +
<!-- Achtung: Das Beispiel gilt nur für Quests und nicht für ZB, da bei ZB dem Held automatisch ein Knüppel in die Hand gedrückt wird, sollte er seine Waffen verlieren -->
  
Auf diese Art und Weise können in Zufallsbegegnungen die Waffen des Helden abgelegt werden - und nach einiger Zeit wieder angelegt werden:
+
<!-- Waffen werden auf den Boden gelegt -->
<code xml n>
 
 
<drop weapon="true" to="Boden"/>
 
<drop weapon="true" to="Boden"/>
 +
 
<!-- ... hier passiert etwas, z.B. ein Kampf ... -->
 
<!-- ... hier passiert etwas, z.B. ein Kampf ... -->
 +
 +
<!-- Waffen werden wieder vom Boden genommen und angelegt -->
 
<take from="Boden" equip="true"/>
 
<take from="Boden" equip="true"/>
 
</code>
 
</code>
  
 +
=== Gefüllten Behälter aufnehmen ===
 +
 +
Einige Gegenstände können andere beinhalten, wie z.B. ein Schmuckkästchen mit kleineren Items oder eine Dolchscheide mit einem Dolch oder ein Köcher mit Pfeilen oder oder ...
 +
 +
Bereits befüllte [[Gegenstände#Behälter|Behälter]] können auf diese Art dem Held gegeben werden:
 +
<code xml>
 +
<take item="Schmuckkästchen">
 +
  <contains item="Perle" />
 +
  <contains item="Diamant" />
 +
</take>
 +
</code>
 +
 +
Oder ein befüllter Köcher:
 +
<code xml>
 +
<take item="Hölzerner Köcher für 20 Pfeile">
 +
  <contains item="Pfeil" count="20" />
 +
</take>
 +
</code>
 +
 +
Oder möchte mit verschiedenen Pfeilen und einem gewissen Etwas:
 +
<code xml>
 +
<take item="Hölzerner Köcher für 20 Pfeile">
 +
  <contains item="Pfeil" count="10" />
 +
  <contains item="Diamant" count="1" />
 +
</take>
 +
</code>
 +
 +
Hierbei ist zu beachten, dass ''versteckte'' Behälter anders strukturiert sind als ''normale'' und nicht befüllt werden können, ohne Fehler zu verursachen.
 +
 +
=== Einen zufälligen Gegenstand aus einem Warentag vergeben ===
 +
 +
Siehe: [[Item#Item_erzeugen_auf_Basis_eines_Waren-Tags|Item]].
 +
 +
==Siehe auch==
 +
*[[Inventar]]
 
[[Kategorie:AOQML-Tags]]
 
[[Kategorie:AOQML-Tags]]
[[Kategorie:AOQML]]
 

Aktuelle Version vom 19. Januar 2021, 19:46 Uhr

Mit Hilfe von <take> können in AOQML Waren/Gegenstände aufgenommen werden.

Syntax

<take [item=""] [count="1"] [max=""] [from=""] [target=""] [takeAllAtOnce=""] [immediately=""] [group-sync="true"] [equip="false"] [quality=""] [show="none"]/>
<take [item=""] [count="1"] [max=""] [from=""] [target=""] [takeAllAtOnce=""] [immediately=""] [group-sync="true"] [equip="false"] [quality=""] [show="none"]>Bezeichnung</take>
<take [item=""] [count="1"] [max=""] [quality=""]>
  <contains item="" [count="1"] [quality=""] />
</take>
  • item: die Bezeichnung des Gegenstandes (siehe Aktuelle_Warenliste).
  • count: für die Anzahl (default ist 1)
  • max: Maximale Anzahl, die der Held hinterher haben soll. Wirkt nicht bei Inventaren und begrenzt nur zusätzliche Items, nicht die der Held bereits hat.
  • from: Ermöglicht die Entnahme von Items aus einem zuvor festgelegten Inventar.
  • target: Sobald die unter count angegebene Menge an Gegenständen aufgenommen wurde, wird automatisch die Szene aufgerufen, die unter target angegeben ist. Wird kein target angegeben, findet keine Weiterleitung auf eine andere Szene statt.
  • takeAllAtOnce: (nur in Verbindung mit 'from' und ohne 'count') zeigt bei der Entnahme aus einem Inventar einen Link an, der es ermöglicht alle Gegenstände aufzunehmen (alles mitnehmen)
  • immediately: Wenn 'true' werden die Gegenstände unmittelbar aus einem Inventar aufgenommen, ohne dass das Inventar erst angezeigt wird.
  • group-sync: Diese Einstellung greift für Inventare mit scope="hero" in Gruppenquests. Standardmäßig (wenn group-sync="true") wird der Inventarinhalt für ALLE Gruppenmitglieder synchronisiert. Sollte es nur für die selektierten Gruppenmitglieder gewünscht sein, dann muss group-sync="false" angegeben werden.
  • equip (nur für ZBs!): Greift nur in Verbindung mit dem from-Attribut in Zufallsbegegnungen. Wenn 'true' wird versucht, aufgenommene Waren direkt anzulegen (auszurüsten).
  • quality: Ein Zahlenwert zwischen 0 und 100, der die Qualität der Ware festlegt. 100 bedeutet "Superior" (perfekt), 0 bedeutet "Murks" (unbrauchbar)
  • show: wenn 'none' erfolgt keine sichtbare Ausgabe für den Spieler über die aufgenommenen Waren.

Wenn das take-Tag keinen Inhalt hat, wird die Anzahl und Bezeichnung des Gegenstandes ausgegeben. Falls ein Inhalt vorhanden ist, wird dieser ausgewertet und ausgegeben.

Zudem ist es möglich, gefüllte Behälter zu vergeben. Dazu kann das Subtag contains verwendet werden, siehe Beispiel weiter unten.

Beispiele

Item aufnehmen

<take item="Schwert" />

legt dem Helden ein Schwert ins Inventar.

<take item="Schneeball" count="5" />

gibt dem Helden fünf Schneebälle.

<take item="Schneeball" count="2" max="5"/>

Hat der Held 3 oder weniger Schnellbälle, so er hält er 2 dazu, hat er schon 4, erhält er nur noch 1. Hat er schon 5 oder mehr, erhält er keinen zusätzlichen Schneeball.


Man kann auch die WarenID angeben, sofern sie bekannt ist.

<take item="#623"/><!-- der Held erhält einen unbearbeiteten Feueropal -->

Dies macht jedoch nur Sinn, wenn es mehrere Waren mit demselben Namen gibt (meist Edelsteine mit unterschiedlichen Schliffen)

Item aus Inventar entnehmen

<take from="ein-inventar" takeAllAtOnce="true" />

Der Spieler bekommt ein Inventar (das vorher definiert worden sein muss) angezeigt, aus das er Waren entnehmen kann. Das Attribut 'takeAllAtOnce' ermöglicht zudem die Entnahme aller Gegenstände mit einem Klick ('alles mitnehmen').


Auf diese Art und Weise können in Questen die Waffen des Helden abgelegt werden - und nach einiger Zeit wieder angelegt werden:

<!-- Achtung: Das Beispiel gilt nur für Quests und nicht für ZB, da bei ZB dem Held automatisch ein Knüppel in die Hand gedrückt wird, sollte er seine Waffen verlieren -->

<!-- Waffen werden auf den Boden gelegt -->
<drop weapon="true" to="Boden"/>

<!-- ... hier passiert etwas, z.B. ein Kampf ... -->

<!-- Waffen werden wieder vom Boden genommen und angelegt -->
<take from="Boden" equip="true"/>

Gefüllten Behälter aufnehmen

Einige Gegenstände können andere beinhalten, wie z.B. ein Schmuckkästchen mit kleineren Items oder eine Dolchscheide mit einem Dolch oder ein Köcher mit Pfeilen oder oder ...

Bereits befüllte Behälter können auf diese Art dem Held gegeben werden:

<take item="Schmuckkästchen">
  <contains item="Perle" />
  <contains item="Diamant" />
</take>

Oder ein befüllter Köcher:

<take item="Hölzerner Köcher für 20 Pfeile">
  <contains item="Pfeil" count="20" />
</take>

Oder möchte mit verschiedenen Pfeilen und einem gewissen Etwas:

<take item="Hölzerner Köcher für 20 Pfeile">
  <contains item="Pfeil" count="10" />
  <contains item="Diamant" count="1" />
</take>

Hierbei ist zu beachten, dass versteckte Behälter anders strukturiert sind als normale und nicht befüllt werden können, ohne Fehler zu verursachen.

Einen zufälligen Gegenstand aus einem Warentag vergeben

Siehe: Item.

Siehe auch