IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  sohbet

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 04 Mart 2010, 11:52   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Clone Arama




Elimde yabancı bir siteden bulduğum şöyle bir kod var. Bu kodla kanalda, clone taraması yapıyorum. Ayrıca varsa bazı işlemler uyguluyorum. Benim istediğim, acaba bu tarama sonuçlarını kanalda değil de @Clones diye bir pencerede verdirebilir miyiz? Şimdiden teşekkürler.

alias showclones {
if ($hget(clones)) hfree clones
hmake clones 10
var %x = $nick($1,0)
while (%x) {
var %addr = $address($nick($1,%x),2)
; Get user's clones
var %g = $clones(%addr,$1)
var %n = $gettok(%g,2-,32), %g = $gettok(%g,1,32)
if (%n) && (!$hget(clones,%addr)) && (!$is_clone_prot($address($nick($1,%x),5))) {
; If we haven't already shown clones from this host then do that now
echo $colour(info) $1 *** %g clones from %addr $+ : %n
; If there are more clones than the threshold, and the user is not protected, start kicking
if ($2 = -k) && (%g > $thresh($chan)) && (!$is_clone_prot($address($nick($1,%x),5))) {
mode $chan +b %addr
.timer 1 600 mode $chan -b %addr
var %xx = $ialchan(%addr,$1,0)
while (%xx) {
if ($ialchan(%addr,$1,%xx).nick isreg $1) { kick $chan $ifmatch Clones from %addr }
dec %xx
}
}
hinc clones %addr
}
dec %x
}
hfree clones
}

; $clones(*!*@site,#channel)
; Returns the number of clones matching *!*@site and their nicknames in this format:
; N nicknames
; where N is the number of clones and nicknames is a space delimited list of the users.
alias clones {
var %x = $ialchan($1,$2,0)
if (%x = 1) { return 1 }
if (%x > 80) { return %x Too many to list }
var %r
while (%x) {
%r = %r $ialchan($1,$2,%x).nick
dec %x
}
return $ialchan($1,$2,0) %r
}

; The options below the seperator are per channel settings.
menu channel {
® CLONE ARAMA
.Göster clones in $chan:showclones #
.Kick/Ban current clones:if ($input(Are you sure you want to kick/ban all clones in $chan $+ ?,y)) { showclones # -k }
.$iif($($+(%,clones.join),2),$style(1)) Show clones on join:if ($($+(%,clones.join),2)) { set $+(%,clones.join) 0 } | else { set $+(%,clones.join) 1 }
.-
.$iif($($+(%,clones.kick.,$chan),2),$style(1)) Kick/Ban clones on join:if ($($+(%,clones.kick.,$chan),2)) { set $+(%,clones.kick.,$chan) 0 } | else { set $+(%,clones.kick.,$chan) 1 }
.Clone threshold - $thresh($chan).1:set $+(%,clones.th.,$chan) $input(Enter how many clones a site is allowed in the channel [0 means only 1 user/host $+ $chr(44) 1 means 2 users/host]:,e)
}
menu nicklist {
$iif(!$is_clone_prot($address($$1,5)),Clone Utilities)
.Protect User
..$submenu($getmasks($1))
$iif($is_clone_prot($address($$1,5)),Clone Utilities)
.Unprotect $is_clone_prot($address($$1,5)).addr:ruser $is_clone_prot($address($$1,5)).addr
}
alias -l getmasks {
if ($1 > 19) { return }
return $1 $address($snick($active,1),$1) $+ :auser cloneprotect $address($snick($active,1),$1)
}
; $is_clone_prot(nick!user@host)
; Returns $true of user is protected from clone kick
alias is_clone_prot {
var %x = $ulist(*,cloneprotect,0)
while (%x) {
var %a = $ulist(*,cloneprotect,%x)
if (%a iswm $1) { return $iif($prop = addr,%a,$true) }
dec %x
}
return $false
}
ON *:JOIN:#: {
; Show users clones
var %n = $clones($wildsite,$chan)
if ($($+(%,clones.join),2)) && (!$is_clone_prot($fulladdress)) {
if ($gettok(%n,2-,32)) {
echo -tc info2 $chan * $gettok(%n,1,32) clones from $wildsite $+ : $gettok(%n,2-,32)
}
}
; If you are opped, there are more clones from the host than the threshold allows, kicking clones has been enabled for this channel and the user is not protected, kick/ban the clones
if ($me isop $chan) && ($gettok(%n,1,32) > $thresh($chan)) && ($($+(%,clones.kick.,$chan),2)) && (!$is_clone_prot($fulladdress)) {
; Ban the host if we haven't already
if (!$($+(%,clonekicking,$cid,$chan,$wildsite),2)) {
mode $chan +b $wildsite
.timer 1 600 mode $chan -b $wildsite
set -u10 $+(%,clonekicking,$cid,$chan,$wildsite) 1
}
var %x = $ialchan($wildsite,$chan,0)
while (%x) {
; Kick this user is we haven't already
if ($ialchan($wildsite,$chan,%x).nick isreg $chan) && (!$($+(%,clonekicking,$cid,$chan,$ifmatch),2)) {
var %nick = $ialchan($wildsite,$chan,%x).nick
kick $chan %nick Clones from $wildsite
set -u10 $+(%,clonekicking,$cid,$chan,%nick) 1
}
dec %x
}
}
}
; Returns the clone threshold for a channel
; $thresh(#channel).N
; If you give the N parameter that value will be subtratced from the threshold.
; The threshold returns the maximum number of users a host can have in #channel,
; not the number of clones a host can have. Use $thresh(#channel).1 to get the
; number of clones a host can have.
alias -l thresh {
if ($gettok($($+(%,clones.th.,$1),2),1,32) != $null) { return $calc($ifmatch + 1 - $prop) }
return $calc(1 - $prop)
}


Konu SovaLyem tarafından (04 Mart 2010 Saat 12:01 ) değiştirilmiştir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları sohbet odaları Benimmekan Mobil Sohbet
Alt 04 Mart 2010, 12:14   #2
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Clone Arama




Kod:   Kodu kopyalamak için üzerine çift tıklayın!
alias showclones { if !$window(@Clones) { window -ne @Clones } if ($hget(clones)) hfree clones hmake clones 10 var %x = $nick($1,0) while (%x) { var %addr = $address($nick($1,%x),2) ; Get user's clones var %g = $clones(%addr,$1) var %n = $gettok(%g,2-,32), %g = $gettok(%g,1,32) if (%n) && (!$hget(clones,%addr)) && (!$is_clone_prot($address($nick($1,%x),5))) { ; If we haven't already shown clones from this host then do that now echo $colour(info) @Clones $1 *** %g clones from %addr $+ : %n ; If there are more clones than the threshold, and the user is not protected, start kicking if ($2 = -k) && (%g > $thresh($chan)) && (!$is_clone_prot($address($nick($1,%x),5))) { mode $chan +b %addr .timer 1 600 mode $chan -b %addr var %xx = $ialchan(%addr,$1,0) while (%xx) { if ($ialchan(%addr,$1,%xx).nick isreg $1) { kick $chan $ifmatch Clones from %addr } dec %xx } } hinc clones %addr } dec %x } hfree clones } ; $clones(*!*@site,#channel) ; Returns the number of clones matching *!*@site and their nicknames in this format: ; N nicknames ; where N is the number of clones and nicknames is a space delimited list of the users. alias clones { var %x = $ialchan($1,$2,0) if (%x = 1) { return 1 } if (%x > 80) { return %x Too many to list } var %r while (%x) { %r = %r $ialchan($1,$2,%x).nick dec %x } return $ialchan($1,$2,0) %r } ; The options below the seperator are per channel settings. menu channel { ® CLONE ARAMA .Göster clones in $chan:showclones # .Kick/Ban current clones:if ($input(Are you sure you want to kick/ban all clones in $chan $+ ?,y)) { showclones # -k } .$iif($($+(%,clones.join),2),$style(1)) Show clones on join:if ($($+(%,clones.join),2)) { set $+(%,clones.join) 0 } | else { set $+(%,clones.join) 1 } .- .$iif($($+(%,clones.kick.,$chan),2),$style(1)) Kick/Ban clones on join:if ($($+(%,clones.kick.,$chan),2)) { set $+(%,clones.kick.,$chan) 0 } | else { set $+(%,clones.kick.,$chan) 1 } .Clone threshold - $thresh($chan).1:set $+(%,clones.th.,$chan) $input(Enter how many clones a site is allowed in the channel [0 means only 1 user/host $+ $chr(44) 1 means 2 users/host]:,e) } menu nicklist { $iif(!$is_clone_prot($address($$1,5)),Clone Utilities) .Protect User ..$submenu($getmasks($1)) $iif($is_clone_prot($address($$1,5)),Clone Utilities) .Unprotect $is_clone_prot($address($$1,5)).addr:ruser $is_clone_prot($address($$1,5)).addr } alias -l getmasks { if ($1 > 19) { return } return $1 $address($snick($active,1),$1) $+ :auser cloneprotect $address($snick($active,1),$1) } ; $is_clone_prot(nick!user@host) ; Returns $true of user is protected from clone kick alias is_clone_prot { var %x = $ulist(*,cloneprotect,0) while (%x) { var %a = $ulist(*,cloneprotect,%x) if (%a iswm $1) { return $iif($prop = addr,%a,$true) } dec %x } return $false } ON *:JOIN:#: { ; Show users clones var %n = $clones($wildsite,$chan) if ($($+(%,clones.join),2)) && (!$is_clone_prot($fulladdress)) { if ($gettok(%n,2-,32)) { echo -tc info2 @Clones $chan * $gettok(%n,1,32) clones from $wildsite $+ : $gettok(%n,2-,32) } } ; If you are opped, there are more clones from the host than the threshold allows, kicking clones has been enabled for this channel and the user is not protected, kick/ban the clones if ($me isop $chan) && ($gettok(%n,1,32) > $thresh($chan)) && ($($+(%,clones.kick.,$chan),2)) && (!$is_clone_prot($fulladdress)) { ; Ban the host if we haven't already if (!$($+(%,clonekicking,$cid,$chan,$wildsite),2)) { mode $chan +b $wildsite .timer 1 600 mode $chan -b $wildsite set -u10 $+(%,clonekicking,$cid,$chan,$wildsite) 1 } var %x = $ialchan($wildsite,$chan,0) while (%x) { ; Kick this user is we haven't already if ($ialchan($wildsite,$chan,%x).nick isreg $chan) && (!$($+(%,clonekicking,$cid,$chan,$ifmatch),2)) { var %nick = $ialchan($wildsite,$chan,%x).nick kick $chan %nick Clones from $wildsite set -u10 $+(%,clonekicking,$cid,$chan,%nick) 1 } dec %x } } } ; Returns the clone threshold for a channel ; $thresh(#channel).N ; If you give the N parameter that value will be subtratced from the threshold. ; The threshold returns the maximum number of users a host can have in #channel, ; not the number of clones a host can have. Use $thresh(#channel).1 to get the ; number of clones a host can have. alias -l thresh { if ($gettok($($+(%,clones.th.,$1),2),1,32) != $null) { return $calc($ifmatch + 1 - $prop) } return $calc(1 - $prop) }


 
Alıntı ile Cevapla

Alt 04 Mart 2010, 12:36   #3
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Clone Arama




peki, arama nasıl yapıyor? işlevi hakkın da biraz bilgi alabilirmiyiz? Clone taraması yapan bir çok code var ve bunun kadar da uzun değil acaba bunun farklı bir özelliğimi var? yoksa sadece diğerleri gibi kanalda bir İP'den giren 2-3 vs kullanıcıları mı gösteriyor sadece?

 
Alıntı ile Cevapla

Alt 04 Mart 2010, 13:46   #4
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Clone Arama




Kodu henüz yeni buldum. Fazla kullanma imkanım olmadı; ancak kendi nicklerimle bir iki deneme yaptım.
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.



Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


1. Nicklistte bir nicke sağ tıklayıp klon arama işlemi yapabiliyorsunuz. Bulunması durumunda kickban uygulayabiliyorsunuz.

2. Resimde de görüldüğü gibi kanalda sağ tıklayıp bazı işlemleri yapabiliyor ve sonuçlarına göre isterseniz kick ban atabiliyorsunuz. Yeni haliyle, klon sonuçlarını @Clones penceresinde görebiliyorsunuz.

3. Yukarıdaki resme bakarsak;
a) #x kanalındaki klonları göster (@Clones penceresinde sonuçları gösterir)
b) Mevcut klonlara kickban uygula (Yaptığınız tarama sonucunda bulunan klonlara kickban)
c) Kanala yeni gelen kullanıcılar içerisinde klon olur olmaz gösterir (Bunu status penceresinde gösteriyor. XcLusive buna da el atıp bu kısmı aktif pencereye alırsa süper olacak :P Sanırım bu kısımda ON *:JOIN:#: {
; Show users clones
bir değişiklik yapılması gerekiyor.)
d) Mevcut klonlar=0(sıfır)

