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.3 by elmex, Wed Apr 4 11:45:16 2007 UTC vs.
Revision 1.6 by elmex, Wed Aug 8 07:55:57 2007 UTC

3NPC_Dialogue 3NPC_Dialogue
4 4
5=head1 DESCRIPTION 5=head1 DESCRIPTION
6 6
7NPC dialogue support module. 7NPC dialogue support module.
8
9=over 4
8 10
9=cut 11=cut
10 12
11package NPC_Dialogue; 13package NPC_Dialogue;
12 14
26} 28}
27 29
28sub new { 30sub new {
29 my ($class, %arg) = @_; 31 my ($class, %arg) = @_;
30 32
33 $arg{ob} = $arg{pl}->ob;
34
31 my $self = bless { 35 my $self = bless {
32 %arg, 36 %arg,
33 }, $class; 37 }, $class;
34 38
35 $self->{match} ||= [parse_message $self->{npc}->msg]; 39 $self->{match} ||= [parse_message $self->{npc}->msg];
102 106
103=back 107=back
104 108
105The environment is that standard "map scripting environment", which is 109The environment is that standard "map scripting environment", which is
106limited in the type of constructs allowed (no loops, for example). 110limited in the type of constructs allowed (no loops, for example).
111
112Here is a example:
113
114=over 4
115
116=item B<matching for an item name>
117
118 @match hi
119 @cond grep $_->name =~ /royalty/, $who->inv
120 You got royalties there! Wanna have!
121
122You may want to change the C<name> method there to something like C<title>,
123C<slaying> or any other method that is allowed to be called on a
124C<cf::object> here.
125
126=back
107 127
108=item @eval perl 128=item @eval perl
109 129
110Like C<@cond>, but proceed regardless of the outcome. 130Like C<@cond>, but proceed regardless of the outcome.
111 131

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines