Beschreibung#
Wird nach Abschluss eines Handels ausgelöst. Das beobachtete Objekt hängt von den Filtern tradeoffer, seller/buyer oder space ab.
Ereignisdaten#
| Feld | Typ / Bedeutung | Bedeutung |
|---|---|---|
event.object |
MD-Objekt | Händlerangebot Besitzer; sonst Verkäufer, dann Käufer; sonst der ausgewählte Raum. |
event.param |
tradeoffer (MD) | Handelsangebot. |
event.param2 |
tradeorder (MD) | Handelsordnung. |
MD-Bezeichnungen beschreiben MD-Werte und semantische Objektrollen, keine Lua-Typen. unknown bedeutet, dass die Quelle die genaue Darstellung nicht festlegt; es verspricht kein nil. Nicht aufgeführte Ereignisfelder werden nicht vorausgesetzt.
Abonnement-Beispiel#
Fügen Sie dieses unabhängige Fragment in den entsprechenden Cues-Knoten Ihres MD-Skripts ein. Benennen Sie WikiWatch um, wenn Sie mehrere Beispiele verwenden.
<cue name="WikiWatch" instantiate="true" namespace="this">
<conditions>
<event_trade_completed space="player.zone" />
</conditions>
<actions>
<set_value name="$Object" exact="event.object" />
<set_value name="$TradeOffer" exact="event.param" />
<set_value name="$TradeOrder" exact="event.param2" />
<debug_text text="'Wiki: event_trade_completed received'" />
</actions>
</cue>Was geschieht#
Jedes passende Ereignis erstellt eine Handler-Instanz und kopiert die dokumentierten Felder in ihre lokalen Variablen. Bei aktivierter Skriptdiagnose wird folgende Meldung erwartet:
Wiki: event_trade_completed receivedDies ist die erwartete Ausgabe eines unabhängigen Lernbeispiels und kein abgeschlossener Spieltest. Abonnements beobachten Ereignisse, ohne die eigentliche Spielaktion auszulösen. Vermeide bei häufigen Ereignissen eine Protokollmeldung pro Ereignis.
XML-Abonnementfilter#
Diese Attribute filtern Ereignisse; sie sind nicht die oben genannten Ereignisdatenfelder. Schematypen.
libraries/common.xsd
| Attribut | Schematyp | Erforderlich | Standard / festgelegt |
|---|---|---|---|
chance |
expression |
Nein | nicht deklariert |
comment |
comment |
Nein | nicht deklariert |
buyer |
buyer |
Nein | nicht deklariert |
seller |
seller |
Nein | nicht deklariert |
space |
expression |
Nein | nicht deklariert |
tradeoffer |
eventtradeoffer |
Nein | nicht deklariert |
ware |
ware |
Nein | nicht deklariert |
Rückgabewert#
Dies ist eine MD-Ereignisbedingung, kein Funktionsaufruf mit einem Lua-Tupel als Rückgabe. Lies event.object/event.param im zugehörigen MD-Aktionskontext.
Vertragsgrundlage#
Die Feldzuordnung wurde mit den Anmerkungen in common.xsd / md.xsd der installierten X4 9.00 (611726) abgeglichen. Veröffentlicht werden eigene Erklärungen und unabhängige Beispiele. Gültiges XML allein beweist keinen Effekt im Spiel.