Kod: Kodu kopyalamak için üzerine çift tıklayın!
on *:load: {
set %aaslban1 1
set %aaslban2 0
set %aaslban3 1
set %aaslban4 0
set %aaslban5 0
set %aaslban6 0
set %aaslscanono 0
set %aaslscanall 1
set %aaslreason shitlisted
set %aaslkickc 1
set %aaslkickn 1
set %aaslstatus 1
set %aaslwho 1
set %aaslwhos 1
.enable #aashit
+shitlist
}
on *:unload: {
unset %aasl*
}
alias +shitlist { if !$dialog(shitlist) { dialog -m shitlist shitlist } }
dialog shitlist {
title “Shitlist (- Edit by RNA -)”
size -1 -1 152 170
option dbu
tab “Kullanıcılar”, 100, 1 1 150 153
box “”, 1, 4 14 145 137, tab 100
list 2, 7 21 139 63, size vsbar hsbar tab 100
text “*Mask*:”, 17, 7 86 20 8, tab 100
edit “”, 3, 30 85 116 10, autohs tab 100
text “Sebep (Otomatik için boş bırakın):”, 8, 7 97 90 8, tab 100
edit “”, 10, 7 105 139 10, autohs tab 100
text “Kanallar (Boşsa tüm kanallar için):”, 4, 7 117 100 8, tab 100
edit “”, 5, 7 125 139 10, autohs tab 100
button “Ekle”, 12, 7 138 69 10, tab 100
button “Sil”, 13, 77 138 69 10, tab 100
tab “Ayarlar”, 101
box “”, 20, 4 14 145 137, tab 101
text “Bu mask’ları listeye ekle (Nick listesinin içinden):”, 21, 7 21 120 8, tab 101
check “nick!*@*”, 22, 7 30 50 8, tab 101
check “*!*user@*”, 23, 70 30 50 8, tab 101
check “*!*user@host”, 24, 7 40 50 8, tab 101
check “*!*@host”, 25, 70 40 50 8, tab 101
check “*!*user@*.host”, 26, 7 50 50 8, tab 101
check “*!*@*.host”, 27, 70 50 50 8, tab 101
text “NOT:: *Mask* tiplerinin bu şekilde olması önerilir, aksi halde durmadan kanalı tararsınız.”, 28, 7 60 130 16, tab 101
check “Ben op’ken userlar için tara”, 29, 7 78 100 8, tab 101
check “User eklediğimde bütün kanalları tara”, 30, 7 91 110 8, tab 101
text “Otomatik Kick Mesajı (Boş bırakırsanız ‘Shitlist’ olacak):”, 31, 7 104 130 8, tab 101
edit “”, 32, 7 114 139 10, tab 101
check “Girince ‘/who’ çek”, 34, 7 127 50 10, tab 101
check “‘/who’ bilgilerini gösterme”, 35, 70 127 62 10, tab 101
check “Shitlist’i Aç/kapa”, 14, 7 138 50 10, tab 101
check “Kick Sayacı”, 33, 70 138 50 10, tab 101
button “Tamam”, 16, 31 158 45 10, default ok
button “Beni Oku”, 200, 77 158 45 10
}
on *:dialog:shitlist:sclick:*: {
if $did == 2 {
did -ra $dname 3 $did(2).seltext
did -ra $dname 5 $gettok($ulist($did(2).seltext).info,2,9)
did -ra $dname 10 $gettok($ulist($did(2).seltext).info,1,9)
}
if $did == 13 {
ruser aaslu $did(2).seltext
did -r $dname 3,5,10
did -d $dname 2 $did(2).sel
}
if $did == 12 {
if $did(3).text != $null {
auser aaslu $iif(* isin $did(3).text,$did(3).text,$did(3).text $+ !*@*) $iif($did(10).text != $null,$did(10).text,Shitlisted) $chr(9) $iif($did(5).text != $null,$did(5).text)
did -r $dname 2
shit.addlist
}
did -r $dname 3,5,10
}
if $did == 14 {
if $did(14).state == 1 {
.enable #aashit
set %aaslstatus 1
}
if $did(14).state == 0 {
.disable #aashit
set %aaslstatus 0
}
}
if $did == 16 {
$iif($did(22).state == 1,set %aaslban1 1,set %aaslban1 0)
$iif($did(23).state == 1,set %aaslban2 1,set %aaslban2 0)
$iif($did(24).state == 1,set %aaslban3 1,set %aaslban3 0)
$iif($did(25).state == 1,set %aaslban4 1,set %aaslban4 0)
$iif($did(26).state == 1,set %aaslban5 1,set %aaslban5 0)
$iif($did(27).state == 1,set %aaslban6 1,set %aaslban6 0)
$iif($did(29).state == 1,set %aaslscanono 1,set %aaslscanono 0)
$iif($did(30).state == 1,set %aaslscanall 1,set %aaslscanall 0)
$iif($did(32).text != $null,set %aaslreason $did(32).text,set %aaslreason shitlisted)
$iif($did(33).state == 1,set %aaslkickc 1,set %aaslkickc 0)
$iif($did(34).state == 1,set %aaslwho 1,set %aaslwho 0)
$iif($did(35).state == 1,set %aaslwhos 1,set %aaslwhos 0)
}
if $did == 200 {
run $findfile($mircdir,aasl_readme.txt,1)
}
}
on *:dialog:shitlist:init:*: {
shit.addlist
if %aaslstatus == 1 { did -c $dname 14 }
if %aaslban1 == 1 { did -c $dname 22 }
if %aaslban2 == 1 { did -c $dname 23 }
if %aaslban3 == 1 { did -c $dname 24 }
if %aaslban4 == 1 { did -c $dname 25 }
if %aaslban5 == 1 { did -c $dname 26 }
if %aaslban6 == 1 { did -c $dname 27 }
if %aaslscanono == 1 { did -c $dname 29 }
if %aaslscanall == 1 { did -c $dname 30 }
if %aaslkickc == 1 { did -c $dname 33 }
if %aaslwho == 1 { did -c $dname 34 }
if %aaslwhos == 1 { did -c $dname 35 }
did -a $dname 32 %aaslreason
}
alias shit.addlist {
var %a $ulist(*,aaslu,0)
while (%a >= 1) {
did -a shitlist 2 $ulist(*,aaslu,%a)
dec %a
}
}
menu channel {
-
Shitlist
.Shitlist:/+shitlist
.-
.$iif(($me isop #) && ($group(#aashit).status == on),Scan users):/aaslscan #
-
}
menu menubar {
-
Shitlist
.Aç:/+shitlist
.-
.Beni Oku/Yardım:/run $findfile($mircdir,aasl_readme.txt,1)
.-
.Shitlist’i Sil:/unload -rs aasl.mrc
-
}
raw 315:*: {
if %aaslscan == on { aaslscan $2 | unset %aaslscan }
if %aaslwhos == 1 { haltdef }
}
raw 352:*: {
if %aaslwhos == 1 { haltdef }
}
#aashit on
menu nicklist {
-
Shitlist
.Ekle $$1
..*mask* ‘ları belirt {
set %aaslr $?=”Sebep:”
$iif(%aaslban1 == 1,auser aaslu $$1 $+ !*@* $iif(%aaslr != $null,%aaslr,%aaslreason) $chr(9))
$iif(%aaslban2 == 1,auser aaslu $gettok($address($$1,1),1,64) $+ @* $iif(%aaslr != $null,%aaslr,%aaslreason) $chr(9))
$iif(%aaslban3 == 1,auser aaslu $address($$1,1) $iif(%aaslr != $null,%aaslr,%aaslreason) $chr(9))
$iif(%aaslban4 == 1,auser aaslu $address($$1,2) $iif(%aaslr != $null,%aaslr,%aaslreason) $chr(9))
$iif(%aaslban5 == 1,auser aaslu $address($$1,3) $iif(%aaslr != $null,%aaslr,%aaslreason) $chr(9))
$iif(%aaslban6 == 1,auser aaslu $address($$1,4) $iif(%aaslr != $null,%aaslr,%aaslreason) $chr(9))
aaslkick $chan $$1 $iif(%aaslr != $null,%aaslr,%aaslreason)
unset %aaslr
}
..-
..$$1 $+ !*@* {
set %aaslr $?=”Sebep:”
auser aaslu $$1 $+ !*@* $iif(%aaslr != $null,%aaslr,%aaslreason) $chr(9)
aaslkick $chan $$1 $iif(%aaslr != $null,%aaslr,%aaslreason)
unset %aaslr
}
..$gettok($address($$1,1),1,64) $+ @* {
set %aaslr $?=”Sebep:”
auser aaslu $gettok($address($$1,1),1,64) $+ @* $iif(%aaslr != $null,%aaslr,%aaslreason) $chr(9)
aaslkick $chan $$1 $iif(%aaslr != $null,%aaslr,%aaslreason)
unset %aaslr
}
..$address($$1,1) {
set %aaslr $?=”Sebep:”
auser aaslu $address($$1,1) $iif(%aaslr != $null,%aaslr,%aaslreason) $chr(9)
aaslkick $chan $$1 $iif(%aaslr != $null,%aaslr,%aaslreason)
unset %aaslr
}
..$address($$1,2) {
set %aaslr $?=”Sebep:”
auser aaslu $address($$1,2) $iif(%aaslr != $null,%aaslr,%aaslreason) $chr(9)
aaslkick $chan $$1 $iif(%aaslr != $null,%aaslr,%aaslreason)
unset %aaslr
}
..$address($$1,3) {
set %aaslr $?=”Sebep:”
auser aaslu $address($$1,3) $iif(%aaslr != $null,%aaslr,%aaslreason) $chr(9)
aaslkick $chan $$1 $iif(%aaslr != $null,%aaslr,%aaslreason)
unset %aaslr
}
..$address($$1,4) {
set %aaslr $?=”Sebep:”
auser aaslu $address($$1,4) $iif(%aaslr != $null,%aaslr,%aaslreason) $chr(9)
aaslkick $chan $$1 $iif(%aaslr != $null,%aaslr,%aaslreason)
unset %aaslr
}
-
}
alias -l aaslkick {
if %aaslscanall == 1 {
var %c 1
while (%c <= $comchan($2,0)) {
if $me isop $comchan($2,%c) {
mode $comchan($2,%c) +b $address($2,1)
kick $comchan($2,%c) $2 $3- $iif(%aaslkickc == 1,< $+ %aaslkickn $+ >)
}
inc %c
}
}
else {
if $me isop $chan {
mode $1 +b $address($2,1)
kick $1 $2 $3- $iif(%aaslkickc == 1,< $+ %aaslkickn $+ >)
}
}
}
on *:kick:#: {
if $nick == $me {
inc %aaslkickn
}
}
on @*:join:#: {
if ($level($fulladdress) == aaslu) {
if (# isin $gettok($ulist($fulladdress).info,2,9)) || ($gettok($ulist($fulladdress).info,2,9) == $null) {
mode # +b $address($nick,1)
kick # $nick $gettok($ulist($fulladdress).info,1,9) $iif(%aaslkickc == 1,< $+ %aaslkickn $+ >)
}
}
}
on *:join:#: {
if $nick == $me {
if %aaslwho == 1 {
who #
}
}
}
on *:op:#: {
if $opnick == $me {
if %aaslscanono == 1 {
aaslscan #
}
}
}
on *:nick: {
if ($level($address($newnick,5)) == aaslu) {
var %c 1
while (%c <= $comchan($newnick,0)) {
if $me isop $comchan($newnick,%c) {
if ($comchan($newnick,%c) isin $gettok($ulist($address($newnick,5)).info,2,9)) || ($gettok($ulist($address($newnick,5)).info,2,9) == $null) {
mode $comchan($newnick,%c) +b $address($newnick,1)
kick $comchan($newnick,%c) $newnick $gettok($ulist($address($newnick,5)).info,1,9) $iif(%aaslkickc == 1,< $+ %aaslkickn $+ >)
}
}
inc %c
}
}
}
alias aaslscan {
if $me isop $1 {
if ($chan($1).ial == $false) {
.ial on
set %aaslscan on
who $1
echo -a 10:: 12Lütfen bekleyin. while /who $1 $+ Komut işleniyor…
}
else {
var %n 1
while (%n <= $nick($1,0)) {
var %u 1
while (%u <= $ulist(*,aaslu,0)) {
if ($ulist(*,aaslu,%u) iswm $address($nick($1,%n),5)) {
if ($1 isin $gettok($ulist(*,aaslu,%u).info,2,9)) || ($gettok($ulist(*,aaslu,%u).info,2,9) == $null) {
mode $1 +b $address($nick($1,%n),1)
if $nick($1,%n) ison $1 {
kick $1 $nick($1,%n) $gettok($ulist($address($nick($1,%n),5)).info,1,9) $iif(%aaslkickc == 1,< $+ %aaslkickn $+ >)
}
}
}
inc %u
}
inc %n
}
}
}
}
#aashit end