]> ruin.nu Git - NDIRC.git/blobdiff - ndawn.pl
Split long lines, using the algorithm from irssi splitlong.pl
[NDIRC.git] / ndawn.pl
index eecf5ee2c0d231bd8ec0d506cb1854735fd68c72..a14ee36fe319bef16eaaeb34b7eda5d8c3e5acf3 100755 (executable)
--- a/ndawn.pl
+++ b/ndawn.pl
@@ -24,33 +24,25 @@ use warnings;
 use feature ':5.10';
 use POE qw(Component::IRC::Qnet::State);
 
+eval "require NDIRC::$ARGV[0]";
 
-use NDIRC::CommonStates;
-use NDIRC::Eos;
-
-my $nickname = 'ndbot';
-my $ircname = 'ND test bot';
-my $server = 'irc.netgamers.org';
+die $@ if $@;
 
 # We create a new PoCo-IRC object
 my $irc = POE::Component::IRC::Qnet::State->spawn(
-       nick => $nickname,
-       ircname => $ircname,
-       server => $server,
-       servers => [$server, 'underworld.no.eu.netgamers.org', ]
+       nick => $ARGV[0],
+       ircname => 'ND bot',
 ) or die "Oh noooo! $!";
 
 $irc->service_bots(QBOT => 'P@cservice.netgamers.org');
 
-$ND::scanchan = '#testarmer';
-$ND::defchan = '#testarlite';
-$ND::memchan = '#testarmer';
+my $bot = eval "new NDIRC::$ARGV[0]";
 
 POE::Session->create(
-       package_states => [
-               'NDIRC::CommonStates' => [ qw(_default _start irc_001 sig_DIE sig_usr1 sig_usr2
-                       signal_handler irc_disconnected irc_invite) ],
-               'NDIRC::Eos' => [ qw(irc_public irc_msg refresh irc_join) ],
+       object_states => [
+               $bot => [ qw(_default _start irc_001 sig_DIE sig_usr1 sig_usr2
+                       signal_handler irc_disconnected irc_invite auth
+                       irc_public irc_msg refresh irc_join) ],
        ],
        heap => { irc => $irc },
 );