User Tools

Site Tools


user:jpettie:portfolio:hpcprojectpircbot
 #!/usr/bin/perl
   use strict;
   use vars qw($VERSION %IRSSI);
   use LWP::Simple; 
   use Irssi qw(command_bind signal_add);
   use IO::File;
 
   $VERSION = '0.1';
   %IRSSI = (
   	authors		=> 'Jacob Pettie',
   	contact		=> 'jacob@adaptivelogicdesign.com',
   	name		=> 'die',
   	description	=> 'Roll a die.',
   	license		=> 'GPL',
   );
 
   my $lstate = '0';
   my $sleep = '0';
 
   sub own_question {
   	my ($server, $msg, $target) = @_;
   	question($server, $msg, "", $target);
   }
 
   sub public_question {
   	my ($server, $msg, $nick, $address, $target) = @_;
   	question($server, $msg, $nick, $target);
   }
   sub question($server, $msg, $nick, $target) {
   	my ($server, $msg, $nick, $target) = @_;
   	$_ = $msg;
   	#if (!/^roll:/i) { return 0; 
	#my $sleep = '';
  	if (/^sleep:$/i) {
		if ($nick eq 'Ocean'){
			$sleep = '1';
			$server->command('msg '.$target.' '.'casts Sleep on self.');
		}
	}
	if (/^wake:$/i) {
		if ($nick eq 'Ocean'){
			$sleep = '0';
			$server->command('msg '.$target.' '.'Oh, I see how it is, so now you want me to be around but not all the time....');
		}
	}
 	if ($sleep eq '0') {
 
   	if (/^roll:$/i) {
   		my $ia = int(rand(101));
		#if ($nick eq 'Saadybaby: '){
		#	$ia = 'is a big dork.';
		#}
   		$server->command('msg '.$target.' '.$nick.' rolled: '.$ia);
   		return 0;
   	}
	if(m/Tentacool/i) {
		$server->command('msg '.$target.' '.'Hi '.$nick);
	}
	if(m/\.com/i or m/\.net/i or m/\.org/i){
		my $file = Irssi::get_irssi_dir."/urls.txt";
		open (FILE, '>>', $file) or $server->command('msg '.$target.' '.'Could not open file.'); 
		print FILE time."\t".$nick."\t".$msg;
		print FILE "\n";
 		close (FILE);
	}
	if(/^light:$/i) {
		if ($nick eq 'Ocean' or $nick eq 'squirrel' or $nick eq 'wedge' or $nick eq 'asowers' or $nick eq 'polloloco'){
			if ($lstate eq '1'){
				$lstate = '0';
				$server->command('msg '.$target.' '.$nick.' turned the light off.');
			}else{
				$lstate = '1';
				$server->command('msg '.$target.' '.$nick.' turned the light on.');
			}
			my $res = get('http://admin:debian@10.80.1.245/Set.cmd?CMD=SetPower+P62='.$lstate);
		}
	}
	if (/^rick:$/i) {
		my $ia = int(rand(100));
		$ia = 'http://www.youtube.com/watch?v=oHg5SJYRHA0';
		$server->command('msg '.$target.' '.$nick.' rolled: '.$ia);
		return 0;
	}
 
	if (/^leek:$/i) {
		my $ia = 'http://www.youtube.com/watch?v=qs8pnY3BKn8';
		$server->command('msg '.$target.' '.$nick.' leeked: '.$ia);
		return 0;
	}
 
	if (/^nyan:$/i) {
		my $ia = 'http://www.nyan.cat';
		$server->command('msg '.$target.' '.$nick.' throws cat: '.$ia);
		return 0;
	}
	if (/^flip:$/i) {
		my $ia = '_|____|_\(`.´)/_|____|_';
		$server->command('msg '.$target.' '.$ia);
		return 0;
	}
	}	
	#if (!/^roll:/i) { return 0; }
} 
signal_add("message public", "public_question");
signal_add("message own_public", "own_question");
user/jpettie/portfolio/hpcprojectpircbot.txt · Last modified: 2012/12/14 22:59 by jpettie