rendered paste bodyalias blist {
write blist.txt $1 $2-
amsg $+($c2([),$c1(B),$c2(L),$c1(A),$c2(C),$c1(K),$c2(L),$c1(I),$c2(S),$c1(T),$c2(])) $c1(I am now blacklisting:) $c2($1) $c1(in all channels I have (half)op in. $iif($2,Reason: $c2($2-),$null))
var %x 1
while ($chan(%x)) {
if ($me isop $chan(%x) || $me ishop $chan(%x)) {
mode $chan(%x) +b $address($1,3)
}
inc %x
}
}
alias unblist {
write -ds $+ $1 blist.txt
amsg $+($c2([),$c1(B),$c2(L),$c1(A),$c2(C),$c1(K),$c2(L),$c1(I),$c2(S),$c1(T),$c2(])) $c1(I am now unblacklisting:) $c2($1) $c1(in all channels I have (half)op in.)
var %x 1
while ($chan(%x)) {
if ($me isop $chan(%x) || $me ishop $chan(%x)) {
mode $chan(%x) -b $address($1,3)
}
inc %x
}
}
on *:JOIN:#:{
if ($read(blist.txt,w,$nick $+ *)) {
if ($me isop $chan) || ($me ishop $chan) {
ban -k $chan $nick 3 $+($c2([),$c1(B),$c2(L),$c1(A),$c2(C),$c1(K),$c2(L),$c1(I),$c2(S),$c1(T),$c2(])) $c1(You are blacklisted. $iif($read(blist.txt,s,$nick),Reason:) $c2($read(blist.txt,s,$nick),$null))
}
}
}