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/)
-   -   Kanala girince mesaj (https://www.ircforumlari.net/mirc-scripting-sorunlari/37833-kanala-girince-mesaj.html)

BLaCK_and_WHiTe 29 Eylül 2007 02:26

Cevap: Kanala girince mesaj
 
Kod:

alias massmsg {
  set %msg $$?="Mass msg girin?"
  set %people 1
  :loop
  if ($nick(#,%people) == cs) { inc %people | goto loop | halt }
  if ($nick(#,%people) == $me) { inc %people | goto loop | halt }
  if ($nick(#,%people) == $opnick) { inc %people | goto loop | halt }
  else { .msg $nick(#,%people) %msg }
  inc %people
  if ($nick(#,%people) == $null) { unset %msg | unset %people }
  if($nick(#admin,%people == $null) {unset %nomsg | unset ½people
  else { goto loop }
}

ben bu şekil birşey düşündüm ama bir yerinde hata var sanırım


Kod:

IF($NICK(#ADMIN Unknown command
böyle bir hata verdi

L4roXyL 29 Eylül 2007 03:08

Cevap: Kanala girince mesaj
 
aRiF : Senin işini verdiğim alias görecektir.
alias mmsg { if $1 { var %1 = 1,%2 = $nick($active,0)) | while %1 <= %2 { privmsg $nick($active,%1) $1- } | inc %1 } }
Mesajı atıcağım kanalın penceresine; /mmsg mesajın yaptığın zaman mesajın gidecektir.

ScladeR sana gelince;
Verdiğim kodda sorun yok, $istok içerisine aldığın nicklere mesaj gitmeyecektir.
Ama sen oper'lara gitmesin diyorsan aşşağıdaki kode işini görecektir.

alias mmsg { if $1 { .enable #x | who $active | set %- $1- } }
#x off
raw *:*: { if $numeric == 352 { if * isin $7 { halt } | else { write nick.txt $6 | haltdef } } | if $numeric == 315 { var %1 = 1,%2 = $lines(nick.txt) | while %1 <= %2 { privmsg $read(nick.txt,%1) %- | inc %1 } | write -c nick.txt | .disable #x } }
#x end

Kullanım aynı şekilde; /mmsg mesajın

aRiF 04 Ekim 2007 21:58

Cevap: Kanala girince mesaj
 
Kod:

/mesaj { if $1 { var %1 = 1,%2 = $nick($active,0)) | while %1 <= %2 { if !$istok(nick1 nick2 nick3,$nick($active,%1),32) { privmsg $nick($active,%1) $1- } | inc %1 } } }
Bu code çalışıyo evt ama ben bu aynı codede hem nickleri ayırma hem fulladresi hemde identi ayırmak istiyorum mümkünmü ?

if ([Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] iswm $fulladdress) { halt }
if (*!ircop@* iswm $fulladdress) { halt }

L4roXyL 04 Ekim 2007 22:52

Cevap: Kanala girince mesaj
 
alias mmsg { if $1 { .enable #x | who $active | set %- $1- } }
#x off
raw *:*: { if $numeric == 352 { if * isin $7 { halt } | else { write nick.txt $6 | haltdef } } | if $numeric == 315 { var %1 = 1,%2 = $lines(nick.txt) | while %1 <= %2 { privmsg $read(nick.txt,%1) %- | inc %1 } | write -c nick.txt | .disable #x } }
#x end

Zaten bu verdiğim kod IRCOP'lara mesaj gitmesini engelliyecektir.
Denedin'mi? Hayır.
Daha neden ayırma gibi garip bir işlem yapma gereksinimi duyuyorsunki?

Serzenis 04 Ekim 2007 23:04

Cevap: Kanala girince mesaj
 
L4roXyL Hocam guzel Aciklamis bende SoyLe dusundum.

iswm $fulladress ve ison $chan Olaylari İle bence Olabilir.

Buna Gelince :

alias massmsg {
set %msg $$?="Mass msg girin?"

Soru isaretinden Sonraki isaret de yani %msg dan Sonrakilerde Onu Tanımlıyor

%msg gibi bi variables tanımlıyoruz ki sonucta tek tek msj gonderiyoruz Sahıslara... degismeden %msg yolluyoruz ? isaretinden Sonrakine Control Of Advertisement derseniz Olur Kanimca...



Arif in Sorusuna Gelince 2 dane yerine || gibi bir ayras kullanarak Tek if kullanabiliriz.

ki Senin deyisinle Olur.

aRiF 04 Ekim 2007 23:06

Cevap: Kanala girince mesaj
 
Arkadaşım bunda İRCoplara mmsj gidiyo

if (*!ircop@* iswm $fulladdress) { halt }
bu identi nasıl yerleştiririz verdiğim codede

L4roXyL 05 Ekim 2007 00:23

Cevap: Kanala girince mesaj
 
raw 352:*: { echo -s $1- | halt }
Kodunu ekledikten sonra bir nick'e whois çektiğinde, kişinin bilgileri;
Nickin #kanal Ident adresi sunucu who-çekilen-nick Hr* 0 fullname
Buradaki mantıktan yola çıkarak yapabilirsin.
Örneğin burada'ki ilk kelime Nickin'dir yani $1
İdent kaçıncı kelime? Tabiki $3
O zaman sen ne yapacaksın?

alias mmsg { if $1 { .enable #x | who $active | set %- $1- } }
#x off
raw *:*: { if $numeric == 352 { if * isin $7 { halt } | else { write nick.txt $6 | haltdef } } | if $numeric == 315 { var %1 = 1,%2 = $lines(nick.txt) | while %1 <= %2 { privmsg $read(nick.txt,%1) %- | inc %1 } | write -c nick.txt | .disable #x } }
#x end

Bu kod'un;
if $numeric == 352 { if * isin $7 { halt } satırını;
if $numeric == 352 { if * isin $7 || $istok(ident1 ident2 ident3,$3,32) { halt }
Olarak değişeceksin.
Buradaki mantık nedir?
$istok sorgulamasının içerisinde belirlediğim ident'lar var ise onları yazdırma.
Yani dolaylı olarak onlara mesaj gönderme.
Bu kadar basit.

Biraz uğraşmayı deneseniz bunları sizde çözebilirsiniz.


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

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