alias -l opchat.ACTION {
.notice @ $+ %opchat.Chan ACTION: $1-
var %clr = $+ $colour(action)
echo -i2 %opchat.WinName $opchat.CS(%clr,*) $me $1-
}
alias -l opchat.TEXT {
.notice @ $+ %opchat.Chan $1-
echo -i2 %opchat.WinName $iif(%opchat.TimeStamp,$time(hh:nn:stt)) < $+ $me $+ > $1-
}
alias -l opchat.CS { if ( %opchat.TimeStamp ) { return $1 $+ $time(hh:nn:stt)) $2 } | else { return $1 $+ $2 } }
alias -l opchat.Open {
if ($window(@opchat.Win)) { return }
window -eSl11k0 %opchat.WinName %opchat.x %opchat.y $&
%opchat.w %opchat.h %opchat.WinName
titlebar %opchat.WinName %opchat.Chan OP Chat Line
opchat.Nick.Refresh
}
alias -l opchat.Nick.Refresh {
var %ptr = 1- $+ $line(%opchat.WinName,0,1)
dline -l %opchat.WinName $remove(%ptr,@)
%ptr = $nick(%opchat.Chan,0,o).pnick
while (%ptr) {
var %opnick = $nick(%opchat.Chan,%ptr,o).pnick
if ($istok(%opchat.Bots,$remove(%opnick,@),44) != $true) { aline -l %opchat.WinName %opnick }
dec %ptr
}
}
alias -l opchat.Nick.Add {
if ($istok(%opchat.Bots,$remove($1,@),44) != $true) { aline -l %opchat.WinName $1 }
}
alias -l opchat.Nick.Remove {
var %ptr = $fline(%opchat.WinName,$remove($1,@),1,1)
if (%ptr) { dline -l %opchat.WinName $remove(%ptr,@) }
}
on *:OP:%opchat.Chan:{
opchat.Nick.Refresh
}
on *:DEOP:%opchat.Chan:{
opchat.Nick.Refresh
}
on *:PART:%opchat.Chan:{
opchat.Nick.Refresh
}
on *:QUIT:%opchat.Chan:{
opchat.Nick.Refresh
}