Hauptmenü öffnen

AntamarWiki β

Änderungen

Set

4.321 Bytes hinzugefügt, 10:00, 17. Sep. 2020
keine Bearbeitungszusammenfassung
== Syntax ==
<code xml n>
<set [object="hero"] [attribute=""] [quality=""] [talent=""] [name=""] [scope="quest"] [inc=""] [dec=""] [val=""] [expire=""] [target=""] />
</code>
*'''{| class="wikitable sortable"|-!Attribut!! Datentyp!! Standardwert!! Erklärung|-|object''': ||String||hero||Standardmäßig wird auf dem der aktive Held "gearbeitet" betrachtet und alle seine dessen Werte manipuliert. Es lassen sich jedoch weitere Objekte manipulieren:
: Ist ''object="selected-item"'' angegeben, wird auf einem zuvor selektierten Gegenstand (siehe [[item-select]]) gearbeitet und dessen Attribute verändert.
: Ist ''object="ordenshaus"'' angegeben, werden Werte des Ordenshauses, in dem sich der Held befindet, verändert.
*'''|-|attribute''' ||String||||beim Helden alle möglichen [[Held Attribute|Heldenattribute]]. Beachte: Es lassen sich jedoch nicht alle Heldenattribute ändernverändern, viele einige Attribute sind nur lesbar, nicht beschreibbar.: Bei einem Gegenstand ''(object="selected-item")'' kann das Attribut 'quality' (Zustanddes Items, ein Wert zwischen 0 und 100) verändert werden.
: Bei einem Ordenshaus ''(object="ordenshaus")'' kann das Attribut 'schatz' verändert werden (nur mittels ''inc'' oder ''dec'', '''nicht''' mittels val/value!)
|-
|quality||String||||beim Held kann man Eigenschaften temporär verändern, siehe Beispiele weiter unten
|-
|talent||String||||beim Held kann man Fertigkeitswerte temporär verändern, siehe Beispiele weiter unten
|-
|name||String||||der Name der Variable, die verändert werden soll
|-
|scope||String||quest||Bezeichnet den Gültigkeitsbereich, wie eine Variable gespeichert wird. Hierzu [[ScopeValues|verschiedene Möglichkeiten]].
|-
|inc||Integer||||zur Erhöhung von Werten
|-
|dec||Integer||||zur Verringerung von Werten
|-
|val||(mixed)||||Der neue Wert für die Variable oder das Attribut.
|-
|expire||String||||diese Angabe wird benötigt, wenn beim Held eine Eigenschaft oder eine Fertigkeit temporär verändert werden soll, siehe Beispiele weiter unten
|-
|target||String||||Kann in Verbindung mit <set attribute="wounds"/> benutzt werden, siehe Beispiel weiter unten
|}
== Beispiele für den Held ==
Um Heldenwerte mit ''set '' zu verändern, muss das Tag um ein Attribut erweitert werden, das entweder die neue Höhe angibt oder den Betrag um den der Wert verändert wird:
<code xml n><set attribute="LEP" dec="5"/></code>
Verringert die Lebensenergie um 5.
=== Eigenschaften temporär ändern === Eigenschaften können mittels ''set'' temporär verändert werden. Beispiele:<code xml n><set quality="ST" inc="4" expire="10 days" /><!--erhöht Stärke um 4 für ingame 10 Tage --><set quality="FF" dec="2" expire="3 hours" /><!-- verringert Fingerfertigkeit um 2 für ingame 3 Stunden --><set quality="MR" inc="3" expire="1D" /><!-- erhöht Magieresistenz um 3 für 1 Echtzeit-Tag --></code>Erlaubte Zeitformate: 2d (2 Ingame-Tage), 2 days (2 Ingame-Tage), 2D (2 Echtzeit-Tage) === Fertigkeiten temporär ändern === Fertigkeitswerte (Talentwerte) können ebenfalls temporär verändert werden. Beispiele:<code xml n><set talent="Sinnenschärfe" inc="4" expire="10 days" /><!-- erhöht den FeW "Sinnenschärfe" um 4 für 10 Tage --><set talent="Schwimmen" dec="2" expire="3 hours" /><!-- verringert den FeW "Schwimmen" um 2 für 3 Stunden --></code>Erlaubte Zeitformate: 2d (2 Ingame-Tage), 2 days (2 Ingame-Tage), 2D (2 Echtzeit-Tage) === Eigene Variablen verändern ===
Statt Attributen können auch Variablen-Werte gesetzt werden. Damit kann man z.B. EP beispielsweise im Laufe des Quests der Quest EP ansammeln:
<code xml n><set name="questEP" inc="5" show="none"/></code>
Und dann am Ende des Quests der Quest gesammelt vergeben:
<code xml n><set attribute="EP" inc="${questEP}"/></code>
Es handelt sich dabei um dieselben Variablen wie bei [[Store_fetch]], bei set wird jedoch der Inhalt des Tags nicht beachtet
----=== Eine Wunde verursachen ===
Eigenschaften können mittels Der folgende Code schlägt eine Wunde beim Helden.<code xml><set temporär verändert attribute="wounds" inc="1" /></code>Die Trefferzone würde dabei zufällig gewählt werden. Beispiele Möchte man eine bestimmte [[Trefferzone]] festlegen, kann dies wie folgt geschehen:<code xml n><set qualityattribute="STwounds" inc="41" durationtarget="10 dayslinker Arm" /></code> Hier würde eine Zone am linken Arm des Helden verursacht werden. Mögliche [[Trefferzonen]] sind:<code>KopfBrustlinker Armrechter ArmBauchlinkes Beinrechtes Bein</code>Beachte die korrekte Groß-/Kleinschreibung der Trefferzone, ansonsten wird sie nicht erkannt! === Vorhandene Geldmenge anpassen === Im Wesentlichen gibt es drei verschiedene Möglichkeiten den Inhalt der Geldbörse eines Helden zu modifizieren:  '''1. Auf Null setzen.''' <code xml><set qualityattribute="FFcash" decval="0"/></code> Sehr populär nach verlorenen Kämpfen. In jedem Fall sollte hierbei das [[Heldattribute#Allgemein|Attribut ''welpenschutz'']] beachtet werden. Grundsätzlich gilt: Möglichst kein vollständiges Ausplündern von Junghelden! Die üblichen Ausnahmen sind Aivarunen, besondere Gegner, Orks, usw. ... '''2. Geld vergeben oder entnehmen.''' <code xml><!-- Geld erhöht um 5 Gulden, 3 Thaler und 6 Groschen --> <set attribute=" durationcash" inc="536"/> <!-- Geld gesenkt um 13 Gulden, 1 Thaler und 3 hoursGroschen --> <set attribute="cash" dec="1313"/></code> Entsprechende Varianten kommen häufig bei Belohnungen oder kleinen Diebstählen vor. In jedem Fall sind sie dazu da, Geld um feste Werte zu verändern. '''Stolperfalle''': Wenn ihr Helden für etwas bezahlen lassen wollt, solltet ihr erst mit [[Switch]] oder [[Has]] prüfen, ob das Geld auch wirklich vorhanden ist, ansonsten wird so viel abgezogen, wie da ist, und es geht trotzdem weiter. '''3. Prozentualer Geldverlust.''' Manchmal muss es jedoch etwas mehr sein ... Wenn man einem Helden eine größere Menge Geld in Relation zum vorhandenen abknöpfen möchte, ohne ihn gleich völlig auszunehmen, gibt es noch die Möglichkeit, einen Prozentwert festzulegen, der abgezogen werden soll: <code xml><!-- 50% des Geldes entfernt --> <set attribute="cash" dec="*50%" />
</code>
Hierbei ist zu beachten, dass die prozentuale Veränderung des Geldes ausschließlich mit ''dec'' funktioniert, um missbräuchliche Geldvermehrung von vornherein auszuschließen!
== Beispiele für einen Gegenstand (object="selected-item") ==
Wurde zuvor ein Gegenstand via [[item-select]] ausgewählt, kann das Warenattribut ''[[Quality (AOQML-Attribut)|quality]]'' (der Zustand des Gegenstandes) verändert werden:
<code xml n>
<set object="selected-item" attribute="quality" val="100" />
</code>
 
== Beispiele für das Ordenshaus (object="ordenshaus") ==
Beim Ordenshaus kann bisher das Attribut ''schatz'' verändert werden, mittels inc oder dec, jedoch nicht mittels val/value, weil dies bei parallelen Ein-/Auszahlungen zu Problemen führen könnte.
<code xml n>
[[Kategorie:AOQML-Tags]]
[[Kategorie:AOQML]]
2.740
Bearbeitungen