[Guide][Wiki-Beitrag] How-To Total RP 3 Extended ❔

Extended am Sonntag #3


Variablen-Tags

Im vorherigen Beitrag ging es darum, wie und wo man Variablen erstellt, und diesmal soll es um eine flexible Methode gehen, diese einzusetzen: Variablen-Tags.

Hier könnte Ihre Variable stehen

Tags sind Platzhalter, die in einem Text oder anderswo eingebaut werden. Sie signalisieren Extended, dass anstelle des Tags der Wert, der mit dem Tag verbunden ist, verwendet werden soll.
Tags werden mit Hilfe der Sequenz ${...} ausgezeichnet. Innerhalb der geschweiften Klammern steht die Referenz.

Beispiel: Aus ${wow:player} ist ${wow:player:class}. wird in meinem Fall Seleves ist Jägerin.

Wo man Tags einsetzen kann

Viele Eingabefelder in Extended unterstützen Tags, aber nicht alle. Dort, wo sie nicht unterstützt werden, bleibt das Tag einfach wie eingegeben stehen.

Die folgende Liste habe ich vom GitHub der Entwickler übernommen (https://github.com/Total-RP/Total-RP-3-Extended/wiki/Variable-tags):

Liste dynamischer Felder
Kategorie Feld
Items
  • linker und rechter Tooltip
  • Tooltip-Beschreibung
  • Text bei Benutzung
Dokumente
  • Seiteninhalt
Zwischensequenzen
  • Dialogtext
  • Sprecher
  • Antwortoptionen
Kampagnen
  • Kampagnenbeschreibung
  • Questzieltext
  • Questbeschreibung und Questlogtexte
Effekt Verzögerung
  • Verzögerungstext / Zauberbalken-Beschriftung
Effekt: Textanzeige
  • Anzeigetext
Effekte: Sprechen und Emotes
  • Gesprochener Text
Effekt: Item hinzufügen/zerstören
  • Anzahl
Effekt: Behälter reparieren/beschädigen
  • Haltbarkeitspunkte
Effekt: Abklingzeit starten
  • Dauer
Effekt: Kamera-Zoom
  • Zoom
Effekt: Makro ausführen
  • Makrotext
Effekt: Variablenoperation
  • Wert (!!!)
    Besonders nützlich, da man hierdurch Variablen addieren kann oder Texte aneinanderknüpfen.
Effekt: Signal senden
  • Signalwert
Zufälliger Wert
  • Ober- und Untergrenze

Worauf man mit Tags zugreifen kann

Wenig überraschend dürfte sein, dass man auf den Wert von Variablen zugreifen kann, doch auch Item Ids werden durch den farblich markierten Namen des Items ersetzt (z.B. blau bei seltenen Gegenständen).
Außerdem gibt es verschiedene vorgefertigte Tokens, für die man keine eigene Variable erstellen muss (bspw. Charaktername).

Tag Beispiel Ergebnis
Token

${wow:player}

Seleves

Variable

${decision_direction}

north
(sofern es eine Variable mit diesem Namen und diesem Wert gibt)

Item

${0924220631wG6dn item_letter}

[Brief]

Die eingebaute Vorfahrt

Was passiert, wenn die Variable var als Objektvariable erstellt wurde und im „Benutzen“-Arbeitsablauf nochmals mit selbem Namen als Arbeitsablauf-Variable? Wie wird ${var} ausgewertet?
Extended hat für solche Fälle eine festgelegte Reihenfolge. Sobald ein Treffer ausgemacht wurde, wird dessen Wert verwendet.

  1. Tokens
  2. Arbeitsablauf-Variablen
  3. Objektvariablen
  4. Kampagnen-Variablen
  5. Item Ids

Die Antwort auf die obige Frage lautet also: Es wird der Wert der Arbeitsablauf-Variablen verwendet, man sagt auch, sie überdeckt die Objektvariable.
An dieser Stelle sei daran erinnert, dass man möglichst eindeutige Variablennamen verwenden sollte, um solche Effekte zu vermeiden.

Tokens

Wie oben erwähnt, bietet Extended verschiedene Tokens für häufig verwendete Werte, wie dem Spielernamen, der Klasse, usw.

Eine vollständige Liste ist ebenfalls dem GitHub der Entwickler zu entnehmen:

Liste vorgefertigter Tags

Token Wert Bemerkung

${wow:player}

Spielername

${wow:target}

Name des Ziels (d.h. der anvisierten Einheit)

${wow:player:id}

Spieler-Id z.B. Seleves-Thrall

${wow:target:id}

Ziel-Id

${wow:player:race}

Volk des Spielers lokalisiert1

${wow:target:race}

Volk des Ziels lokalisiert1

${wow:player:class}

Klasse des Spielers lokalisiert1

${wow:target:class}

Klasse des Ziels lokalisiert1

${trp:player:full}

Voller Name aus dem TRP3-Profil weicht auf wow: aus2

${trp:player:first}

Vorname aus dem TRP3-Profil weicht auf wow: aus2

${trp:player:last}

Nachname aus dem TRP3-Profil weicht auf wow: aus2

${trp:target:full}

Voller Name aus dem TRP3-Profil des Ziels weicht auf wow: aus2

${trp:target:first}

Vorname aus dem TRP3-Profil des Ziels weicht auf wow: aus2

${trp:target:last}

Nachname aus dem TRP3-Profil des Ziels weicht auf wow: aus2

${trp:player:race}

Volksname aus dem TRP3-Profil weicht auf wow: aus2

${trp:target:race}

Volksname aus dem TRP3-Profil des Ziels weicht auf wow: aus2

${trp:player:class}

Klasse aus dem TRP3-Profil weicht auf wow: aus2

${trp:target:class}

Klasse aus dem TRP3-Profil des Ziels weicht auf wow: aus2

${gender:player:M:W}

männliche/weibliche Variante, abhängig vom Geschlecht des Spielers Damit kann man recht leicht grammatikalisch korrekte Sätze bauen, z.B.
${trp:player:first} zieht ${gender:player:seine:ihre} Waffe.

${gender:target:M:W}

männliche/weibliche Variante, abhängig vom Geschlecht des Ziels

${event.1}${event.n}

n-tes Ereignis-Argument nur in Arbeitsabläufen, die von einem Spielereignis ausgelöst werden

${last.return}

Rückgabewert des letzten Effekts z.B. das Ergebnis des „Würfeln“-Effekts

1 Lokalisiert bedeutet, dass der Wert in die Sprache des Spielclients übersetzt wird. Z.B. kann ${wow:player:class} auf einem deutschen Client den Wert „Blutelf“ haben, im englischen jedoch „Blood Elf“.
2 weicht auf wow: aus bedeutet, dass der entsprechende Standardwert aus dem Spiel benutzt wird, falls kein TRP3-Profil existiert, oder dort keine Information vorhanden ist.

Modifikatoren von Variablen-Tags

Standardwert

Mit :: kann man einen Wert für den Fall festlegen, dass die Variable nicht existiert.
Z.B. wird mit

${count::0}

der Wert der Zählervariablen count ausgegeben, oder Null, falls es diese Variable (noch) nicht gibt.

Dezimalstellen festlegen

Mit #n kann man bei einer Zahl einstellen, auf wieviele Dezimalstellen diese gerundet werden soll.
Z.B. liefert

${distance#1}

einen Wert wie 11,6.
Standardmäßig wird auf zwei Stellen gerundet.


Viel Spaß beim Experimentieren und
:wave: bis zum nächsten Sonntag…

2 Likes