Public Member Functions |
| event () |
| Constructor.
|
virtual | ~event () |
| Destructor.
|
void | clear () |
| Cleanup.
|
void | set_script (string filename, PyObject *args=NULL) |
| Sets a script to be executed whenever the event occurs.
|
void | set_callback (PyObject *callback, PyObject *args=NULL) |
| Sets a python function/method to be executed whenever the event occurs.
|
void | set_callback (const Functor0 &callback) |
| Sets a C function/C++ method to be executed whenever the event occurs.
|
|
u_int8 | type () const |
| Get the event's type.
|
const string & | id () const |
| Get the event's id.
|
void | set_id (const string &id) |
| Assign an id to the event, so it may be retrieved from an event_list later on, without having a pointer to it.
|
bool | registered () const |
| Test whether the event is registered with the event handler.
|
void | set_registered (bool reg) |
| Set whether the event is registered with the event handler.
|
void | set_list (event_list *list) |
| Tell the whether it is kept in an event_list.
|
s_int32 | repeat () const |
| Return whether this event should be repeated.
|
void | set_repeat (s_int32 count) |
| Set whether this event should be repeated.
|
|
virtual s_int32 | execute (const event *evnt)=0 |
| Execute the associated python script or callback.
|
virtual bool | equals (const event *evnt)=0 |
| Compare two events for equality.
|
|
virtual void | pause () |
| Disable the event temporarily.
|
virtual void | resume () |
| Re-enable an event that has been paused.
|
bool | is_paused () const |
| Check whether the event is temporarily disabled or not.
|
|
virtual void | put_state (ogzstream &out) const |
| Saves the basic event data (such as the type or script data) to a file.
|
virtual bool | get_state (igzstream &in) |
| Loads the basic event date from a file.
|
Protected Member Functions |
s_int32 | do_repeat () |
| Decrease the event's repeat count and return the number of repeats left.
|
Protected Attributes |
|
u_int8 | Type |
| Event type - see enum above.
|
string | Id |
| (Optional) Id of the event
|
u_int8 | Action |
| What happens if the event occurs - see enum above.
|
bool | Registered |
| Whether the event is registered with the event handler.
|
bool | Paused |
| Whether the event temporarily disabled or not.
|
s_int32 | Repeat |
| Defines how often the event should be repeated.
|
py_object * | Script |
| The Python script accociated with this event.
|
PyObject * | Args |
| The arguments passed to the script.
|
py_callback * | PyFunc |
| Python callback that may be executed instead of the script.
|
Functor0 | Callback |
| C++ callback that may be executed when the event gets triggered.
|
event_list * | List |
| The event_list this event is kept in.
|
Base class for events.
You can create your own event types that can be handled by the event_list and event_handler by inheriting from this class.
Events are used to notify when certain things happen during the game. They may either execute the "run" method of an exclusive python script or a simple python callback defined elsewhere.
Definition at line 71 of file event.h.
Disable the event temporarily.
As long as it in this state, the event will neither be executed, nor will its repeat-count change. As long as the event is paused, it will be removed from its event handler.
Reimplemented in time_event.
Definition at line 223 of file event.cc.