… | |
… | |
33 | warn "$path ($_) unexpected characters in match\n" if /[\[\]]/; |
33 | warn "$path ($_) unexpected characters in match\n" if /[\[\]]/; |
34 | |
34 | |
35 | $_ |
35 | $_ |
36 | } |
36 | } |
37 | |
37 | |
38 | sub patch_ipo { |
38 | sub patch_perl { |
39 | my ($arch) = @_; |
39 | my ($arch) = @_; |
40 | my $patched = 0; |
40 | my $patched = 0; |
41 | |
41 | |
42 | my @appendinv; |
42 | my @appendinv; |
43 | |
43 | |
… | |
… | |
54 | push @appendinv, { _name => 'event_apply', title => 'perl', slaying => 'board' }; |
54 | push @appendinv, { _name => 'event_apply', title => 'perl', slaying => 'board' }; |
55 | $arch->{msg} = '@match *'."\n".'@eval board::command $who, $msg, $npc'."\n"; |
55 | $arch->{msg} = '@match *'."\n".'@eval board::command $who, $msg, $npc'."\n"; |
56 | $patched++ |
56 | $patched++ |
57 | } elsif ($_->{slaying} eq '/python/IPO/say.py') { |
57 | } elsif ($_->{slaying} eq '/python/IPO/say.py') { |
58 | $arch->{msg} = '@match *'."\n".'@eval ipo::command $who, $msg, $npc'."\n"; |
58 | $arch->{msg} = '@match *'."\n".'@eval ipo::command $who, $msg, $npc'."\n"; |
|
|
59 | $patched++ |
|
|
60 | } elsif ($_->{slaying} eq '/python/IPO/banksay.py') { |
|
|
61 | $arch->{msg} = '@match *'."\n".'@eval bank::command $who, $msg, $npc'."\n"; |
59 | $patched++ |
62 | $patched++ |
60 | } |
63 | } |
61 | } |
64 | } |
62 | |
65 | |
63 | if ($arch->{inventory}) { |
66 | if ($arch->{inventory}) { |
… | |
… | |
90 | or die "$path: file load error\n"; |
93 | or die "$path: file load error\n"; |
91 | |
94 | |
92 | my $dirty; |
95 | my $dirty; |
93 | |
96 | |
94 | for my $a (map @$_, grep $_, map @$_, grep $_, @{ $map->{map} }) { |
97 | for my $a (map @$_, grep $_, map @$_, grep $_, @{ $map->{map} }) { |
95 | if ($a->{inventory} and patch_ipo ($a)) { |
98 | if ($a->{inventory} and patch_perl ($a)) { |
96 | $dirty = 1; |
99 | $dirty = 1; |
97 | next; |
100 | next; |
98 | } |
101 | } |
99 | |
102 | |
100 | next unless $a->{msg} =~ /^\@match /; |
103 | next unless $a->{msg} =~ /^\@match /; |