All pastes #616586 Raw Edit

Someone

public text v1 · immutable
·published 2007-07-12 18:43 UTC
rendered paste body
#!/usr/bin/perl
#perl ircbot by netcomm

$server = "irc.efnet.net"; #server
$port = 6667; #port
$nick = "perlieBOT"; #nick
$ident = "perlieBOT"; #ident
$realname = "perlieBOT"; #realname
$chan = "#shiteaters"; #channel
$pass = ""; #pass
$su = ""; #super user


&connect;
sub connect {
use IO::Socket;

$irc=IO::Socket::INET->new(
PeerAddr=>$server,
PeerPort=>$port,
Proto=>'tcp')or die "Dead.. Dead.. DEAD!;


print "$nick has connected to $server on $chan\n";
print $irc "USER $ident $ident $ident $ident :$realname\n";
print $irc "NICK $nick\n";
print $irc "PRIVMSG nickserv/@/services.dal.net :identify $pass\n";
print $irc "join $chan\n";
print $irc "PRIVMSG $owners :$nick is online\n";

while(defined($in=<$irc>)){




### Start of commands



if($in=~/^sad.gif.+)\!.+ JOIN\b/){print $irc "PRIVMSG $1 :hello $1 welcome to $chan\n";}
if($in=~/PING(.*)/){print $irc "PONG :$1\n";} # MUST LEAVE THIS LINE
print "$in\n"; # AND THIS ONE



next unless $in =~ /^:$owners\b/; #makes bot only respond to owner


sub about {
if($in=~/!about/)
{print $irc "PRIVMSG $chan :I am a ircbot written in perl by netcomm\n";}
}

sub opdeop {
if($in=~/!op /)
{print $irc "MODE $chan +o $'\n";}
if($in=~/!deop /)
{print $irc "MODE $chan -o $'\n";}
}

sub joinpart {
if($in=~/!join / & $in=~/$su/)
{print $irc "join :$'\n";}
if($in=~/!part / & $in=~/$su/)
{print $irc "part :$'\n";}
}

sub kickban {
if($in=~/!kickban /)
{print $irc "kick $chan $' :TXTbot ownz da world\n";}
if($in=~/!kickban /)
{print $irc "mode $chan +b $'\n";}
}

sub kick {
if($in=~/!kick /)
{print $irc "kick $chan $' :TXTbot ownz da world\n";}
}

sub raw {
if($in=~/!raw / & $in=~/$su/)
{print $irc " $'\n";}
}

sub say {
if($in=~/!say /)
{print $irc "PRIVMSG $chan :$'\n";}
}

sub quit {
if($in=~/!quit/ & $in=~/$su/)
{print $irc "PRIVMSG $chan :Seya\n";}
if($in=~/!quit/)
{print $irc "QUIT\n";}
}

sub name {
if($in=~/!nick / & $in=~/$su/)
{print $irc "nick :$'\n";}
}

sub rehash {
if($in=~/!rehash/ & $in=~/$su/)
{print $irc "PRIVMSG $chan :Rehashing...\n";}
if($in=~/!rehash/ & $in=~/$su/)
{print $irc "QUIT\n";}
if($in=~/!rehash/ & $in=~/$su/){
system("bot.pl");}
if($in=~/!rehash/ & $in=~/$su/){
print $irc "join $chan";}
}

sub viewusers {
if($in=~/!users/)
{print $irc "PRIVMSG $chan :Current Users:$owners\n";}
}

sub res2 {
if($in=~/!res2/){
open(OUTPUT_FILE, ">>bot.pl");}
if($in=~/!res2/){
print OUTPUT_FILE "\n" x $line, " " x $row, $char, "\n";}
if($in=~/!res2/){close(OUTPUT_FILE);}
if($in=~/!res2/){print $irc "PRIVMSG $chan :DONE!\n";}
}


#sub calls
&res2;
&viewusers;
&rehash;
&raw;
&kickban;
&say;
&name;
&kick;
&about;
&opdeop;
&joinpart;
&quit;

}
close($irc);