--- deliantra/server/include/cfperl.h 2006/08/25 13:24:50 1.3 +++ deliantra/server/include/cfperl.h 2006/08/25 15:21:56 1.4 @@ -32,6 +32,7 @@ # define def(klass,name) EV_ ## klass ## name, # include "eventinc.h" # undef def + NUM_EVENT_TYPES }; #define ARG_INT(v) DT_INT , static_cast (v) @@ -48,6 +49,7 @@ // the ", ## __VA_ARGS" is, unfortunately, a gnu-cpp extension +// all these return true when the normal event processing should be skipped (if any) #define INVOKE(klass, event, ...) cfperl_invoke (EV_ ## klass ## event, ## __VA_ARGS__, DT_END) #define INVOKE_GLOBAL(event, ...) INVOKE (GLOBAL, event, ## __VA_ARGS__) @@ -55,7 +57,7 @@ #define INVOKE_PLAYER(event, pl, ...) INVOKE (PLAYER, event, ARG_PLAYER (pl), ## __VA_ARGS__) #define INVOKE_MAP(event, map, ...) INVOKE (MAP , event, ARG_MAP (map) , ## __VA_ARGS__) -int cfperl_invoke (event_type event, ...); +bool cfperl_invoke (event_type event, ...); void cfperl_free_ob (object *op); void cfperl_init ();