3 #**************************************************************************
4 # Copyright (C) 2009 by Michael Andreen <harvATruinDOTnu> *
6 # This program is free software; you can redistribute it and/or modify *
7 # it under the terms of the GNU General Public License as published by *
8 # the Free Software Foundation; either version 2 of the License, or *
9 # (at your option) any later version. *
11 # This program is distributed in the hope that it will be useful, *
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of *
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
14 # GNU General Public License for more details. *
16 # You should have received a copy of the GNU General Public License *
17 # along with this program; if not, write to the *
18 # Free Software Foundation, Inc., *
19 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
20 #**************************************************************************
28 use lib dirname (__FILE__) . "/..";
31 #use Devel::Leak::Object qw{ GLOBAL_bless };
32 use POE qw(Component::IRC::Qnet::State);
36 use MooseX::Declare::StackItem;
37 use Parse::Method::Signatures::Sig;
38 use MooseX::Types::TypeDecorator;
39 use MooseX::Meta::TypeConstraint::ForceCoercion;
43 eval "require NDIRC::$ARGV[0]";
47 # We create a new PoCo-IRC object
48 my $irc = POE::Component::IRC::Qnet::State->spawn(
51 ) or die "Oh noooo! $!";
53 $irc->service_bots(QBOT => 'P@cservice.netgamers.org');
55 my $bot = eval "new NDIRC::$ARGV[0]";
59 $bot => [ qw(_default _start irc_001 sig_DIE sig_usr1 sig_usr2
60 signal_handler irc_disconnected irc_invite auth
61 irc_public irc_msg refresh irc_join) ],
63 heap => { irc => $irc },