on *:load: {
if ($version > 6.0) {
echo Bad word Pro
echo 7PuNishER
echo Check your popups, or type4 /BadWord
}
else {
echo Version 6.0 or higher required, get a newer version of mirc at http://www.mirc.com
unload -rs $script
}
}
on *:unload: {
echo -s Badword Pro by PuNishER unloaded.
if ($isfile(badwords.ini)) echo -s Files left after usage :4 $mircdirBadwords.ini
echo -s Glad you used this :]
hfree badword
}
on *:start: {
hmake badword 100
if ($isfile(badwords.ini)) hload badword badwords.ini
}
on *:close: {
hsave badword badwords.ini
}
alias badword {
if ($dialog(badword)) {
dialog -ve badword badword
}
else dialog -mdo badword badword
}
alias -l badword.ref {
var %ss $hget(badword,0).data
while (%ss) {
did -a badword 1 $hget(badword,%ss).item = $hget(badword,%ss).data
dec %ss
}
}
alias -l add.badwords {
if ($dialog(badword)) { dialog -i badword }
var %bw $$input(Enter badwords for %badwords,e,Add badwords)
if (%bw != $null) { hadd -m badword %badwords %bw }
if ($dialog(badword)) {
did -r badword 1
badword.ref
dialog -e badword
}
}
dialog badword {
title "Bad Word Pro by PuNishER"
size -1 -1 210 125
option dbu
list 1, 5 5 135 75, size sort autovs
edit "", 2, 35 85 43 10, autohs
edit "", 3, 40 100 135 10, autohs
button "Add", 4, 80 85 25 10, flat
button "Remove", 5, 110 85 35 10, flat
button "Close", 6, 150 85 30 10, flat ok
text "BadWord Msg :", 7, 4 100 35 8
text "BadWord :", 8, 4 85 22 8
box "Punishment:", 9, 145 50 61 33
radio "Warn", 10, 148 60 23 10, group
radio "Kick", 11, 148 70 25 10
radio "DeMote", 12, 172 60 30 10
radio "Kick/Ban", 13, 172 70 30 10
}
on *:dialog:badword:init:*: {
badword.ref
if (%BadWord.p == w) { did -c BadWord 10 }
elseif (%BadWord.p == k) { did -c BadWord 11 }
elseif (%BadWord.p == d) { did -c badWord 12 }
elseif (%BadWord.p == kb) { did -c badWord 13 }
}
on *:dialog:badword:sclick:*: {
if ($did == 1) {
if ($did(1).seltext != $null) {
did -r $dname 2,3
did -a $dname 2 $gettok($did(1).seltext,1,32)
did -a $dname 3 $gettok($did(1).seltext,3-,32)
}
}
if ($did == 4) {
if ($did(2).text != $null) && ($did(3).text != $null) && ($left($did(2).text,1) != $chr(32)) && ($left($did(3).text,1) != $chr(32)) {
hadd -m badword $did(2).text $did(3).text
}
did -r $dname 1,2,3
badword.ref
}
if ($did == 5) {
if ($did(1).seltext != $null) {
hdel badword $gettok($did(1).seltext,1,32)
}
did -r $dname 1,2,3
badword.ref
}
if ($did == 6) {
hsave badword badwords.ini
}
if ($did == 10) {
set %badWord.p w
}
if ($did == 11) {
set %badWord.p k
}
if ($did == 12) {
set %badWord.p d
}
if ($did == 13) {
set %badWord.p kb
}
}
#badword on
on *:join:*: {
if ($hget(badword,$nick)) {
msg $chan $nick $hget(badword,$nick)
if (%badword.p == w) { msg $chan $nick $hget(badword,$hfind(badword,$gettok($1-,%a,32),1)) }
if (%badword.p == k) { kick $chan $nick | msg $chan $nick $hget(badword,$hfind(badword,$gettok($1-,%a,32),1)) }
if (%badword.p == d) { mode $chan -aohv $nick $nick $nick $nick | msg $chan $nick $hget(badword,$hfind(badword,$gettok($1-,%a,32),1)) }
if (%badword.p == kb) { mode $chan +bbb $nick $nick $nick $address($nick,2) $address($nick,9) $nick | kick $chan $nick | msg $chan $nick $hget(badword,$hfind(badword,$gettok($1-,%a,32),1)) }
}
inc %a
}
}
#badword end
menu menubar,channel,status,nicklist,query {
BadWordPro
.BadWord Pro:badword
.$$iif($group(#badword).status == on,Disable):.disable #badword | echo Bad Word Pro OFF
.$$iif($group(#badword).status == off,Enable):.enable #badword | echo Bad Word Pro ON
.-
.Unload:unload -rs $script
}