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/)
-   -   Kanalda !kline nick Sebeb (https://www.ircforumlari.net/mirc-scripting-sorunlari/38629-kanalda-kline-nick-sebeb.html)

L4roXyL 07 Ekim 2007 03:08

Cevap: Yanıt: Kanalda !kline nick Sebeb
 
Alıntı:

Teori Nickli Üyeden Alıntı (Mesaj 270995)
Kod:


on *:text:*:#:{
  if $nick == SeninNick {
  if !op isin $1 {
  mode $chan $2
}
}
}

Boyle yapman daha mantıklı olurdu herhalde Arkadasın verdigi Code ile herkes birbirini Op yapabilir.

!op nick yazdığım zaman deniliyor.
Sen ise on *:text:*:#: { komut } çizelgesini uyguluyorsun.
Buradaki; event başındaki *(joker) dışarıdan gelen mesajlar için kullanılır.
Senin kendi yazdığın metin dışarıdan gelen mesaj olarak algılanmıyacağı için, çalışmaz. Ek olarak !op isin $1 yerine !op == $1 yaparsan daha mantıklı olucaktır.
//echo -a $iif(!op isin aadbasdjk!opasdas,olumlu,olumsuz)
Bu sorgulamanın cevabı olumlu olarak dönecektir.Yani kullanıcı, içinde !op geçen herhangi bir kelimeyi ilk başta kullanınca yine işlev yapmaya kalkıcaktır.
Son olarak mode $chan $2 yapmışsın, uygulanacak mod'u belirtmemişsin.

INPUT event'ini kullanıcaksın.
on *:input:#: { if !op == $1 { mode # +o $2 } }
Şeklinde daha mantıklı olucaktır.

BLaCK_and_WHiTe 07 Ekim 2007 05:32

Cevap: Kanalda !kline nick Sebeb
 
Alıntı:

MaLt Nickli Üyeden Alıntı (Mesaj 270806)
Arkadaşlar bende !op nick yazınca yazdıgım nick e (@) op vermesini istiorum bunu nasıl yapabilirim ?

Cr sunucular için
Kod:

on *:text:*:#ops: { if !op isin $1 { if $2 && $left($2,1) != $chr(35) { fjoin $nick $addtok($chr(35),$2,0) | samode $addtok($chr(35),$2,0) +o $nick } | else { .sajoin $nick $2 | .samode $2 +o $nick } } }

if $chan == #ops || $chan == #dj && !op isin $1 { vsvs }

Unreal Sunucular için
Kod:

on *:text:*:#ops: { if !op isin $1 { if $2 && $left($2,1) != $chr(35) { sajoin $nick $addtok($chr(35),$2,0) | os mode $addtok($chr(35),$2,0) +o $nick } | else { .sajoin $nick $2 | .samode $2 +o $nick } } }

if $chan == #ops || $chan == #dj && !op isin $1 { vsvs }


L4roXyL 07 Ekim 2007 05:58

Cevap: Kanalda !kline nick Sebeb
 
Alıntı:

BLaCK_and_WHiTe Nickli Üyeden Alıntı (Mesaj 271042)
Cr sunucular için
Kod:

on *:text:*:#ops: { if !op isin $1 { if $2 && $left($2,1) != $chr(35) { fjoin $nick $addtok($chr(35),$2,0) | samode $addtok($chr(35),$2,0) +o $nick } | else { .sajoin $nick $2 | .samode $2 +o $nick } } }
 
if $chan == #ops || $chan == #dj && !op isin $1 { vsvs }

Unreal Sunucular için
Kod:

on *:text:*:#ops: { if !op isin $1 { if $2 && $left($2,1) != $chr(35) { sajoin $nick $addtok($chr(35),$2,0) | os mode $addtok($chr(35),$2,0) +o $nick } | else { .sajoin $nick $2 | .samode $2 +o $nick } } }
 
if $chan == #ops || $chan == #dj && !op isin $1 { vsvs }


Bunun alıntı yaptığın kişinin sorusu ile alakası nedir?
Sajoin, fjoin ne alaka yani.
Kişinin isteğiyle alakası yoktur ve kesinlikle karşılamaz.

BLaCK_and_WHiTe 07 Ekim 2007 22:27

Cevap: Kanalda !kline nick Sebeb
 
sajoin i yönlendirme amaçlı kullanıyor Cr de bunun için fjoin var

MaLt 08 Ekim 2007 11:51

Cevap: Kanalda !kline nick Sebeb
 
