1#!/usr/local/bin/perl 2# 3# by Stefan 'tommie' Tomanek 4 5use strict; 6 7use vars qw($VERSION %IRSSI); 8$VERSION = "2003020801"; 9%IRSSI = ( 10 authors => "Stefan 'tommie' Tomanek", 11 contact => "stefan\@pico.ruhr.de", 12 name => "BeStoiber", 13 description => "stoibers your messages", 14 license => "GPLv2", 15 url => "", 16 modules => "", 17 changed => "$VERSION", 18 commands => "bestoiber" 19); 20 21 22use Irssi 20020324; 23 24sub stoibern ($) { 25 my ($text) = @_; 26 my $result; 27 my $buffer; 28 foreach (split / /, $text) { 29 if (int(rand(4)) == 1) { 30 $result .= ' eehh, '; 31 } else { 32 $result .= ' '; 33 } 34 if (substr($_, 0,1) =~ /[A-Z]+/ && int(rand(2)) == 1) { 35 my @buzzwords = split(/,/, Irssi::settings_get_str('bestoiber_buzzwords')); 36 $result .= $buzzwords[rand(scalar(@buzzwords))].", "; 37 } 38 if (int(rand(6)) == 1) { 39 $result =~ s/,?\ $//; 40 $result .= ", ".$buffer." " if $buffer; 41 } 42 43 $result .= $_; 44 $buffer = $_; 45 } 46 $result =~ s/^ //; 47 return $result; 48} 49 50sub cmd_bestoiber ($$$) { 51 my ($arg, $server, $witem) = @_; 52 if ($witem && ($witem->{type} eq 'CHANNEL' || $witem->{type} eq 'QUERY')) { 53 $witem->command('MSG '.$witem->{name}.' '.stoibern($arg)); 54 } else { 55 print CLIENTCRAP "%B>>%n ".stoibern($arg); 56 } 57} 58 59Irssi::settings_add_str($IRSSI{name}, 'bestoiber_buzzwords', 'Arbeitslose,Fr. Merkel,Schr�der'); 60 61Irssi::command_bind('bestoiber', \&cmd_bestoiber); 62