rendered paste bodyon *:NICK: { if ($newnick ison #ct) { writerelay #jedislut Nick: $nick -> $newnick - $address($newnick,5) } }
on *:QUIT: { if ($nick ison #ct) { writerelay #jedislut Quit: $nick - $address($nick,5) } }
on *:JOIN:#ct: {
if ($nick == $me) { set %who $true | .who $chan | set %wait 1 | relayrelay }
writerelay #jedislut Join: $nick - $address($nick,5)
}
on *:PART:#ct: { writerelay #jedislut Part: $nick - $address($nick,5) }
on *:NOTICE:*:#ct: { writerelay #jedislut Notice: $nick - $1- }
on *:INPUT:#ct: {
if (($left($1,1) != $chr(47)) || ($ctrlenter)) { writerelay #jedislut < $+ $me $+ > $1- }
elseif ($1 == /me) { writerelay #jedislut * $nick $2- }
}
on *:TEXT:*:#ct: { writerelay #jedislut < $+ $nick $+ > $1- }
on *:ACTION:*:#ct: { writerelay #jedislut * $nick $1- }
on *:TOPIC:#ct:{ writerelay #jedislut Topic: $nick - $1- }
ctcp ^*:*:#:{ echo 4 -st * $chan was CTCP'ed by $address($nick,5) $+ ! | halt }
raw ^352:*:{ if (%who) { haltdef | .timerwho 1 3 unset %who } }
alias -l writerelay {
echo 3 -sg $timestamp Saving...
write relay.log $1-
if (%waiting) {
set %waiting $false
relayrelay
}
}
alias relayrelay {
if ($lines(relay.log) != 0) {
set %waiting $false
var %chantext = $read(relay.log,t,1)
write -dl1 relay.log
var %delay = $min(5000,$calc(%prevdelay + 500 + 2 * $len(%chantext)))
%prevdelay = %delay
.notice %chantext
echo 4 -sg $timestamp Relaying...
.timerrelay -m 1 %delay relayrelay
}
else {
set %waiting $true
set %prevdelay 0
echo 7 -sg $timestamp Waiting...
}
}