Yazan: L4roXyL
-
İlk öncelikle kurulumunu anlatmak istiyorum.
Bu kod'u kendi mIRC'inize değil, başka bir mIRC'e entegre ederek #help(değişir) ve #help-op(değişir) kanalına sokunuz. Yani kod'u eklediğiniz mIRC, kullandığınız mIRC olmasın.
Helpfounder yardımcısı neler yapar?
Help kanal'ına girip 1 saniye içinde op/sop/halfop olan herhangi bir nick'i helper listesine ekler. Ayrıca girdiği tarihi kayıt eder.
Helper listesine eklenen nick'in;
Kaç adet ban attığını,
Kaç adet ban açtığını,
Kaç adet voice verdiğini,
Kaç adet voice aldığını,
Help kanalına kaç satır text gönderdiğini,
Help kanalına kaç defa giriş/çıkış yaptığını;
Komutlar listesi;(Sadece helpfounder uygulayabilir)
Genel komutlar;
!voicelist (#Help kanalında kayıt gününden beri verilen tüm voice'leri sıralar)
!devoicelist (#Help kanalında kayıt gününden beri alınan tüm voice'leri sıralar)
!banlist (#Help kanalında kayıt tarihinden beri atılan tüm banları sıralar)
!unbanlist (#Help kanalında kayıt tarihinden beri açılan tüm banları sıralar)
!Helperler (#Help kanalında takip listesinde olan tüm helper'ları sıralar)
!sıfırla tümü (#Help kanalı için varolan tüm kayıtları sıfır'lar)
Kişisel komutlar:
!ekle helper-nick (Takip listesine helper eklemek için kullanılır)
!sil helper-nick (Takip listesinde ekli olan bir helper'i siler)
!istatistik helper-nick (Takip listesinde kayıtlı olan helper hakkında ayrıntılı bilgiler verir)
!takip helper-nick (Takip listesinde kayıtlı olan helper'in, hangi tarihlerde giriş/çıkış yaptığını gösterir)
!tsil helper-nick (Takip listesinde kayıtlı olan helper'in, giriş/çıkış tarihlerini sıfır'lar)
Ve kullandıkça anlıyacağınız bir çok özellik daha ekledim.
Bir kaç düzenleme yapmanız gerekmekte;
Bunları kod'un içinde zaten belirteceğim;
Kod:
alias yuzde { return $+($chr(40),%,$left($calc($hget($1,v) * 100 / $hget($2,v)),4),$chr(41)) }
alias yuzde2 { return $+($chr(40),%,$calc($left(100.000000,4) - $remove($yuzde($1,$2),$chr(41),$chr(40),%)),$chr(4 1)) }
alias yuzde3 { return $+($chr(40),%,$left($calc($hget($1,$2) * 100 / $hget($3,v)),4),$chr(41)) }
alias ll { return $calc($hget($1,v)-$hget($2,v)) }
alias kapsa { return $+($chr(2),$1-,$chr(2)) }
alias kontrol { if $count($nick($1,$2).pnick,@,~,%,& != 0 { hadd -m nickler $2 1 | hsave -i nickler nickler.db | hinc -m giris $2 1 | hsave -i giris giris.db | hinc -m ygiris v 1 | hsave -i ygiris ygiris.db | write $+(helper/,$2,.,txt) $+(=>,$chr(40),$chr(2),$chr(31),Giriş,$chr(31),$ch r(2),$chr(41),$chr(32),$chr(40),$chr(2),$date,$chr (2),$chr(41)) Gün: $gun($+($chr(2),$day,$chr(2))) - Saat: $+($chr(2),$time,$chr(2)) } | else { helperler #HELP-OP #HELP-OP | msg #HELP-OP #Help kanalına giriş yapıldı. Nick: $+($chr(2),$2,$chr(2)) } }
alias gun { return $replace($1,Monday,Pazartesi,Tuesday,Salı,Wednesda y,Çarşamba,Thursday,Perşembe,Friday,Cuma,Saturday, Cumartesi,Sunday,Pazar) }
alias pp { var %& = $numtok($findfile($mircdir,*.db,1),92) | var %j = 1, %k = $findfile($mircdir,*.db,0) | while %j <= %k { if $gettok($findfile($mircdir,*.db,%j),%&,92) != nickler.db { echo -a $gettok($findfile($mircdir,*.db,%j),%&,92) } | inc %j } | hfree -w * | unset %trh | hsil }
alias helperler { if $1 { var %1 = 1,%2 = $nick($1,0),%3 | while %1 <= %2 { if $nick($1,%1) != $me { %3 = $addtok(%3,$nick($1,%1),32) } | inc %1 } } msg $2 %3 }
alias hsil { var %s = $numtok($findfile(helper,*.txt,1),92) | var %1 = 1,%2 = $findfile(helper,*.txt,0) | while %1 <= %2 { remove $gettok($findfile(helper,*.txt,%1),%s,92) | inc %1 } }
alias sil {
hdec voiceler v $hget(vc,$1) | hdec banlar v $hget(ban,$1) | hdec unbanlar v $hget(unban,$1) | hdec ytext v $hget(text,$1)
hdec ygiris v $hget(giris,$1) | hdec ycıkıs v $hget(cıkıs,$1) | hdec devoiceler v $hget(devc,$1)
hdel nickler $1 | hsave -i nickler nickler.db | hdel giris $1 | hsave -i giris giris.db | hdel cıkıs $1 | hsave -i cıkıs cıkıs.db | hdel vc $1 | hsave -i vc vc.db
hdel devc $1 | hsave -i devc devc.db | hdel ban $1 | hsave -i ban ban.db | hdel unban $1 | hsave -i unban unban.db | hdel text $1 | hsave -i text text.db
}
on *:start: {
if !%trh { set %trh $date }
if $isfile(nickler.db) { hmake nickler 100 | hload -i nickler nickler.db } | else { hmake nickler 100 | hsave -i nickler nickler.db }
if $isfile(giris.db) { hmake giris 100 | hload -i giris giris.db } | else { hmake giris 100 | hsave -i giris giris.db }
if $isfile(cıkıs.db) { hmake cıkıs 100 | hload -i cıkıs cıkıs.db } | else { hmake cıkıs 100 | hsave -i cıkıs cıkıs.db }
if $isfile(voiceler.db) { hmake voiceler 100 | hload -i voiceler voiceler.db } | else { hmake voiceler 100 | hsave -i voiceler voiceler.db }
if $isfile(devoiceler.db) { hmake devoiceler 100 | hload -i devoiceler devoiceler.db } | else { hmake devoiceler 100 | hsave -i devoiceler devoiceler.db }
if $isfile(vc.db) { hmake vc 100 | hload -i vc vc.db } | else { hmake vc 100 | hsave -i vc vc.db }
if $isfile(devc.db) { hmake devc 100 | hload -i devc devc.db } | else { hmake devc 100 | hsave -i devc devc.db }
if $isfile(banlar.db) { hmake banlar 100 | hload -i banlar banlar.db } | else { hmake banlar 100 | hsave -i banlar banlar.db }
if $isfile(ban.db) { hmake ban 100 | hload -i ban ban.db } | else { hmake ban 100 | hsave -i ban ban.db }
if $isfile(unbanlar.db) { hmake unbanlar 100 | hload -i unbanlar unbanlar.db } | else { hmake unbanlar 100 | hsave -i unbanlar unbanlar.db }
if $isfile(unban.db) { hmake unban 100 | hload -i unban unban.db } | else { hmake unban 100 | hsave -i unban ban.db }
if $isfile(text.db) { hmake text 100 | hload -i text text.db } | else { hmake text 100 | hsave -i text text.db }
if $isfile(normalg.db) { hmake normalg 100 | hload -i normalg normalg.db } | else { hmake normalg 100 | hsave -i normalg normalg.db }
if $isfile(normalc.db) { hmake normalc 100 | hload -i normalc normalc.db } | else { hmake normalc 100 | hsave -i normalc normalc.db }
if $isfile(ntext.db) { hmake ntext 100 | hload -i ntext ntext.db } | else { hmake ntext 100 | hsave -i ntext ntext.db }
if $isfile(ytext.db) { hmake ytext 100 | hload -i ytext ytext.db } | else { hmake ytext 100 | hsave -i ytext ytext.db }
if $isfile(ycıkıs.db) { hmake ycıkıs 100 | hload -i ycıkıs ycıkıs.db } | else { hmake ycıkıs 100 | hsave -i ycıkıs ycıkıs.db }
if $isfile(ygiris.db) { hmake ygiris 100 | hload -i ygiris ygiris.db } | else { hmake ygiris 100 | hsave -i ygiris ygiris.db }
}
on *p:#HELP: { if !$hmatch(nickler,$opnick) { hadd -m nickler $opnick 1 | hsave -i nickler nickler.db } }
on *:join:#HELP: { hinc -m normalg v 1 | hsave -i normalg normalg.db | .timer 1 1 kontrol # $nick }
on *art:#HELP: { hinc -m normalc v 1 | hsave -i normalc normalc.db | if $hmatch(nickler,$nick) { hinc -m ycıkıs v 1 | hsave -i ycıkıs ycıkıs.db | hinc -m cıkıs $nick 1 | hsave -i cıkıs cıkıs.db | write $+(helper/,$nick,.,txt) $+(=>,$chr(40),$chr(2),$chr(31),Çıkış,$chr(31),$ch r(2),$chr(41),$chr(32),$chr(40),$chr(2),$date,$chr (2),$chr(41)) Gün: $gun($+($chr(2),$day,$chr(2))) - Saat: $+($chr(2),$time,$chr(2)) } }
on *:voice:#HELP: { if $hmatch(nickler,$nick) { hinc -m voiceler v 1 | hsave -i voiceler voiceler.db | hinc -m vc $nick 1 | hsave -i vc vc.db } }
on *evoice:#HELP: { if $hmatch(nickler,$nick) { hinc -m devoiceler v 1 | hsave -i devoiceler devoiceler.db | hinc -m devc $nick 1 | hsave -i devc devc.db } }
on *:ban:#HELP: { if $hmatch(nickler,$nick) { hinc -m banlar v 1 | hsave -i banlar banlar.db | hinc -m ban $nick 1 | hsave -i ban ban.db } }
on *:unban:#HELP: { if $hmatch(nickler,$nick) { hinc -m unbanlar v 1 | hsave -i unbanlar unbanlar.db | hinc -m unban $nick 1 | hsave -i unban unban.db } }
on *:text:*:#HELP: { hinc -m ntext v 1 | hsave -i ntext ntext.db | if $hmatch(nickler,$nick) { hinc -m ytext v 1 | hsave -i ytext ytext.db | hinc -m text $nick 1 | hsave -i text text.db } }
on *:text:*:#HELP-OP: {
if $nick == HELP-Founder-NICK'i {
if $1 == !durum {
msg # $+([,$chr(2),%trh,$chr(2),]) Tarihinden beri kayıt'da olan $+($chr(2),#help,$chr(2)) kanalı istatistik'leri sıralanıyor:
msg # -
msg # Toplam kullanıcı girişi istatistikleri: $+($chr(40),$iif($hget(normalg,v),$hget(normalg,v) ,0),$chr(41))
msg # - Giriş bilgisi: $iif($hget(normalg,v),Yetkili girişi: $iif($hget(ygiris,v),$hget(ygiris,v),0) $yuzde(ygiris,normalg) - Yetkisiz girişi: $ll(normalg,ygiris) $yuzde2(ygiris,normalg),Toplam: 0 (%100))
msg # Toplam kullanıcı çıkışı istatistikleri: $+($chr(40),$iif($hget(normalc,v),$hget(normalc,v) ,0),$chr(41))
msg # - Çıkış bilgisi: $iif($hget(normalc,v),Yetkili çıkışı: $iif($hget(ycıkıs,v),$hget(ycıkıs,v),0) $yuzde(ycıkıs,normalc) - Yetkisiz çıkışı: $ll(normalc,ycıkıs) $yuzde2(ycıkıs,normalc), Toplam: 0 (%100))
msg # Toplam verilen voice: $+($chr(40),$iif($hget(voiceler,v),$hget(voiceler, v),0),$chr(41))
msg # Toplam alınan voice: $+($chr(40),$iif($hget(devoiceler,v),$hget(devoice ler,v),0),$chr(41))
msg # Toplam atılan ban sayısı: $+($chr(40),$iif($hget(banlar,v),$hget(banlar,v),0 ),$chr(41))
msg # Toplam açılan ban sayısı: $+($chr(40),$iif($hget(unbanlar,v),$hget(unbanlar, v),0),$chr(41))
msg # Toplam yazılan satır sayısı: $+($chr(40),$iif($hget(ntext,v),$hget(ntext,v),0), $chr(41))
msg # - Satır bilgisi: $iif($hget(ntext,v),Yetkili yazısı: $iif($hget(ytext,v),$hget(ytext,v),0) $yuzde(ytext,ntext) - Yetkisiz yazısı: $ll(ntext,ytext) $yuzde2(ytext,ntext),Toplam: 0 (%100))
msg # -
msg # $+($chr(2),$nick,$chr(2)) kullanabileceğiniz komutlar listesini görmek için: $+($chr(2),!Komutlar,$chr(2)) yazınız.
}
if $1 == !Komutlar {
msg # $+($chr(31),Genel komutlar,$chr(31),
msg # -
msg # !voicelist $kapsa((#Help kanalında kayıt gününden beri verilen tüm voice'leri sıralar))
msg # !devoicelist $kapsa((#Help kanalında kayıt gününden beri alınan tüm voice'leri sıralar))
msg # !banlist $kapsa((#Help kanalında kayıt tarihinden beri atılan tüm banları sıralar))
msg # !unbanlist $kapsa((#Help kanalında kayıt tarihinden beri açılan tüm banları sıralar))
msg # !Helperler $kapsa((#Help kanalında takip listesinde olan tüm helper'ları sıralar))
msg # !sıfırla tümü $kapsa((#Help kanalı için varolan tüm kayıtları sıfır'lar))
msg # -
msg # $+($chr(31),Kişisel komutlar,$chr(31),
msg # -
msg # !ekle helper-nick $kapsa((Takip listesine helper eklemek için kullanılır))
msg # !sil helper-nick $kapsa((Takip listesinde ekli olan bir helper'i siler))
msg # !istatistik helper-nick $kapsa((Takip listesinde kayıtlı olan helper hakkında ayrıntılı bilgiler verir))
msg # !takip helper-nick $kapsa((Takip listesinde kayıtlı olan helper'in, hangi tarihlerde giriş/çıkış yaptığını gösterir))
msg # !tsil helper-nick $kapsa((Takip listesinde kayıtlı olan helper'in, giriş/çıkış tarihlerini sıfır'lar))
msg # -
msg # Tüm komutlar sıralandı.
}
if $1 == !helperler {
if $hget(nickler,0).item < 1 { msg # Kayıtlı helper mevcut değil. Helper eklemek için; $kapsa(!ekle helper-nick) yazınız. | halt }
else { msg # Kayıtlı olan toplam; $kapsa($hget(nickler,0).item) helper sıralanıyor. | var %& = 1,%&& = $hget(nickler,0).item | while %& <= %&& { msg # $+(%&,$chr(45)) $kapsa($hget(nickler,%&.item) | inc %& }
}
msg # Kayıtlar sıralandı.
msg # Herhangi bir helper hakkında detaylı bilgi almak için; $kapsa(!istatistik helper-nick) yazınız.
}
if $1 == !voicelist {
if $hget(voiceler,v) < 1 { msg # $kapsa(#Help) kanalı için voice kaydı yok.(Voice verilmemiş) | halt }
else {
msg # #Help kanalın'da $kapsa(%trh) tarihinden itibaren verilen toplam voice sayısı: $kapsa($hget(voiceler,v))
msg # #Help kanalın'da yetkili olan $kapsa($+($chr(40),$hget(nickler,0).item,$chr(41)) ) helper'in voice verme istastiği(Sadece voice veren'ler sıralanır):
var %1 = 1,%2 = $hget(vc,0).item | while %1 <= %2 { msg # Helper: $kapsa($hget(vc,%1).item) - Verdiği voice sayısı: $kapsa($iif($hget(vc,%1).data,$hget(vc,%1).data $yuzde3(vc,$hget(vc,%1).item,voiceler),0)) | inc %1 }
}
msg # -
msg # Voice kayıtları sıralandı.
}
if $1 == !devoicelist {
if $hget(devoiceler,v) < 1 { msg # $kapsa(#Help) kanalı için devoice kaydı yok.(Devoice işlevi yapılmamış) | halt }
else {
msg # #Help kanalın'da $kapsa(%trh) tarihinden itibaren uygulanan toplam devoice sayısı: $kapsa($hget(devoiceler,v))
msg # #Help kanalın'da yetkili olan $kapsa($+($chr(40),$hget(nickler,0).item,$chr(41)) ) helper'in devoice uygulama istastiğiSadece devoice veren'ler sıralanır)
var %a = 1,%b = $hget(devc,0).item | while %a <= %b { msg # Helper: $kapsa($hget(devc,%a).item) - Uyguladığı devoice sayısı: $kapsa($iif($hget(devc,%a).data,$hget(devc,%a).dat a $yuzde3(devc,$hget(devc,%a).item,devoiceler),0)) | inc %a }
}
msg # -
msg # Devoice kayıtları sıralandı.
}
if $1 == !banlist {
if $hget(banlar,v) < 1 { msg # $kapsa(#Help) kanalı için ban kaydı bulunamadı.(Atılan ban yok) | halt }
else {
msg # #Help kanalın'da $kapsa(%trh) tarihinden itibaren atılan toplam ban sayısı: $kapsa($hget(banlar,v))
msg # #Help kanalın'da yetkili olan $kapsa($+($chr(40),$hget(nickler,0).item,$chr(41)) ) helper'in ban uygulama istastiğiSadece ban atanlar sıralanır)
var %x = 1,%y = $hget(ban,0).item | while %x <= %y { msg # Helper: $kapsa($hget(ban,%x).item) - Attığı ban sayısı: $kapsa($iif($hget(ban,%x).data,$hget(ban,%x).data $yuzde3(ban,$hget(ban,%x).item,banlar),0)) | inc %x }
}
msg # -
msg # Ban kayıtları sıralandı.
}
if $1 == !unbanlist {
if $hget(unbanlar,v) < 1 { msg # $kapsa(#Help) kanalı için unban kaydı bulunamadı.(Açılan ban yok) | halt }
else {
msg # #Help kanalın'da $kapsa(%trh) tarihinden itibaren açılan toplam ban sayısı: $kapsa($hget(unbanlar,v))
msg # #Help kanalın'da yetkili olan $kapsa($+($chr(40),$hget(nickler,0).item,$chr(41)) ) helper'in ban açma istastiğiSadece ban açanlar sıralanır)
var %s = 1,%k = $hget(unban,0).item | while %s <= %k { msg # Helper: $kapsa($hget(unban,%s).item) - Açtığı ban sayısı: $kapsa($iif($hget(unban,%s).data,$hget(ban,%s).dat a $yuzde3(unban,$hget(unban,%s).item,unbanlar),0)) | inc %s }
}
msg # -
msg # Unban kayıtları sıralandı.
}
if $1 == !sıfırla {
if !$2 { msg # Yanlış kullanım. Kullanım şekli: $kapsa(!sıfırla tümü) (Tüm verileri sıfırlar) | halt }
if $2 == tümü {
msg # Bu işlev eklenen helper'ler hariç tüm kayıtları silecektir.
msg # $kapsa(#Help) kanalı için tüm kayıtlar sıfırlansın'mı?
msg # Onaylamak için: $kapsa(!Evet) - Vazgeçmek için: $kapsa(!Hayır) yazınız.
}
}
if $1 == !Evet { msg # Tüm veriler sıfırlan'dı. | pp }
if $1 == !Hayır { msg # Tüm verileri sıfırlama işlevi durduruldu. | return $false }
if $1 == !istatistik {
if !$2 { msg # Herhangi bir nick girilmedi. Kullanım şekli: $kapsa(!istatistik helper-nick) | halt }
if !$hmatch(nickler,$2) { msg # $kapsa($2) isminde helper kayıtlı değil. | halt }
else {
msg # $kapsa($2) helper'inin $kapsa(%trh) tarihinden beri kayıt edilen istatistik'leri sıralanıyor:
msg # -
msg # #Help kanalına toplam: $kapsa($+($chr(40),$iif($hget(giris,$2),$hget(giri s,$2),0),$chr(41))) giriş yaptı.
msg # #Help kanalın'dan toplam: $kapsa($+($chr(40),$iif($hget(cıkıs,$2),$hget(cıkı s,$2),0),$chr(41))) çıkış yaptı.
msg # Not: $kapsa($2) helper'inin hangi tarihlerde giriş/çıkış yaptığını öğrenmek için: $kapsa(!Takip $2) yazınız.
msg # Verdiği voice sayısı: $kapsa($iif($hget(vc,$2),$hget(vc,$2) $yuzde3(vc,$2,voiceler),0))
msg # Aldığı voice sayısı: $kapsa($iif($hget(devc,$2),$hget(devc,$2) $yuzde3(devc,$2,devoiceler),0))
msg # Attığı ban sayısı: $kapsa($iif($hget(ban,$2),$hget(ban,$2) $yuzde3(ban,$2,banlar),0))
msg # Açtığı ban sayısı: $kapsa($iif($hget(unban,$2),$hget(unban,$2) $yuzde3(unban,$2,unbanlar),0))
msg # #Help kanalın'da yazdığı satır miktarı: $kapsa($iif($hget(text,$2),$hget(text,$2) $yuzde3(text,$2,ntext),0))
msg # -
msg # Bilgi: $kapsa($2) helper'inin tüm istatistikleri sıralandı.
}
}
if $1 == !Takip {
if !$2 { msg # Yanlış kullanım. Kullanım şekli: $kapsa(!Takip helper-nick) | halt }
if !$hmatch(nickler,$2) { msg # $kapsa($2) helper listesinde mevcut değil. | halt }
else {
msg # $kapsa($2) helper'inin $kapsa(%trh) tarihinden beri, $kapsa(#help) kanalına giriş/çıkış bilgileri sıralanıyor.
var %1 = 1,%2 = $lines($+(helper/,$2,.,txt)) | while %1 <= %2 { msg # $read($+(helper/,$2,.,txt),%1) | inc %1 }
msg # Bu kayıtları silmek için; $kapsa(!tsil $2) yazınız.
}
}
if $1 == !tsil {
if !$2 { msg # Yanlış kullanım. Kullanım şekli: $kapsa(!Tsil helper-nick) | halt }
if !$hmatch(nickler,$2) { msg # $kapsa($2) helper listesinde kayıtlı değil. | halt }
if !$isfile($+(helper/,$2,.,txt)) { msg # $kapsa($2) için giriş/çıkış kaydı yok. | halt }
else { remove $+(helper/,$2,.,txt)) | msg # $kapsa($2) helper'i için, giriş/çıkış tarihleri sıfırlandı. }
}
if $1 == !ekle {
if !$2 { msg # Yanlış kullanım. Kullanım şekli: $kapsa(!Ekle yeni-helper-nick) | halt }
if $hmatch(nickler,$2) { msg # $kapsa($2) helper listesinde zaten mevcut. | halt }
else { hadd -m nickler $2 | hsave -i nickler nickler.db | msg # $kapsa($2) helper listesine eklendi. }
}
if $1 == !sil {
if !$2 { msg # Yanlış kullanım. Kullanım şekli: $kapsa(!sil helper-nick) | halt }
if !$hmatch(nickler,$2) { msg # $kapsa($2) helper listesinde zaten mevcut değil. | halt }
else { sil $2 | msg # $kapsa($2) helper listesinden tüm kayıtları ile beraber silindi. }
}
}
}#HELP-OP olarak belirttiğim yerleri, kendi help görevlilerinizin toplandığı kanal ile değişeceksiniz.
#HELP olarak belirttiğim yerleri ise, kendi yardım kanalınızın ismi ile değişeceksiniz.
HELP-Founder-NICK'i olarak belirttiğim yere, help founder'in nick'i gelicektir.
İlk başka 1 kaç aksilik % 10 ihtimal ile çıkabilir.
Sonra bu bug'lar düzelicektir.
Düzenleyen invertor - 26-12-2008 Saat 12:00