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/)
-   -   kayıtlı / kayıtsız nick karşılamada muaf kanal ekleme sorunu. (https://www.ircforumlari.net/mirc-scripting-sorunlari/538315-kayitli-kayitsiz-nick-karsilamada-muaf-kanal-ekleme-sorunu.html)

CamdibiLee 22 Temmuz 2013 21:53

kayıtlı / kayıtsız nick karşılamada muaf kanal ekleme sorunu.
 
Merhaba İF üyeleri;
Öncelikle kodu yazan arkadaşa teşekkür ederim.
Kullanmış olduğum remoteye birkaç bilindik farklı kod ilave etmiş olsam da işe yaramadı.

Kod:

on *:join:#:{ who $nick | set %gnick $nick  }
}
raw 352:*: {
  if $6 == %gnick {
    haltdef
    if r isin $7 { notice %gnick KAYITLI }
 
    else { notice %gnick 2 KAYITSIZ }
    unset %gnick
  }
}

Elimde bu remote ile kayıtlı ve kayıtsız farklı yaptırımlar veya mesajlar gönderiyorum.
Sunucuda yaklaşık 50 kanalda olduğum için de, bulunduğum 10 kanala girenler haliyle 10 kere aynı işleme tabii tutuluyor.
Hâl böyle olunca da bu durum hem zaman alıyor, hem de bayıyor.

Konu şu:
Ben #Falan #Filan #Felan kanallarındayken bulunduğum kanallara giren kullanıcı, eğer bulunduğum herhangi bir kanalda değilse işleme tabi tutulması.

Yapmak istediğim ise şu:
Eğer #Falan kanalına girdikten sonra #Filan kanalına girerse işlem yapılmasını
veya;
Buluğunduğum kanalların hiçbirinde yoksa, herhangi bir bulunduğum kanala girdiği anda işlemlere tabi tutulması
veya;
Birden fazla ortak kanalımız var, birden fazla kanalda ikimiz de bulunuyorsak işlemlerin başlamaması...

DİPNOT: "Daha gelişmiş, farklı bir remote önerileri de olabilir."

Toprak 23 Temmuz 2013 04:03

Cevap: kayıtlı / kayıtsız nick karşılamada muaf kanal ekleme sorunu.
 
Peki başka kanal'a girdigini nasıl anlıyacaksınız whois cekip durcakmısınız :)) cok saçma.

Şöyle yaparsın tabi istersen;

Kod:

on *:join:#Sohbet:{ .enable #nickkay | .who $nick }
#nickkay off
raw 352:*: { if r isin $7 { .notice $6 Kayıtlı Nick. } | else { .notice $6 Kayıtsız Nick. } }
raw 315:*: { .disable #nickkay }
#nickkay end

Kırmızı ile belirttigim yeri sunucunun global kanalını yazarsın o kanala girenlere who ceker ve kayıtlı olup olmadıgı hakkında notice yollar.

Not: Adam kanala girdiginde nickini identify etmemişşe nick kayıtsız der onuda hatırlatıyım sen öyle yaptın diye bende öyle ayarladım :)

CamdibiLee 23 Temmuz 2013 09:04

Cevap: kayıtlı / kayıtsız nick karşılamada muaf kanal ekleme sorunu.
 
Yazmak aklıma geldi ama tek kanallık bir durum olmadığı için vazgeçtim.
Adam, belirtilen global kanala girmezse veya girmemişse kodun bir anlamı kalmıyor çünkü. ;s6
Nick takip sistemi gibi bir sistem ilave edemez miyiz?

A nick'i B nick'i oldu tarzında bir sistemi tarzında...

Veya, şöyle bir şey de olabilir.

ÖRNEK:
Adam, bulunduğum kanallardan herhangi birine ilk girdiğinde dosya.txt içine ya da remoteye kaydetse ve O kanaldan çıkmadığı sürece O listede kalsa, kanaldan çıktıktan sonra silinse ve mIRC ilk açıldığında O liste sıfırlansa?

MESELA:
Kod:

on: *:start:{
auser clear
}
on *:join:#:{ who $nick | set %gnick $nick  }
[REMOTE'de ekli ise] {return}
auser add nick (
;[USERS]
;dokunulmaz:nick1
;dokunulmaz:nick2
;dokunulmaz:nick3
}
on: *:part:#:{
auser del nick
}
raw 352:*: {
  if $6 == %gnick {
    haltdef
    if r isin $7 { notice %gnick KAYITLI }
 
    else { notice %gnick 2 KAYITSIZ }
    unset %gnick
  }
}

Böyle bir mantık da olabilir, biraz aceleye getirdim ama...;s15

Toprak 23 Temmuz 2013 14:10

Cevap: kayıtlı / kayıtsız nick karşılamada muaf kanal ekleme sorunu.
 
Buyrun;

Kod:

on *:part:#:$iif($read(giris.txt,w,$nick),.write $+(-dl,$readn) giris.txt)
on *:quit:$iif($read(giris.txt,w,$nick),.write $+(-dl,$readn) giris.txt)
on *:nick:if $read(giris.txt,w,$nick) { .write $+(-dl,$readn) giris.txt | .write giris.txt $newnick }
on !*:join:#:if !$read(giris.txt,w,$nick) { .write giris.txt $nick | .enable #nickkay | .who $nick }
#nickkay off
raw 352:*: { if r isin $7 { .notice $6 Kayıtlı Nick. } | else { .notice $6 Kayıtsız Nick. } }
raw 315:*: { .disable #nickkay }
#nickkay end


CamdibiLee 23 Temmuz 2013 19:21

Cevap: kayıtlı / kayıtsız nick karşılamada muaf kanal ekleme sorunu.
 
Gerçekten tam istediğim oldu...
Son bir de ricam olacak.
Bir de muaf kanal ekleyebilir misin?

Ben aşağıdaki kodları teker teker denedim ama remote hata vermemesine rağmen çalışmadı.

Kod:

if ($istok(#Kanal1 #Kanal2 #Kanal3,$chan,32) { return }
if (!$istok(#Kanal1 #Kanal2 #Kanal3,$chan,32) { return }
if $istok(#Kanal1 #Kanal2 #Kanal3,$chan,32) { return }
if !$istok(#Kanal1 #Kanal2 #Kanal3,$chan,32) { return }
if ($istok(#Kanal1 #Kanal2 #Kanal3,$chan,32) {
if (!$istok(#Kanal1 #Kanal2 #Kanal3,$chan,32) {
if $istok(#Kanal1 #Kanal2 #Kanal3,$chan,32) {
if !$istok(#Kanal1 #Kanal2 #Kanal3,$chan,32) {


Toprak 23 Temmuz 2013 19:44

Cevap: kayıtlı / kayıtsız nick karşılamada muaf kanal ekleme sorunu.
 
Şöyle;

Kod:

on !*:join:#:{
if $istok(#Kanal1 #Kanal2 #Kanal3,#,32) { return }
if !$read(giris.txt,w,$nick) { .write giris.txt $nick | .enable #nickkay | .who $nick }
}


CamdibiLee 23 Temmuz 2013 20:15

Cevap: kayıtlı / kayıtsız nick karşılamada muaf kanal ekleme sorunu.
 
Gerçekten takdire şayan... ;s24
Son bir rica üzerine, bir de sorum olacak.
Muaf kanal kodu ilave ederken kanalları tek satırda yazıyoruz.
Peki;
Kod:

$nick  isop $chan
'ları tek satırda yazabilir miyiz?

ÖRNEK:
Kod:

if $nick isin(veya)isop #Kanal1 #Kanal2 #Kanal3 #Kanal4 #Kanal5 ...
gibi...

Yani, nick, #Help,#OperHelp,#Services,#Master,#Staff,#Network, #Logs,#NicREG,#DJ,#Webmaster,#Founder kanalında ise işlem yapılmasın.

Toprak 24 Temmuz 2013 04:31

Cevap: kayıtlı / kayıtsız nick karşılamada muaf kanal ekleme sorunu.
 
Malesef ya yan yana || koyarak ekliyeceksin yada while kullanacaksın.

Kod:

$nick ison #Kanal1 || $nick ison #Kanal2
While kullanarak buyur;

Kod:

on !*:join:#:{
  if $istok(#Kanal1 #Kanal2 #Kanal3,#,32) { return }
  var %ibo = #Help,#OperHelp,#Services,#Master,#Staff,#Network,#Logs,#NicREG,#DJ,#Webmaster,#Founder
  var %t = 1
  while %t <= $gettok(%ibo,0,44) {
    if $nick !ison $gettok(%ibo,%t,44) {
      if !$read(giris.txt,w,$nick) { .write giris.txt $nick | .enable #nickkay | .who $nick }
    }
    inc %t
  }
}

Denemedim ama çalışmaması için sorun yok :)


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

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