ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/pod/events.pod
(Generate patch)

Comparing deliantra/server/pod/events.pod (file contents):
Revision 1.31 by root, Thu Jan 8 04:35:04 2009 UTC vs.
Revision 1.32 by root, Wed Oct 21 00:44:39 2009 UTC

4generate the event-list itself, so is always complete. Be careful wehn 4generate the event-list itself, so is always complete. Be careful wehn
5changing it, though. 5changing it, though.
6 6
7=head2 NOTATION 7=head2 NOTATION
8 8
9the event description below uses a variant of the forth stack notation - 9The event description below uses a variant of the forth stack notation -
10an opening parenthesis followed by the type of each parameter, optionally 10an opening parenthesis followed by the type of each parameter, optionally
11followed by two dashes and the returning parameters. If the latter is 11followed by two dashes and the returning parameters. If the latter part is
12missing, the event will be invoked but cannot change wether the event gets 12missing, the event will be invoked but cannot change wether the event gets
13processed. 13processed.
14 14
15If it is specified (even if no return values are supported), a plug-in 15Return values are given by overriding (in Perl by calling C<cf::override>)
16can override (e.g. using C<cf::override> in Perl) event processing, 16with the return values, which will both stop further event processing and
17basically short-circuiting it. For example, if you override from within a 17tell the caller that it wants to override normal processing.
18player BIRTH event, nothing much will happen with respect to the built-in 18
19Even if no return values are supported, a plug-in can override (e.g. using
20C<cf::override> in Perl) event processing, basically short-circuiting
21it. For example, if you override from within a player BIRTH event,
22nothing much will happen with respect to the built-in processing, but if
19processing, but if you override from within a player TELL event, the tell 23you override from within a player TELL event, the tell will be ignored
20will be ignored (presumably your plug-in took care of it). 24(presumably your plug-in took care of it).
21 25
22 26
23=head2 ATTACHABLE EVENTS 27=head2 ATTACHABLE EVENTS
24 28
25No time to document this, screw me. 29No time to document this, screw me.
186damage that has been dealt. 190damage that has been dealt.
187 191
188=head3 skill_attack (attacker victim message skill -- success) 192=head3 skill_attack (attacker victim message skill -- success)
189 193
190Invoked whenever an B<attacker> attacks B<victim> using a B<skill> (skill 194Invoked whenever an B<attacker> attacks B<victim> using a B<skill> (skill
191cna be C<undef>). B<message> is the message that describes the attack when 195can be C<undef>). B<message> is the message that describes the attack when
192damage is done. 196damage is done.
193 197
194=head3 weapon_attack (weapon hitter victim) 198=head3 weapon_attack (weapon hitter victim)
195 199
196Invoked whenever an object is used as a B<weapon> by B<hitter> to attack 200Invoked whenever an object is used as a B<weapon> by B<hitter> to attack
220 224
221Invoked whenever a container gets closed. When overriden, the container 225Invoked whenever a container gets closed. When overriden, the container
222will not get closed, but you must tell op about the reason. This event 226will not get closed, but you must tell op about the reason. This event
223is not crash-safe, i.e. containers might be closed due to a server crash 227is not crash-safe, i.e. containers might be closed due to a server crash
224without this event being invoked. 228without this event being invoked.
229
230=head3 blocked_move (self who -- do_blocked)
231
232Invoked when an C<who> tries to move to the same space as C<self>,
233C<self>'s C<move_block> causes blocked movement for C<who> and nothing
234else explicitly allows movement to this space.
235
236Should return true when C<who> is blocked, i.e., should not be allowed to
237move onto C<self>.
238
239When not overriding, normal blocked_move (blocked_link) processing will
240happen.
225 241
226 242
227=head2 GLOBAL EVENTS 243=head2 GLOBAL EVENTS
228 244
229Global events have no relation to specific objects. 245Global events have no relation to specific objects.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines