Kod:
alias trustedlist {
var %list =
if ($isfile(trusted.txt)) {
var %i = 1
while ($read(trusted.txt, %i)) {
var %list = %list $v1
inc %i
}
}
return %list
}
alias istrusted {
var %i = 1
while ($gettok($trustedlist, %i, 32)) {
if ($address($1,2) iswm $v1) return $true
inc %i
}
return $false
}
alias adminlist {
var %list =
if ($isfile(admins.txt)) {
var %i = 1
while ($read(admins.txt, %i)) {
var %list = %list $v1
inc %i
}
}
return %list
}
alias isauthorized {
if ($istok($adminlist, $nick, 32)) return $true
return $false
}
on *:text:!ipban*:#: {
if (!$isauthorized) {
msg $chan [HATA] Bu komutu kullanma yetkiniz yok.
return
}
var %cmd = $1-
tokenize 32 %cmd
if ($2 == $null) {
msg $chan Kullanım: !ipban <nick> [sebep] [-süre]
return
}
ipbanall $2 $3- $chan
}
on *:text:!unban*:#: {
if (!$isauthorized) {
msg $chan [HATA] Bu komutu kullanma yetkiniz yok.
return
}
var %nick = $2
var %ip = $address(%nick,2)
if (%ip == $null) {
msg $chan Hata: %nick kullanıcısının IP adresi alınamadı.
return
}
var %i = 1
while ($chan(%i)) {
if ($me isop $v1) mode $v1 -b %ip
inc %i
}
msg $chan [UNBAN] %nick (%ip) tüm kanallardan banı kaldırıldı.
write logs/ipban.log [ $date $time ] %nick (%ip) ban kaldırıldı (manuel)
}
alias ipbanall {
if ($1 == $null) {
echo -a Kullanım: /ipbanall <nick> [sebep] [-süre]
return
}
var %nick = $1
var %reason = $iif($2-, $remove($2-, -$3), Sebep belirtilmedi)
var %duration = $iif($left($3,1) == -, $right($3, $calc($len($3) -1)), 0)
var %ip = $address(%nick,2)
if ($istrusted(%nick)) {
echo -a [GÜVENLİ] %nick (%ip) banlanmadı.
return
}
if (%ip == $null) {
echo -a Hata: %nick adlı kullanıcının IP’si alınamadı.
return
}
var %i = 1
while ($chan(%i)) {
if ($me isop $v1) {
mode $v1 +b %ip
kick $v1 %nick %reason
if (%duration > 0) .timerunban $+ $v1 $+ %nick 1 %duration mode $v1 -b %ip
}
inc %i
}
echo -a [BAN] %nick (%ip) -> Tüm kanallardan banlandı. Sebep: %reason Süre: $iif(%duration > 0, %duration saniye, Süresiz)
write logs/ipban.log [ $date $time ] %nick (%ip) Banlandı - Sebep: %reason Süre: $iif(%duration > 0, %duration sn, Süresiz)
msg $3 [SİSTEM] %nick (%ip) kullanıcısı tüm kanallardan banlandı. Sebep: %reason $iif(%duration > 0, (Süre: %duration sn), (Süresiz))
}
Komutlar;
/ipbanall [nick] Reklam yapıyor
/ipbanall [nick] Spam -120
!ipban [nick] Flood -60
!unban [nick]