]> ruin.nu Git - NDIRC.git/blobdiff - Bot.pm
Need to send a real value to execute when the role isn't available
[NDIRC.git] / Bot.pm
diff --git a/Bot.pm b/Bot.pm
index c90f8339d0d061e6009c10c5dd88ac6729ed8860..b3b4c9d563c73915e09c77a5696a3e7f3af16bb7 100644 (file)
--- a/Bot.pm
+++ b/Bot.pm
@@ -24,6 +24,7 @@ use feature ':5.10';
 
 use Moose;
 
+use POE::Component::IRC::Common qw/irc_to_utf8/;
 use POE::Session;
 use POE::Component::IRC::Plugin::Logger;
 use POE::Component::IRC::Plugin::BotTraffic;
@@ -82,8 +83,8 @@ sub _start {
        ));
 
        $heap->{connector} = POE::Component::IRC::Plugin::Connector->new(
-               servers => ['irc.netgamers.org', 'underworld.no.eu.netgamers.org'
-                       ,'firefly.no.eu.netgamers.org', 'underworld.ca.us.netgamers.org' ]
+               servers => [['irc.netgamers.org'], ['underworld.no.eu.netgamers.org']
+                       ,['firefly.no.eu.netgamers.org'], ['underworld.ca.us.netgamers.org'] ]
        );
        $irc->plugin_add( 'Connector' => $heap->{connector} );
 
@@ -128,7 +129,7 @@ sub _build_disp {
                $disp->load(@commands);
        }
 
-       my $channels = new IO::File 'channels';
+       my $channels = new IO::File 'channels' or die $!;;
        while (<$channels>){
                my ($chan, @types) = split /\s+/;
                say "$chan - @types";
@@ -196,16 +197,18 @@ sub irc_001 {
 }
 
 sub irc_invite {
-       my ($self,$sender, $who, $channel) = @_[OBJECT,SENDER, HEAP, ARG0 .. ARG1];
+       my ($self,$sender, $who, $channel) = @_[OBJECT,SENDER, ARG0 .. ARG1];
        my $irc = $sender->get_heap();
 
        $irc->yield( join => $_ ) for grep /^$channel$/i, keys %{$self->disp->channels}
 }
 
 sub irc_public {
+       $_[ARG2] = irc_to_utf8 $_[ARG2];
 }
 
 sub irc_msg {
+       $_[ARG2] = irc_to_utf8 $_[ARG2];
 }
 
 sub  refresh {