blob: d694d9dede63f4988a03552863201951de36a5ba [file] [log] [blame]
Zesstra18626972017-01-31 10:38:27 +01001UnregisterEvent()
2=================
3
4FUNKTION
5--------
6::
7
8 int UnregisterEvent(string eid, object listener);
9
10DEFINIERT IN
11------------
12::
13
14 /p/daemon/eventd.c
15
16DEKLARIERT IN
17-------------
18::
19
20 /sys/events.h
21
22ARGUMENTE
23---------
24::
25
26 string eid,
27 Die ID des Events, vom dem man sich abmelden will.
28 object listener,
29 Das Objekt, das als Lauscher ausgetragen werden soll.
30
31BESCHREIBUNG
32------------
33::
34
35 Das Objekt 'listener' wird als Lauscher dieses Events ausgetragen. Ab
36 diesem Moment wird es bei Events vom Typ 'eid' nicht mehr informiert.
37
38 Hat der Event 'eid' im Anschluss keine Lauscher mehr, wird er implizit
39 geloescht.
40
41RUeCKGABEWERT
42-------------
43::
44
45 1 fuer Erfolg, <=0 fuer Misserfolg.
46 1 - Erfolg, 'listener' wurde eingetragen.
47 -1 - falsche Argumente uebergeben
48 -2 - 'listener' ist nicht fuer 'eid' registriert.
49
50
51
52BEMERKUNGEN
53-----------
54::
55
56 Wenn sich ein Objekt vor Zerstoerung nicht abmeldet, wird es ggf. beim
57 naechsten Auftreten von 'eid' automatisch ausgetragen.
58 Falls Blueprints nach Neuladen nicht automatisch angemeldet sein sollen,
59 sollten sie sich im remove() explizit abmelden.
60
61BEISPIELE
62---------
63::
64
65 1. Ein Objekt moechte nicht mehr ueber Spielertode informiert werden:
66 EVENTD->UnregisterEvent(EVT_LIB_PLAYER_DEATH, this_object());
67
68 2. Ein Objekt moechte sich bei Zerstoerung abmelden:
69 varargs int remove(int silent) {
70 ...
71 EVENTD->UnregisterEvent("zesstra_vulkanausbruch",this_object());
72 }
73
74SIEHE AUCH
75----------
76::
77
78 events, eventd, UnregisterEvent(), RegisterEvent()
79
80
81Last modified: 15.08.2007, Zesstra
82