Arkadaşlar ilk sorumu yanıtladıgınız için teşekkürler. 1 Sorum daha olucak mesela Nomercy botunu hepiniz bilirsiniz o bottaki işlem nasıl bunu birisi açıklayabilirmi ? Yani demek istedigim !kb nick sebep yazdıgımız zaman ordaki nomercy botu atıo o komutu nasıl yapabiliriz ?

L4roXyL 08 Ekim 2007 17:19

Cevap: Kanalda !kline nick Sebeb
 
İlk önce basit bir kod vericem;
on *:text:*:#kanal: { if $1 == !kb && $2 && $me isop # { ban -k # $2 $3- } }
Açıkladığımda mantığı anlarsan, diğer şeyleri kendin yapabilirsin.
Buradaki $1 : !kb oluyor, yani ilk yazılan kelime olduğu için mantık olarak 1. kelime oluyor ve $1 deniliyor.
Diyoruzki, if $1 == !kb ;
Eğer 1. kelime !kb kelimesi ile aynıysa/eşitse;
&& $2 (ve eğer ikinci bir kelime mevcut ise, yani !kb kelimesinden sonra ikinci bir kelime geliyorsa);
&& $me isop # (ve ben kanalda op isem);
İşlev olarak; { $2(nick'i) $3-(sebeb ile) kanaldan ban+kick şeklinde uzaklaştırayım. }

Tabi bu kod'u sen script'ine eklersin, millet !kb nick sebeb(ki girilmezse yine işlev yapar) yapınca çalışır.
Bunu geliştirerek sadece kanal'daki opların kullanması için yapabilirsin(if $nick isop #)
Veya sadece ahmet mehmet sukufe nickleri kullanabilsin şeklinde yapabilirsin($istok(ahmet mehmet sukufe,$nick,32)) gibi.
Veya sadece ben kendim yazıcam kendim işlev yapıcam diyorsan;
on *:input:#kanal: { if $1 == !kb && $2 { ban -k # $2 $3- } }
Şeklinde yaparsın.

Yani oldukça basit bir sistem ve forum'da onlarcası mevcut.

MaLt 08 Ekim 2007 21:36

Cevap: Kanalda !kline nick Sebeb
 
L4roXyL agzına koluna saglık çok süper açıklamışın teşekkürler.

BLaCK_and_WHiTe 08 Ekim 2007 23:19

Cevap: Kanalda !kline nick Sebeb
 
Kod:

on *:text:*:#yardım:{
  if ($1 == !k) { kick $2 $3 Kural hatası | msg #yardım $2 Kanalında Kicklenen Nick: $3 }
  if ($1 == !kb) { ban $2 +b $3 | kick $2 $3 5(5Badnick.Küfür, Reklam, Drone, Trojan) 10Kurallara Uygun Olmayan Davranışlarda Bulunduğunuzdan Kanaldan Uzaklaştırıldınız.14 © $me © | msg #yardım $2 Kanalında Kicklenen ve Banlanan Nick: $3 }
  if ($1 == !banac) { samode $2 -b $3 | msg #yardım $2 Kanalında Banı Acılan Nick: $3 }
  if ($1 == !fulbanac) { mode $2 +b | set %banac $2 }
}

raw  *:*: {
  if %banac == $2 {
    haltdef
    if $numeric == 367 { set %s $addtok(%s,$3,32)  | if $numtok(%s,32) == $modespl { mode $2 $+(-,$str(b,$modespl)) %s  | unset %s } }
    if $numeric == 368 { msg $2 ban acma islemi tamamlandi | unset %s | unset %banac }
  }
}

ben de bu kod var hoşuma da gitmişti ama Cr de ne yaptıysam çalışmadı hata nerede

L4roXyL 09 Ekim 2007 06:10

Cevap: Kanalda !kline nick Sebeb
 
Banların hepsini açmak kolaydır.
Ama tek bir kişinin banını açmak sorun yaşatacaktır.
Yani örneğin; kanal ban listesinde sadece nick'ler banlanmıyor'ki, adres/host/extban çeşitleride var.
O yüzden belirtilen nick eğer denk gelirse ban açılacaktır.

on *:text:*:#kanal: { if $1 == !banac && $2 && $3 { mode $2 -b $3 } | if $1 == !fullbanac && $2 && $me isop $2 { mode $2 +b | var %1 = 1,%2 = $ibl($2,0) | while %1 <= %2 { mode $2 -b $ibl($2,%1) | inc %1 } } }

Şeklinde yapabilirsin, raw kullanmaya vs'a gerek yok.


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

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