--- deliantra/server/pod/events.pod 2008/10/06 18:26:35 1.28
+++ deliantra/server/pod/events.pod 2010/04/05 03:22:25 1.36
@@ -1,3 +1,27 @@
+=begin comment
+
+ This file is part of Deliantra, the Roguelike Realtime MMORPG.
+
+ Copyright (©) 2005,2006,2007,2008,2009 Marc Alexander Lehmann / Robin Redeker / the Deliantra team
+
+ Deliantra is free software: you can redistribute it and/or modify it under
+ the terms of the Affero GNU General Public License as published by the
+ Free Software Foundation, either version 3 of the License, or (at your
+ option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the Affero GNU General Public License
+ and the GNU General Public License along with this program. If not, see
+ .
+
+ The authors can be reached via e-mail to
+
+=end comment
+
=head1 DELIANTRA PLUG-IN EVENTS
This document briefly describes each plug-in event. It is also used to
@@ -6,18 +30,22 @@
=head2 NOTATION
-the event description below uses a variant of the forth stack notation -
+The event description below uses a variant of the forth stack notation -
an opening parenthesis followed by the type of each parameter, optionally
-followed by two dashes and the returning parameters. If the latter is
+followed by two dashes and the returning parameters. If the latter part is
missing, the event will be invoked but cannot change wether the event gets
processed.
-If it is specified (even if no return values are supported), a plug-in
-can override (e.g. using C in Perl) event processing,
-basically short-circuiting it. For example, if you override from within a
-player BIRTH event, nothing much will happen with respect to the built-in
-processing, but if you override from within a player TELL event, the tell
-will be ignored (presumably your plug-in took care of it).
+Return values are given by overriding (in Perl by calling C)
+with the return values, which will both stop further event processing and
+tell the caller that it wants to override normal processing.
+
+Even if no return values are supported, a plug-in can override (e.g. using
+C in Perl) event processing, basically short-circuiting
+it. For example, if you override from within a player BIRTH event,
+nothing much will happen with respect to the built-in processing, but if
+you override from within a player TELL event, the tell will be ignored
+(presumably your plug-in took care of it).
=head2 ATTACHABLE EVENTS
@@ -164,16 +192,10 @@
Invoked whenever an item gets dropped by somebody, e.g. as a result of a
drop command.
-B If you put the object somewhere else or destroyed the object
-you have to override! If you do nothing with the object and override it is
-given back to the dropper.
=head3 drop_on (floor object who -- )
Invoked whenever some B