on *:start: { hmake blacklist 100 if ($isfile(blacklist.hsh)) hload blacklist blacklist.hsh } on *:exit: if ($hget(blacklist)) hsave -o blacklist blacklist.hsh ;//usage syntax: /addban
;//Name is just something u use to identify the address banned(can be anything u want) alias bl { var %x, %i = 1 %x = $iif(@ !isin $2-,$+($2,$chr(33),$chr(42),$chr(64),$chr(42)),$2) if (!$2) { %x = $iif($address($1,3),$address($1,3),$+($1,$chr(33),$chr(42),$chr(64))) } hadd -m blacklist $1 %x echo -a »»» $+($1,$chr(32),$chr(40),%x,$chr(41))successfully added to blacklist while $chan(%i) { if ($1 ison $chan(%i)) && ($me !isreg $chan(%i)) && ($me !isvoice $chan(%i)) { ban -k $chan(%i) $nick 3 Blacklisted } inc %i } } ;//Bans all the addresses/nicks in blacklist alias Massban { var %i = 1, %x while ($hget(blacklist,%i).data) { %x = %x $ifmatch if ($numtok(%x,32) == $modespl) { mode $chan $+(+,$str(b,$modespl)) %x | %x = "" } inc %i } if (%x) { mode $chan $+(+,$str(b,$modespl)) %x } } ;//View the blacklist alias blacklist { window -c @blacklist window -el @blacklist aline -p @blacklist Your blacklist - To remove a ban use /removebl - Entries: $hget(blacklist,0).item aline -p @blacklist Name:
aline -p @blacklist --- var %i 1 while ($hget(blacklist,%i).item) { aline -p @blacklist $v1 $+ : $hget(blacklist,%i).data inc %i } } ;//Remove a bl alias removebl { if (!$hget(blacklist,$$1-)) { echo -a »»» Error $1- Not found on blacklist halt } hdel blacklist $$1- echo -a »»» $$1- successfully deleted from blacklist } on *:join:#: { var %i = 1, %k while $hget(blacklist,%i).data { %k = $v1 if ($address($nick,3) iswm %k) || ($nick == $hget(blacklist,%i).item) { ban -k $chan $nick 2 Blacklisted } inc %i } }