rendered paste body;on *:CONNECT:{
on *:NOTICE:*:?:{
if ($nick == AuthServ) && (I recognize you. == $1-) {
mode $me +x
if ($hget(perform) == $null) {
hmake perform 1000
if ($exists(perform.db) == $true) { hload perform perform.db }
}
var %i = 1
while ($hget(perform,%i).data != $null) {
join $v1 | inc %i
}
}
}
on 500:TEXT:@*perform*:#:{
if ($hget(perform) == $null) {
hmake perform 1000
if ($exists(perform.db) == $true) { hload perform perform.db }
}
if ($1 == @perform) && ($2 != resync) {
if ($2 == $null) {
var %i = 1
while ($hget(perform,%i).data != $null) {
var %chans = $addtok(%chans,$gettok($v1,1,32),44)
inc %i
}
if (%chans == $null) { notice $nick There is no channels in perform. | return }
notice $nick Current perform list:
notice $nick %chans
return
}
if ($hfind(perform,$2,1).data != $null) && ($hfind(perform,$2 *,1,w).data != $null) {
notice $nick Channel $+ $2 $+ is already in perform.
return
}
else {
hadd perform $hget(perform,0).item $2-3
notice $nick Added $+ $2 $+ to perform..
hsave perform perform.db
perform.sync
}
}
if ($1 == @unperform) {
if ($2 == $null) {
notice $nick You must specify a channel.
return
}
if ($hfind(perform,$2,1).data == $null) && ($hfind(perform,$2 *,1,w).data == $null) {
notice $nick Channel $+ $2 $+ isn't in the perform list.
return
}
else {
if ($hfind(perform,$2,1).data != $null) { hdel perform $v1 }
if ($hfind(perform,$2 *,1,w).data != $null) { hdel perform $v1 }
notice $nick Removed $+ $2 $+ from the perform list.
hsave perform perform.db
perform.sync
}
}
if ($2 == resync) {
perform.sync
notice $nick Resynced Perform List
}
}
alias perform.sync {
var %i = 1
while ($hget(perform,%i).data != $null) {
if ($me !ison $gettokk($hget(perform,%i).data,1,32)) {
join $hget(perform,%i).data
var %chans = $addtok(%chans,$gettok($hget(perform,%i).data,1,32),44)
}
inc %i
}
var %i = 1
while ($chan(%i) != $null) {
var %chan = $chan(%i)
if ($istok(%chans,%chan,44) == $false) { part %chan Channel not in perform! }
inc %i
}
}