archive- Random tools & helpful resources for IRC |
git clone git://git.acid.vegas/archive.git |
Log | Files | Refs | Archive |
fuckyou.pl (896B)
1 use strict; 2 use warnings; 3 use Irssi; 4 use Irssi::Irc; 5 6 sub getRandom { 7 my $length=5 + int(rand(21 - 5)); 8 my @chars=('a'..'z','A'..'Z','0'..'9'); 9 my $random_string; 10 foreach (1..$length) { 11 $random_string.=$chars[rand @chars]; 12 } 13 return $random_string; 14 } 15 16 sub cmd_fuckyou { 17 my ($data, $server, $dest) = @_; 18 my ($nick, $amount) = split(/ +/, $data); 19 unless($nick && $amount) { 20 Irssi::print("/fuckyou <nick> <number>"); 21 return; 22 } 23 for(1 .. $amount) { 24 my $rand = &getRandom(); 25 $server->command("sajoin $nick #$rand"); 26 } 27 } 28 29 sub cmd_unfuck { 30 my @windows = Irssi::windows(); 31 foreach my $window (@windows) { 32 next if $window->{immortal}; 33 $window->{active}->{topic_by} ? next : $window->destroy; 34 } 35 } 36 37 Irssi::command_bind('fuckyou', 'cmd_fuckyou'); 38 Irssi::command_bind('unfuck', 'cmd_unfuck');