EVENT-TYP
ET_GUILD_LEARN - Gilden-Austritts-Event
BEDEUTUNG
Mit bzw. bei diesem Event tritt ein Spieler aus einer Gilde aus.
DEFAULT HANDLER
Die jeweilige Gilde selbst.
EVENT DEFINES
/sys/events.h
/sys/guilds.h
EVENT DATEN
Das Event-Mapping enthaelt folgende Daten:
Key | Inhalt
---------------+----------------------------------------------------
Eintraege, die automatisch gesetzt werden (NICHT VERAENDERN!)
E_SENDER | (object) Event-Erzeuger. (Meist die Gilde selbst)
E_DESTINATIONS | (array) Objekte, an die der Event gesandt wird. (Im
| Normalfall nur die Gilde selbst
E_COMMAND | (string oder 0) Das eingegebene Kommando. (das Verb)
Eintraege, die der Sender gesetzt hat (setzen muss):
E_ACTOR | Das agierende Lebewesen. Also das Lebwesen, das aus
| der Gilde austreten will.
E_GUILD | Die Gilde (Name), aus der ausgetreten werden soll.
E_GUILD_COSTS | Ein Integerwert an Grundmuenzen, die dem Spieler
| beim Austritt abgenommen werden sollen.
E_GUILD_FLAGS | Flags beim austreten. Bislang nur eins:
| GUILDEVENT_SILENT - es werden keine Meldungen an
| den Actor ausgegeben
Nach oder waehrend der Abarbeitung EVENTUELL enthalten:
E_HANDLED | (int) Wenn gesetzt, wurde der Event verarbeitet
E_HANDLER | (object) Der ausfuehrende Handler.
E_CANCELLED | (mixed) Wenn gesetzt, wurde der Event abgebrochen.
| Der Inhalt kann beliebig sein.
E_CANCELLER | (object) Das abbrechende Object.
EVENT-LAUSCHER
Siehe allgemeine Syntaxen in event_listeners(WL).
EVENT-SENDER
Siehe allgemeine Syntaxen in event_senders(WL). Gesendet werden
muessen mindestens:
E_GUILD und E_ACTOR
Automatisch werden immer gesetzt:
E_SENDER, E_DESTINATION und E_COMMAND
Ziel des Events sollte immer der Gildenraum sein. Wohl meistens
this_object(). Die Gilde akzeptiert nur Events, die sie selbst
gesandt hat oder ein Objekt, was sich im Inventory der Gilde
befindet und die gleiche euid hat. Zum Beispiel Gilden-NPCs etc.
BESCHREIBUNG
Der Event wird normalerweise in der Gilde erzeugt, wenn ein Spieler
'verlasse gilde' eingibt. Vorm eigentlichen Senden wird geprueft, ob
der Spieler nicht vielleicht ein Geist oder garnicht Mitglied dieser
Gilde ist.
Der Event geht mit Prioritaet EPRIO_DEF_HANDLE (0) an die Gilde als
Default-Handler. Diese macht dann das eigentliche Austreten, indem
es P_GUILDS setzt und die Fertigkeiten der Gilde entfernt.
Objekte die mit hoeherer Prioritaet lauschen (z.B.: EPRIO_MODIFY
(700) bzw. EPRIO_CANCEL (400)), koennen VOR dem Austreten den Event
aendern oder ganz abbrechen.
Objekte die mit kleinerer Prioritaet (z.B.: EPRIO_REACT (-300))
lauschen, koennen NACH dem Austreten dem Spieler zum Beispiel
Gildenausruestung oder aehnliches wegnehmen.
SIEHE AUCH
ET_GUILD_JOIN, ET_GUILD_LEARN, ET_ADVANCE, events(WL),
event_types(WL), event_prioritaeten(WL), listen_event(S)
|