Fat's BlackList Addon — File Browser
FatsBlackListAddonv1.0 / FatsBlackListAddonv1.0 / BlackList.mrc
BlackList.mrc — 4.66 KB — Download this file
dialog blist {
title "Black List"
size -1 -1 146 210
option dbu
list 1, 4 23 116 65, size
check "Enable", 2, 2 3 50 10
button "Add", 3, 121 24 19 12
button "Del", 4, 121 37 19 12
button "Ok", 5, 125 196 19 12, ok
radio "Kick", 6, 6 100 24 10
radio "Kick & Ban", 7, 98 100 33 10
edit "", 8, 5 150 135 10
radio "Ban", 11, 53 100 24 10
check "Temp Ban", 12, 7 118 35 10
edit "", 13, 42 118 15 10 autohs
text "(seconds)", 14, 60 119 25 8
box "Default Kick Reason:", 15, 1 139 143 26
box "Punish", 16, 1 91 143 45
box "Black Listed", 17, 1 16 143 75
box "Don't Kick Or Ban In (e.g: #chan1,#chan2,#chan3)", 18, 1 167 144 27
edit "", 19, 5 178 135 10
}
on *:dialog:blist:init:0:{
dll $+(",$scriptdirmdx.dll,") SetMircVersion $version | dll $+(",$scriptdirmdx.dll,") MarkDialog $dname
dll $+(",$scriptdirmdx.dll,") SetControlMDX $dname 1 ListView report grid rowselect showsel nosortheader single > [ $scriptdirviews.mdx ]
did -i $dname 1 1 headerdims 110 180
did -i $dname 1 1 headertext Nick/Host $chr(9) Kick Reason
var %i = 1
while ($read($scriptdirblacklist.txt,%i)) {
did -a $dname 1 $gettok($ifmatch,1,32) $chr(9) $gettok($ifmatch,2-,32)
inc %i
}
did -c $dname $iif(%blist.punish == kick,6,$iif(%blist.punish == ban,11,$iif(%blist.punish == kb,7)))
did -a $dname 8 %blist.msg
if (%blist.temp == on) { did -c $dname 12 }
if ($group(#blacklist) == on) { did -c $dname 2 }
did -a $dname 13 %blist.temptime
did -a $dname 19 %blist.notkickin
}
on *:dialog:blist:sclick:*:{
if ($did == 2) { $iif($did(2).state == 1,.enable,.disable) #blacklist }
if ($did == 3) {
var %a = $$?="Insert Nickname / Host"
var %b = $?="insert kick reason (null = no reason)"
write $+(",$scriptdirblacklist.txt,") %a $iif(%b,%b)
did -a $dname 1 %a $chr(9) %b
}
if ($did == 4 && $did(1).sel != $null) { write -dl $+ $calc($did(1).sel - 1) $scriptdirblacklist.txt | did -d $dname 1 $did(1).sel }
if ($did == 6) { set %blist.punish kick }
if ($did == 11) { set %blist.punish ban }
if ($did == 7) { set %blist.punish kb }
if ($did == 12) { set %blist.temp $iif($did(12).state == 1,on,off) }
}
on *:dialog:blist:edit:*:{
if ($did == 8 && $did(8).text != $null) { set %blist.msg $did(8).text }
if ($did == 13 && $did(13).text isnum) { set %blist.temptime $did(13).text }
if ($did == 19) { if ($did(19).text == $null) { unset %blist.notkickin } | else { set %blist.notkickin $did(19).text } }
}
#blacklist off
on !@*:join:#:{
if ($chan !isin %blist.notkickin) {
if ($read($scriptdirblacklist.txt, s, $nick)) {
if (%blist.punish == kick) { kick # $nick $iif($read($scriptdirblacklist.txt, s, $nick),$ifmatch,%blist.msg) }
if (%blist.punish == kb) { ban $iif(%blist.temp == on,-u [ $+ [ %blist.temptime ] ]) # $nick 2 | kick # $nick $iif($read($scriptdirblacklist.txt, s, $nick),$ifmatch,%blist.msg) }
if (%blist.punish == ban) { ban $iif(%blist.temp == on,-u [ $+ [ %blist.temptime ] ]) # $nick }
halt
}
else {
var %address $blist.address($nick)
if (%address isnum) {
if (%blist.punish == kick) { kick # $nick $iif($read($scriptdirblacklist.txt, s, $address($nick,%address)),$ifmatch,%blist.msg) }
if (%blist.punish == kb) { ban $iif(%blist.temp == on,-u [ $+ [ %blist.temptime ] ]) # $address($nick,%address) | kick # $nick $iif($read($scriptdirblacklist.txt, s, $address($nick,%address)),$ifmatch,%blist.msg) }
if (%blist.punish == ban) { ban $iif(%blist.temp == on,-u [ $+ [ %blist.temptime ] ]) # $address($nick,%address) }
halt
}
}
}
}
#blacklist end
alias blist.address {
var %i = 1
while (%i <= 12) {
if ($read($scriptdirblacklist.txt, s, $address($1,%i))) { return %i }
inc %i
}
return $false
}
menu nicklist {
Blacklist
.$iif($read($scriptdirblacklist.txt, s, $$1),.Del $$1,Add $$1): if ($read($scriptdirblacklist.txt, s, $$1)) { write -ds $+ $$1 $scriptdirblacklist.txt } | else { var %a = $$?="insert reason (null = no reason)" | write $scriptdir.txt $$1 $iif(%a,%a) }
}
menu channel,status,menubar {
Blacklist Dialog:$iif(!$dialog(blist).title,dialog -m blist blist)
}
on *:load:{
set %blist.msg BlackListed
set %blist.punish kick
set %blist.temptime 60
echo -a 4Fat's BlackList Addon Is No Loaded!
echo -a 4Use Popups To Enter The BlackList Dialog.
echo -a 4You Can Add Nick OR Host!, Quickly Add Nick By The Nicklist Popup.
echo -a 4Enjoy, Addon Made By Youthanasia!
}
on *:unload:{
.remove $+(",$scriptdirblacklist.txt,")
unset %blist.*
echo -a 4Blacklist Addon Unloaded.
}