on *:load:{ set %disablebl off write -c "blacklist.txt" echo -a |Blacklist v0.1 echo -a |Type '/blacklist' to view blacklisted users echo -a |For more help read the readme.txt, script written by Clode echo -a |Suggestions or bugs send a mail to Clode@mikke-mus.com } on blacklist:join:#:{ if (%disablebl == On) { halt } set %i 21 :loop /dec %i set %host $address($nick,%i) if ($read("blacklist.txt", w, * $+ %host $+ *)) { set %read $read("blacklist.txt", w, * $+ %host $+ *) | goto next } if (%i == 0) { goto exhost } goto loop :exhost if ($read("blacklist.txt", w, * $+ $nick $+ !* $+ $ial($nick).user $+ *)) { set %read $read("blacklist.txt", w, * $+ $nick $+ !* $+ $ial($nick).user $+ *) | goto next } if ($read("blacklist.txt", w, * $+ $nick $+ *!* $+ $ial($nick).user $+ *)) { set %read $read("blacklist.txt", w, * $+ $nick $+ *!* $+ $ial($nick).user $+ *) | goto next } if ($read("blacklist.txt", w, * $+ $nick $+ *! $+ $ial($nick).user $+ *)) { set %read $read("blacklist.txt", w, * $+ $nick $+ ! $+ $ial($nick).user $+ *) | goto next } if ($read("blacklist.txt", w, * $+ $nick $+ ! $+ $ial($nick).user $+ *)) { set %read $read("blacklist.txt", w, * $+ $nick $+ ! $+ $ial($nick).user $+ *) | goto next } if ($read("blacklist.txt", w, * $+ $ial($nick).user $+ *)) { set %read $read("blacklist.txt", w, * $+ $ial($nick).user $+ *) | goto next } if ($read("blacklist.txt", w, * $+ $nick $+ *)) { set %read $read("blacklist.txt", w, * $+ $nick $+ *) | goto next } :next .timer 1 1 kick # $nick $nopath(%read) $+ , Blacklisted .timer 1 1 ban # $nick 3 } on *:join:#:if ($nick == $me) { /who # } dialog blacklist { title "Blacklist" size -1 -1 177 133 option dbu box "Blacklist view", 2, 2 1 173 130 list 1, 7 23 162 88, hsbar vsbar button "Add", 7, 7 113 31 12 button "Edit", 3, 73 113 31 12 button "Delete", 4, 40 113 31 12 button "Clear list", 5, 106 113 31 12 check "Disable", 6, 7 10 30 10 button "Close", 8, 139 113 31 12, ok } dialog Ablack { title "Blacklist Add" size -1 -1 183 39 option dbu box "Blacklist Add", 1, 2 0 179 37 edit "", 2, 30 9 107 11, autohs %breason edit "", 3, 30 21 147 11, autohs %breason text "Reason:", 4, 5 11 20 9 text "Address:", 5, 5 23 22 9 button "Done", 6, 139 9 37 11, ok } on *:dialog:Ablack:sclick:6:{ .timer 1 0 ablack .timer 1 0 if ($dialog(Blacklist)) { /loadbuf -ro blacklist 1 $+(",blacklist.txt,") } } on *:dialog:Ablack:init:0:{ did -ra ablack 2 %reason did -ra ablack 3 %addrss } on *:dialog:Ablack:close:0:{ unset %reason unset %addrss unset %read } on *:dialog:blacklist:sclick:6:{ if ($did(blacklist,6).state == 0) { unset %disablebl } | if ($did(blacklist,6).state == 1) { set %disablebl On } } on *:dialog:blacklist:sclick:5:{ set %blackclear $?!="Are you sure?" if (%blackclear == $true) { write -c $+(",blacklist.txt,") | /loadbuf -ro $dname 1 $+(",blacklist.txt,") | /rlevel blacklist } unset %blackclear } on *:dialog:blacklist:sclick:4:{ set %ruser $remove($nofile($did($dname,1,$did(1).sel).text),\) ruser blacklist %ruser write -dl $+ $did(1).sel $+(",blacklist.txt,") loadbuf -ro $dname 1 $+(",blacklist.txt,") unset %ruser } on *:dialog:blacklist:sclick:3:{ if ($did(1).sel == $null) { halt } set %reason $nopath($did($dname,1,$did(1).sel).text) set %addrss $remove($nofile($did($dname,1,$did(1).sel).text),\) set %bLine $did(1).sel set %blacklistbajs Yeah dialog -m eblack eblack } on *:dialog:blacklist:sclick:7:{ set %bLine $did(1).sel set %blacklistbajs Yeah dialog -m ablack ablack } on *:dialog:blacklist:dclick:1:{ set %reason $nopath($did($dname,1,$did(1).sel).text) set %addrss $remove($nofile($did($dname,1,$did(1).sel).text),\) dialog -m eblack eblack } on *:dialog:blacklist:init:0:{ if ($lines($+(",blacklist.txt,")) != 0) { loadbuf -ro $dname 1 $+(",blacklist.txt,") } if (%disablebl == On) { did -c $dname 6 } } dialog Eblack { title "Blacklist Edit" size -1 -1 183 39 option dbu box "Blacklist Edit", 1, 2 0 179 37 edit "", 2, 30 9 107 11, autohs %breason edit "", 3, 30 21 147 11, autohs %breason text "Reason:", 4, 5 11 20 9 text "Address:", 5, 5 23 22 9 button "Done", 6, 139 9 37 11, ok } on *:dialog:eblack:sclick:6:{ .timer 1 0 eblack .timer 1 0 if ($dialog(Blacklist)) { /loadbuf -ro blacklist 1 $+(",blacklist.txt,") } } on *:dialog:eblack:init:0:{ did -ra eblack 2 %reason did -ra eblack 3 %addrss } on *:dialog:eblack:close:0:{ unset %reason unset %addrss unset %read } menu nicklist { User Lists .Blacklist ..$iif($read($+(",blacklist.txt,"),w, $+ $address($$1,3) $+ *), $style(2)) Add:{ unset %bLine unset %blacklistbajs unset %addrss unset %bnick unset %read unset %addrss unset %reason unset %bLine unset %blacklistbajs unset %breason unset %baddress unset %eid2 unset %eid set %bnick $$1 if ($me == $$1) { echo $active $timestamp Blacklist Error: You can't add your self to the blacklist | halt } set %reason $$?="Enter blacklist reason:" set %blacklist $address(%bnick,3) .timer 1 0 write $+(",blacklist.txt,") %blacklist \ %reason | echo $active $timestamp Blacklist: " $+ %blacklist $+ " added with reason: " $+ %reason $+ " .guser blacklist $$1 3 | set %comchans $comchan(%bnick,0) allkick } ..- ..$iif($read($+(",blacklist.txt,"),w, $+ $address($$1,3) $+ *) == $null,$style(2)) Edit:{ set %addrss $address($$1,3) unset %addrss unset %bnick unset %read unset %addrss unset %reason unset %bLine unset %blacklistbajs unset %breason unset %baddress unset %eid2 unset %eid set %read $read($+(",blacklist.txt,"),w, $+ $address($$1,3) $+ *) set %addrss $remove($nofile(%read),\) set %reason $nopath(%read) set %bnick $$1 dialog -m Eblack Eblack } ..$iif($read($+(",blacklist.txt,"),w, $+ $address($$1,3) $+ *) == $null,$style(2)) Remove:{ unset %addrss unset %bnick unset %read unset %addrss unset %reason unset %bLine unset %blacklistbajs unset %breason unset %baddress unset %eid2 unset %eid set %blacklist $address($$1,3) if ($read($+(",blacklist.txt,"),w,%blacklist $+ *)) { .ruser blacklist $$1 3 | write -d $+(",blacklist.txt,") %blacklist $+ * | echo $active $timestamp Blacklist: " $+ %blacklist $+ " deleted! } :end unset %reason unset %blacklist } ..- ..View blacklist:{ unset %addrss unset %bnick unset %read unset %addrss unset %reason unset %bLine unset %blacklistbajs unset %breason unset %baddress unset %eid2 unset %eid /unset %bLine /unset %blacklistbajs /dialog -m blacklist blacklist } } menu query { User Lists .Blacklist ..$iif($read($+(",blacklist.txt,"),w, $+ $address($active,3) $+ *), $style(2)) Add:{ unset %bLine unset %blacklistbajs unset %addrss unset %bnick unset %read unset %addrss unset %reason unset %bLine unset %blacklistbajs unset %breason unset %baddress unset %eid2 unset %eid set %bnick $active if ($me == $active) { echo $active $timestamp Blacklist Error: You can't add your self to the blacklist | halt } set %reason $$?="Enter blacklist reason:" set %blacklist $address(%bnick,3) .timer 1 0 write $+(",blacklist.txt,") %blacklist \ %reason | echo $active $timestamp Blacklist: " $+ %blacklist $+ " added with reason: " $+ %reason $+ " .guser blacklist $active 3 | set %comchans $comchan(%bnick,0) allkick } ..- ..$iif($read($+(",blacklist.txt,"),w, $+ $address($active,3) $+ *) == $null,$style(2)) Edit:{ set %addrss $address($active,3) unset %addrss unset %bnick unset %read unset %addrss unset %reason unset %bLine unset %blacklistbajs unset %breason unset %baddress unset %eid2 unset %eid set %read $read($+(",blacklist.txt,"),w, $+ $address($active,3) $+ *) set %addrss $remove($nofile(%read),\) set %reason $nopath(%read) set %bnick $active dialog -m Eblack Eblack } ..$iif($read($+(",blacklist.txt,"),w, $+ $address($active,3) $+ *) == $null,$style(2)) Remove:{ unset %addrss unset %bnick unset %read unset %addrss unset %reason unset %bLine unset %blacklistbajs unset %breason unset %baddress unset %eid2 unset %eid set %blacklist $address($active,3) if ($read($+(",blacklist.txt,"),w,%blacklist $+ *)) { .ruser blacklist $active 3 | write -d $+(",blacklist.txt,") %blacklist $+ * | echo $active $timestamp Blacklist: " $+ %blacklist $+ " deleted! } :end unset %reason unset %blacklist } ..- ..View blacklist:{ unset %addrss unset %bnick unset %read unset %addrss unset %reason unset %bLine unset %blacklistbajs unset %breason unset %baddress unset %eid2 unset %eid /unset %bLine /unset %blacklistbajs /dialog -m blacklist blacklist } } alias eblack { echo $active -> %baddress a -> %breason .ruser blacklist %baddress if (%blacklistbajs == Yeah) { write -dl $+ %bLine $+(",blacklist.txt,") | goto next } write -d $+(",blacklist.txt,") %baddress \ %breason :next write $+(",blacklist.txt,") %baddress \ %breason echo $active $timestamp Blacklist Addressmark is now: " $+ %baddress $+ ", Reason is now: " $+ %breason $+ " if (%blacklistbajs == Yeah) { .auser blacklist %baddress | goto nextnext } .auser blacklist %baddress :nextnext unset %addrss unset %bnick unset %read unset %addrss unset %reason unset %bLine unset %blacklistbajs unset %breason unset %baddress unset %eid2 unset %eid if ($dialog(Blacklist)) { /loadbuf -ro blacklist 1 $+(",blacklist.txt,") } } alias ablack { echo $active -> %baddress -> %breason write $+(",blacklist.txt,") %baddress \ %breason .auser blacklist %baddress unset %addrss unset %bnick unset %read unset %addrss unset %reason unset %bLine unset %blacklistbajs unset %breason unset %baddress unset %eid2 unset %eid if ($dialog(Blacklist)) { /loadbuf -ro blacklist 1 $+(",blacklist.txt,") } } alias allkick { set %comchans $comchan(%bnick,0) if (%comchans == 0) { goto end } unset %i :i inc %i if ($me isop $comchan(%bnick,%i)) { .timer 1 0 ban $comchan(%bnick,%i) %bnick 3 | .timer 1 0 kick $comchan(%bnick,%i) %bnick %reason $+ , Blacklisted } if (%i == %comchans) { goto end } goto i :end unset %comchans unset %bnick unset %i unset %blacklist unset %reason unset %bnick } alias blacklist /dialog -m blacklist blacklist alias f7 /dialog -m blacklist blacklist on *:op:#:if ($me == $opnick) { onopkick } alias onopkick { if (%disablebl == On) { halt } set %ticks $ticks unset %i unset %nick unset %n if (%disablebl == On) { goto end } set %chan # set %chanT $nick(%chan,0) :loop unset %read inc %n set %i $nick(%chan,%n) set %host $address(%i,3) set %read $read("blacklist.txt", w, * $+ $address(%i,3) $+ *) if ($read("blacklist.txt", w, * $+ %host $+ *)) { .timer 1 0 kick # %i $nopath(%read) $+ , Blacklisted | .timer 1 0 ban # %i 3 } :next if (%n == %chanT) { goto end } goto loop :end echo -a $timestamp Done scaning for blacklisted users in $calc($ticks - %ticks) ms if (%chan != $active) { echo %chan $timestamp Done scaning for blacklisted users in $calc($ticks - %ticks) ms } }