From 67a3cb36258637434e8b5639c80c4a2b3a5b4b8a Mon Sep 17 00:00:00 2001 From: Zoffix Znet Date: Sun, 3 Jan 2016 14:43:57 -0500 Subject: Improve irc-to-me --- lib/IRC/Client.pm6 | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'lib/IRC') diff --git a/lib/IRC/Client.pm6 b/lib/IRC/Client.pm6 index 63a7e98..98c57ed 100644 --- a/lib/IRC/Client.pm6 +++ b/lib/IRC/Client.pm6 @@ -35,13 +35,20 @@ method handle-event ($e) { and $e[1] ~~ /:i ^ $nick <[,:]> \s+/ ) ) { - my @where = ($e, $e); - @where[0] = $e[0] + my %res = :where($e ), + :who( $e ), + :how( $e ), + :what( $e[1] ); + + %res = $e[0] # this message was said in the channel unless ( $e eq 'PRIVMSG' and $e[0] eq $nick ) or ( $e eq 'NOTICE' and $e[0] eq $nick ); + %res.subst-mutate: /:i ^ $nick <[,:]> \s+/, '' + if %res ~~ /^ <[#&]>/; + for @!plugs.grep(*.^can: 'irc-to-me') -> $p { - my $res = $p.irc-to-me(self, $e, |@where); + my $res = $p.irc-to-me(self, $e, %res); return unless $res === IRC_NOT_HANDLED; } } -- cgit v1.1