Crossfire Server, Trunk
events.h
Go to the documentation of this file.
1 #ifndef EVENTS_H
2 #define EVENTS_H
3 
4 /* Event ID codes. Sorted them to present local events first, but it is
5  * just a 'cosmetic' thing.
6  * Codes should not be changed, as they are linked to objects' subtype for handling.
7  */
8 
18 /* Local events. Those are always linked to a specific object. */
19 #define EVENT_NONE 0
20 #define EVENT_APPLY 1
21 #define EVENT_ATTACKED 2
22 #define EVENT_ATTACKS 33
23 #define EVENT_BOUGHT 34
24 #define EVENT_CLOSE 11
25 #define EVENT_DEATH 3
26 #define EVENT_DESTROY 13
27 #define EVENT_DROP 4
28 #define EVENT_PICKUP 5
29 #define EVENT_SAY 6
30 #define EVENT_SELLING 32
31 #define EVENT_STOP 7
32 #define EVENT_TIME 8
33 #define EVENT_THROW 9
34 #define EVENT_TRIGGER 10
35 #define EVENT_TIMER 12
36 #define EVENT_USER 31
38 /* Global events. Those are never linked to a specific object.*/
39 #define EVENT_BORN 14
40 #define EVENT_CLOCK 15
41 #define EVENT_CRASH 16
42 #define EVENT_GKILL 18
43 #define EVENT_KICK 28
44 #define EVENT_LOGIN 19
45 #define EVENT_LOGOUT 20
46 #define EVENT_MAPENTER 21
47 #define EVENT_MAPLEAVE 22
48 #define EVENT_MAPLOAD 30
49 #define EVENT_MAPREADY 35
50 #define EVENT_MAPRESET 23
51 #define EVENT_MAPUNLOAD 29
52 #define EVENT_MUZZLE 27
53 #define EVENT_PLAYER_DEATH 17
54 #define EVENT_REMOVE 24
55 #define EVENT_SHOUT 25
56 #define EVENT_TELL 26
58 
59 #define NR_EVENTS 36
62 #define BITMASK_EVENT(evt) (1ULL << evt)
63 
64 #define BITMASK_VALID (1ULL << 63)
65 
67 typedef int (*f_plug_event)(int *type, ...);
69 typedef unsigned long event_registration;
70 
78 
85 
91 void events_execute_global_event(int eventcode, ...);
92 
98 void events_register_object_handler(const char *id, f_plug_event handler);
99 
104 void events_unregister_object_handler(const char *id);
105 
115 int events_execute_object_user(object *op, object *activator, object *third, const char *message, int fix);
116 
127 int events_execute_object_event(object *op, int eventcode, object *activator, object *third, const char *message, int fix);
128 
135 int events_execute_object_say(object *npc, talk_info *talk);
136 
137 #endif /* EVENTS_H */
events_execute_object_event
int events_execute_object_event(object *op, int eventcode, object *activator, object *third, const char *message, int fix)
Definition: events.cpp:299
events_execute_object_say
int events_execute_object_say(object *npc, talk_info *talk)
Definition: events.cpp:303
events_execute_object_user
int events_execute_object_user(object *op, object *activator, object *third, const char *message, int fix)
Definition: events.cpp:307
events_register_global_handler
event_registration events_register_global_handler(int eventcode, f_plug_event hook)
Definition: events.cpp:21
events_unregister_global_handler
void events_unregister_global_handler(int eventcode, event_registration id)
Definition: events.cpp:28
diamondslots.activator
activator
Definition: diamondslots.py:10
events_execute_global_event
void events_execute_global_event(int eventcode,...)
Definition: events.cpp:32
events_register_object_handler
void events_register_object_handler(const char *id, f_plug_event handler)
Definition: events.cpp:289
events_unregister_object_handler
void events_unregister_object_handler(const char *id)
Definition: events.cpp:294
diamondslots.message
string message
Definition: diamondslots.py:57
event_registration
unsigned long event_registration
Definition: events.h:69
f_plug_event
int(* f_plug_event)(int *type,...)
Definition: events.h:67
give.op
op
Definition: give.py:33
talk_info
Definition: dialog.h:50
npc_dialog.npc
npc
Definition: npc_dialog.py:95
make_face_from_files.int
int
Definition: make_face_from_files.py:32
is_valid_types_gen.type
list type
Definition: is_valid_types_gen.py:25