Dediğim gibi kodun yeni haliyle sadece birkaç dk kendi nicklerimle deneme imkanım oldu.


Konu SovaLyem tarafından (04 Mart 2010 Saat 13:57 ) değiştirilmiştir.
 
Alıntı ile Cevapla

Alt 04 Mart 2010, 18:02   #5
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Clone Arama




hmm hoş bir clone kodu teşk ederim bu güzel açıklama için

 
Alıntı ile Cevapla

Cevapla

Etiketler
arama, clone, mirc, mirc download, mirc indir


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Grinfe,internet,arama motoru,müzik Türk arama motoru güçleniyor! Deep Alternatif Arama Motorları 0 10 Aralık 2011 02:36
Arama Motoruna Kayit Fiyatı,Arama Motorlarına Kayıt PauL Alternatif Arama Motorları 0 25 Ekim 2011 14:58
Arama motoru yerine toolbardan arama yap kazan. MT EkoL İnternetten Para Kazanma Yolları 0 12 Kasım 2009 15:46
@clone Penceresinde Nick1 Nick2 Nick3 gibi Clone'ları Göstersin. DarK^ mIRC Scripting Sorunları 8 22 Ekim 2008 17:13
Clone Gostergesi / Clone Bans morveotesii mIRC Scripting Sorunları 3 23 Şubat 2006 16:01