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

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   mIRC Scripting Sorunları (https://www.ircforumlari.net/mirc-scripting-sorunlari/)
-   -   banlist (https://www.ircforumlari.net/mirc-scripting-sorunlari/7528-banlist.html)

Flyman 15 Kasım 2005 02:15

ilk once ban gelir ama onun dedigi gibi olmadi $bnick yapiyorum algilamiyor on *:ban:#: uzerinde $knick de algilamiyor biseyler yanlis yapamadim ben
gersi dusa var ayni ipden bir suru giris olmus olabilir $bnick i nasil algilasinki ancak kick olayi gerceklestikten sonra kick yapilan nicki tespit edebilir diye dusunuyorum eger olay nick ban olursa ancak $bnick i algilar benim bildigim boyle iki satirlik bi kod ama kimseden ses cikmadi nedendir anliyamadim bilen icin cok kolay olsa gerek

Utku 15 Kasım 2005 02:33

$bnick ten değil banlanan adresten hangi nickler etkileniyor diye bakacaksın. Banlananı kickleyen addonlar işine yarayabilir. Yapacağın şey o kadar basit ki, biri banlandı diyelim:

on *:ban:#:{

bu event'ta banlanan kişinin nickini veya etkilenen diğer nickleri bulup text dosyasına yazdın diyelim.

Text dosyasında yazan şu:

Tarih : x Saat: x Banlanan nick: xx x x x xxx IP: xx

Sonra on *:kick:#:{ event'ında write komutu kullandığında -w/s $+ $knick ile kullanacaksın.

Örneğin:

on *:kick:#:{ write -s $+ $knick kick.txt Kick sebebi: $1- }
on *:kick:#:{ write -w $+ $knick kick.txt Kick sebebi: $1- }

gibi.

Böyle yaptığında $knick hangi satırdaysa o satırı bulur, write işlemini o satırda yapar.

Kod oldukça basit dediğin gibi, ama bir server'a girip deneme yanılma yolu ile yazmam gerekecek çünkü alışıldık bir kod isteği değil bu. Zaten önce banlanır mı kicklenir mi orası da scriptten scripte göre değiştiği için uğraşmaya çekiniyorum.


Bir alternatifin daha var:

Biri banlanınca son satıra yazılacaktır doğal olarak. $lines(kick.txt) ile kaç satır olduğunu öğrenip en son satıra yazdırırsın kick sebebini. Onun için de write komutunun -l (L) parametresini kullanacaksın.

on *:kick:#:{ write -l $+ $lines(kick.txt) kick.txt Kick sebebi: $1- }

gibi. Ama bu da kesin çözüm değil.

Flyman 15 Kasım 2005 02:48

o zaman soyle yapsak daha kolay degilmi
on *:kick:#:{ write -s $+ $knick kick.txt Kick sebebi: $1- }
burdaki $knick yerine $banmask yapsam daha kolay olmazmi
senin dedigin gibi bandan etkilenen nickleri yazarsan cafeden giris ise 5 6 tane nick olabilir bu
bu kod burda yazildi ama bulamadim bir turlu yazan arkadasa seslendim tamam dedi ama ses cikmadi bir daha

Utku 15 Kasım 2005 03:51

on *:ban:#:{ write atilgan.txt $+([,$date,/,$time,]) IP: $wildsite Nickler: $bnickler($wildsite,$chan) }
on *:kick:#:{ var %a = $read(atilgan.txt,$wildsite,w) | write -al$readn atilgan.txt Kick sebebi: $1- }
alias bnickler { var %x = $ialchan($1,$2,0) | var %y | while %x { %y = $addtok(%y,$ialchan($1,$2,%x).nick,32) | dec %x } | return %y }

Yani gece vakti uğraştırdın ya beni, neyse :)

Flyman 15 Kasım 2005 04:02

isde bu ya saolasin utku basim sismisti ugrasmaktan valla makbule gecti cok saol

Utku 15 Kasım 2005 04:07

Önemli değil, ama daha önce attığım postlarla birlikte kodu incelemeyi unutma, mantığını anlaman daha iyi olur :)

Flyman 15 Kasım 2005 06:32

iyi guzelde bu nick banlardada islem yapiyor . ve banlanan ip adresini degil banlayan opun ipsini kayda aliyor .
ikincisi sadece kick olan kisileride listeliyor
bunu sadece ip banlarinda ive banlanan banmaski kayit edecek sekle cevirirsek daha iyi olcak :)

Utku 15 Kasım 2005 17:19

Onu deneme yaparken düzeltmeyi unutmuşum, on ban kısmındaki $wildsite'ı $banmask yaparsan sorun kalmaz.

Flyman 16 Kasım 2005 01:52

on *:ban:#:{ write atilgan.txt $+([,$date,/,$time,]) Banli IP: $banmask Nickler: $bnickler($banmask,$chan) }
on *:kick:#:{ var %a = $read(atilgan.txt,$knick,w) | write -al$readn atilgan.txt Kick sebebi: $1- }
alias bnickler { var %x = $ialchan($1,$2,0) | var %y | while %x { %y = $addtok(%y,$ialchan($1,$2,%x).nick,32) | dec %x } | return %y }


kodu bu sekilde degistirdim $banmask yerleri yani
ama simdi sorun su sadece kendi banlarimda kick sebebini yazdidiriyor baska oplarin banlarinda kick mesajini yazdirmiyor bunu nasil duzeltirim .
2.cisi ise bansiz sadece kick olayindada kick sebebini yaziyor bunuda engellemek istiyorum yani sadece ban ve kick varsa kick sebebini yazsin eger sadece kick olayi ise o kickin sebebini yazdirmiyalim.
bi kac sey denedim ama olmadi

Utku 16 Kasım 2005 02:05

on *:kick:#:{ var %a = $read(atilgan.txt,$knick,w) | if (%a) { write -al$readn atilgan.txt Kick sebebi: $1- } }

2. sorununu bu şekilde çözebilirsin. Ama başkasının banladığı ve kicklediği kişileri yazmıyor olmasına bir anlam veremedim.


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 11:22.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk