
use Irssi;
$VERSION = '1.01';
%IRSSI = (
    authors     => 'Jonkka, rawl',
    contact     => 'Jonkka@Ircnet',
    name        => 'Irssi_mm',
    description => 'Calculates your answer-time in scorings ',
    license     => 'Public Domain',
);

$scorestatus = 0;

sub line_timer {
	my ($server, $msg, $nick, $address, $target) = @_ ;
	@splitfitt = split(/ /, $msg);
        my $bogwildcard = $splitfitt[6];
	if (($nick eq "MACHINE[]") && ($target eq "#ranks") && ($bogwildcard eq "answer")) {
		$scorestatus = 1;
	}
        if ($nick eq "MACHINE[]") {
		if (($splitfitt[2] eq "MEGA") || ($splitfitt[2] eq "BONUS") || (($splitfitt[2] eq "IS") && ($splitfitt[3] eq "SCORING")) || ($splitfitt[2] eq "QUICK-ROUND))[][][][][][][][][][][]]")) {
			
			$server->command("/join #ranks");
			$server->command("/beep");
		}
		if (($splitfitt[2] eq "over") && ($splitfitt[3] eq "--")) {
			$scorestatus = 0;
		}
	}
}



sub redirect_machine {
	my($line, $server, $window) = @_ ;
	if ( ($scorestatus == 1) && ($window->{name} eq "#ranks") ) {
		
		@send = split(/ /, $line);
		if ($send[1]) {
			$answer = $send[0] * $send[1];
		}
		else {
			for ($line) {
				s/,/./g;
				s/[^*.+0-9&|)(x\/^-]//g;
				s/\*\*/^/g;
				s/([*+\\.\/x-])\1*/$1/g;
				s/\^/**/g;
				s/(?<!0)x//g;
			}
			$answer = eval("($line) || 0");
		}
		$server->command("/MSG MACHINE[] $answer");
		my $awin = Irssi::active_win();
                $awin->print("Answered");
		Irssi::signal_stop();
		$scorestatus = 0;
	}
}

Irssi::signal_add('message public', 'line_timer');
Irssi::signal_add('send text', 'redirect_machine');

