X-Git-Url: https://ruin.nu/git/?p=NDIRC.git;a=blobdiff_plain;f=Eos.pm;h=75930997bfb18e63ab2f1085430e1c4bf42009ae;hp=258dd729cd6502b16e427f9ae3d529cbf073f95b;hb=921132036eac2233472b1b315e4ee39f5ab17fbd;hpb=05629ec258dcfc359decc3cbc44c3345dd0eb62e diff --git a/Eos.pm b/Eos.pm index 258dd72..7593099 100644 --- a/Eos.pm +++ b/Eos.pm @@ -26,20 +26,19 @@ use Moose; extends 'NDIRC::Bot'; use POE::Session; -use NDIRC::Misc; use ND::DB; my ($tick,$stattick) = DB()->selectrow_array(q{SELECT tick(),max(tick) FROM planet_stats}); my $last_announcement = 0; sub irc_public { - my ($sender, $heap, $who, $where, $msg) = @_[SENDER, HEAP, ARG0 .. ARG2]; + my ($self,$sender, $who, $where, $msg) = @_[OBJECT,SENDER, ARG0 .. ARG2]; my ($nick,$username,$address) = ( split /[!@]/, $who ); my $channel = $where->[0]; my $irc = $sender->get_heap(); - if ($msg =~ /^(\S+): (.+)$/ && $heap->{disp}->has_command('anon',$channel)){ + if ($msg =~ /^(\S+): (.+)$/ && $self->disp->has_command('anon',$channel)){ my $_ = $1; my $text = $2; unless ($irc->is_channel_member($channel,$1) || /(Constructing|Researching)/){ @@ -47,31 +46,31 @@ sub irc_public { } } - if (parseCommand($msg,$irc,$nick,$address,$channel,$heap->{disp},DB())){ + if ($self->parseCommand($msg,$irc,$nick,$address,$channel,DB())){ #Command parsed and run successfully } } sub irc_msg { - my ($sender, $heap, $who, $where, $msg) = @_[SENDER, HEAP, ARG0 .. ARG2]; + my ($self,$sender, $who, $where, $msg) = @_[OBJECT,SENDER, ARG0 .. ARG2]; my ($nick,$username,$address) = ( split /[!@]/, $who ); my $irc = $sender->get_heap(); - if (parseCommand($msg,$irc,$nick,$address,'pm',$heap->{disp},DB())){ + if ($self->parseCommand($msg,$irc,$nick,$address,'pm',DB())){ #Command parsed and run successfully }else{ - my $disp = $heap->{disp}; + my $disp = $self->disp; $irc->yield(privmsg => $disp->targets->{def}, chr(3)."04 $nick >> $msg"); - parseCommand("~report_incs $msg",$irc,$nick,' BATCH ',$disp->targets->{def},$heap->{disp},DB()); + $self->parseCommand("~report_incs $msg",$irc,$nick,' BATCH ',$disp->targets->{def},DB()); } } sub irc_join { - my ($sender, $heap, $who, $channel) = @_[SENDER, HEAP, ARG0 .. ARG1]; + my ($self,$sender, $who, $channel) = @_[OBJECT,SENDER, ARG0 .. ARG1]; my ($nick,$username,$address) = ( split /[!@]/, $who ); my $irc = $sender->get_heap(); - my $disp = $heap->{disp}; + my $disp = $self->disp; my $dbh = DB(); @@ -111,12 +110,12 @@ FROM users u WHERE hostmask = ? } sub refresh { - my ($kernel,$heap) = @_[KERNEL,HEAP]; + my ($self,$kernel,$heap) = @_[OBJECT,KERNEL,HEAP]; $kernel->delay( refresh => 60 ); print 'Time: ' . time() . ' Lag: ' . $heap->{connector}->lag() . "\n"; my $irc = $heap->{irc}; - my $disp = $heap->{disp}; + my $disp = $self->disp; my $dbh = DB(); my @row = $dbh->selectrow_array(q{SELECT tick(), max(tick) FROM planet_stats}); @@ -134,7 +133,7 @@ sub refresh { while (my $req = $ircreqs->fetchrow_hashref){ if ($req->{channel} eq 'def'){ $irc->yield(privmsg => $disp->targets->{def}, chr(3)."04 ## $req->{username} via webbie ## >> $req->{message}"); - parseCommand("~report_incs $req->{message}",$irc,$req->{username},' BATCH ',$disp->targets->{def},$heap->{disp},$dbh); + $self->parseCommand("~report_incs $req->{message}",$irc,$req->{username},' BATCH ',$disp->targets->{def},$dbh); }elsif(exists $disp->targets->{$req->{channel}}){ $irc->yield(privmsg => $disp->targets->{$req->{channel}}, "<$req->{username} via webbie> $req->{message}"); }