ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/ext/NPC_Dialogue.pm
(Generate patch)

Comparing deliantra/server/ext/NPC_Dialogue.pm (file contents):
Revision 1.17 by root, Mon Oct 26 02:55:07 2009 UTC vs.
Revision 1.18 by root, Wed Nov 4 19:20:49 2009 UTC

96 96
97=item $flag - A hashref that stores flags associated with the player and 97=item $flag - A hashref that stores flags associated with the player and
98can be seen by all NPCs (so better name your flags uniquely). This is 98can be seen by all NPCs (so better name your flags uniquely). This is
99useful for storing e.g. quest information. See C<@setflag> and C<@ifflag>. 99useful for storing e.g. quest information. See C<@setflag> and C<@ifflag>.
100 100
101=item @find - see @find, below. 101=item $find - see @find, below.
102 102
103=back 103=back
104 104
105The environment is that standard "map scripting environment", which is 105The environment is that standard "map scripting environment", which is
106limited in the type of constructs allowed (no loops, for example). 106limited in the type of constructs allowed (no loops, for example).
156If the check fails, the match is skipped. 156If the check fails, the match is skipped.
157 157
158=item @find match expression 158=item @find match expression
159 159
160Like C<@check> in that it executes a match expression, but instead of 160Like C<@check> in that it executes a match expression, but instead of
161failing, it gathers all objects matched into the C<@find> array variable. 161failing, it gathers all objects into an array and provides a reference to
162the array in the C<$find> variable.
162 163
163When you want to skip the match when no objects have been found, combine 164When you want to skip the match when no objects have been found, combine
164C<@find> with C<@cond>: 165C<@find> with C<@cond>:
165 166
166 @match see my spellbook 167 @match see my spellbook
167 @find type=SPELLBOOK in inv 168 @find type=SPELLBOOK in inv
168 @cond @find 169 @cond @$find
169 It looks dirty. 170 It looks dirty.
170 @match see my spellbook 171 @match see my spellbook
171 I can't see any, where do you have it? 172 I can't see any, where do you have it?
172 173
173=item @setstate state value 174=item @setstate state value
291 npc => $self->{npc}, 292 npc => $self->{npc},
292 state => $state, 293 state => $state,
293 flag => $flag, 294 flag => $flag,
294 msg => $msg, 295 msg => $msg,
295 match => \@match, 296 match => \@match,
297 find => \@find,
296 ); 298 );
297 299
298 local $self->{ob}{record_replies} = \@replies; 300 local $self->{ob}{record_replies} = \@replies;
299 301
300 # now execute @-commands (which can result in a no-match) 302 # now execute @-commands (which can result in a no-match)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines