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/)
-   -   txtden Komut işlevi (https://www.ircforumlari.net/mirc-scripting-sorunlari/22829-txtden-komut-islevi.html)

radiCOOL 11 Ağustos 2006 20:09

txtden Komut işlevi
 
Başlık biraz saçma oldu ancak "okutmak" yazıp arama yaptığım zaman cıkan sonuçları inceledim .. benim yapmak istediğim konusunda yardımcı olmadı ... Örnekleyerek mantığı anlamaya çalışacağım ..Şimdi

on *:text:*:#: { if !okul isin $1- { msg $chan İngilizcesi : school | Halt }}

Şeklinde bir düşünce çıktı .. Ancak eklenecek bütün kelimeleri tek tek eklemenin yanısıra herhangi bir dosyadan okutup .. yazılacak diğer komutlarda o komuta ait cevaı vermesi kısmı biraz karışık geldi bana ..Öncelikle bunun mantığı .. Daha sonra ;

on *:text:*:#: { if !gel Almanca isin $1- { msg $chan Almancası : Schule | Halt } }

Şeklinde bir kaç dil için yapmak imkan dahilinde midir ? ..

NaTSuKa 12 Ağustos 2006 11:05

Yanıt: txtden Komut işlevi
 
Kod:

on *:text:*:#: { var %£s $lines(sozluk.txt) | while (%£s > 0) { if $strip($1)) iswm ($read(sozluk.txt,%£s) { msg # $read(sozluk.txt,s,$1) } } }

sozluk.txt dosyasının içine;

!okul School
!gel Schule

yaz ve kanal geneline birisi !gel yazdıgında karşıgınıda kanala bot yazacaktır...

el33t 12 Ağustos 2006 13:26

Yanıt: txtden Komut işlevi
 
Loop kullanmak yerine şöyle de yapabilirdin:

Kod:

on *:text:!*:#:if $read(sozluk.txt,s,$1) { msg # $v1 }
Kanalda ! ile başlayan bir şey yazıldığında eğer !<birinci kelime> sozluk.txt dosyasının her hangi satırırın birinci kelimesiyse o kelimeden sonrasını kanala mesaj atar.

radiCOOL 12 Ağustos 2006 14:12

Yanıt: txtden Komut işlevi
 
natsuka ve el33t teşekkür ederim .. Özellikle el33t'nin gösterdiği yol bir çok düzenlememde yardımcı olacak eminim .. Dİğer düşündüklerimi sormadan bu şekilde yapmaya çalışacağım .. Tekrar tşk

radiCOOL 16 Ağustos 2006 02:29

Yanıt: txtden Komut işlevi
 
Arkadaşlar simdi şu şekilde bir düzenleme yaptım . kısaca anlatayım .. el33t nin belirttiği gibi önce sozluk.txt ye ekledim kelimeleri .. Ancak en başına
!sozluk yazdım devamında ingilizce için !ingilizce ALmanca için !almanca şeklinde seçenek sundum .. Şimdi ingilizce ve almanca yı iki txt olarak ayırmak istedim ki karışmasın keLimeler ... Ancak işte onu yapamadım.. yani !gel yazında başta hangisi seçilmişse o txt den okusun istedim yardımcı olursanız sevirinim ..

Bir de Kril alfabesini mIRC ya da web kullanıcılarına göstermek mumkun mu ? Genelde ? işareti veriyor dil olarak kril seçince türkçe karakterlerde .. Bunu hem türkçe hem kril . karsıdakilerin de görebileceği bir biçimde yapabilir miyiz ?

Teşekkürler

el33t 16 Ağustos 2006 11:46

Yanıt: txtden Komut işlevi
 
Kod:

on *:text:!sozluk *:#:{
  if $read($+($remove($2,!),.txt),s,$3) { msg # $remove($2-3,!) == $v1 }
}

Her hangi biri kanalda !sozluk yazdığında eğer 2. kelimedeki .txt dosyasında 3. kelimedeki cümle varsa o kelimenin devamını kanala gösterir. Örneğin

ingilizce.txt dosyasında !gel come satırı var.

Biri kanalda

!sozluk !ingilizce !gel yazdığında

Sen ona cevap olarak

ingilizce gel == come

mesaj gönderirsin.

almanca.txt dosyası için de başka bir kod yazmana gerek yok çünkü dediğim gibi yazılan ikinci kelime bir .txt dosyasıysa ve içinde 3. kelimeyle başlayan bir satır varsa cevap gönderilir.

Kril alfabesindeki harflerin ? çıkmaması gerekir eğer mIRC versionun 6.16'nın üstündeyse çünkü UTF-8 mIRC 6.16 ile eklendi. Eğer versionun bunun üstündeyse /font yazıp UTF seçeneklerine bakmalısın.

Umarım işine yarar...

radiCOOL 09 Şubat 2007 11:54

Yanıt: txtden Komut işlevi
 
Yeni başlık açmak istemedim .. O yüzden buradan yazayım ...

Daha önce yardım aldığım bir konu ...Yukarıda yazılanlardan Loop kullandığım takdirde scriptim işlem yapamaz hale geliyor ki; eventi tek kanal için düzenlemiş olsam bile .. Öte yandan el33t nin dediği (1. post) gibi de $v1 değerini tanımalmıyor olsa gerek (/msg innifucient parameters) uyarısı alıyorum ...

Yapmak istediğim ise şu;..
Alıntı:

on *:text:!bilgi:#: {
if elma isin $1- { msg $nick falan falan 0,4 $nick 0,1 | .msg $chan 0,4 $nick 0,1 Konu hakkında bilgi Özelinize Gönderilmiştir! | Halt }
if armut isin $1- { msg $nick 0,4 $nick 0,1 filan filan | .msg $chan 0,4 $nick 0,1 Konu hakkında bilgi özelinizie ... | Halt }
}
Bu şekilde tek tek eklemek yerine bilgiler.txt dosyası oluşturup okutayım istedim...

Bunun için şunu kullandım;

Alıntı:

on *:text:*:#:if $read(bilgiler.txt,s,$1) { msg # $v1 }
Ancak dediğim uyarı ile karşılaştım ..İStedim ki bilgiler.txt dosyasının 1. satırından itibaren 1. kelimelerden birisi kanalda geçerse kanala 2. kelimeden itibaren o satırı göndersin ..

Bir de bilgi liste.txt dosyası oluşturup timer ile kısım kısım dosyadaki bilgileri aktarmak istiyorum .. Bunun için de daha önce verilen bir addonu biraz düzenleyip kullandım ama olmadı ..Script bağlanır bağlanmaz timer acacak .. Atıyorum ilk 10 saniye sonra ilk 5 satırı kanala yollayacak.. ikinci döngüde 2. 5 satırı .. Ve satırlar bittiği zaman tekrar başa alacak ..

Yardımcı olursanız sevinirim .. Kolay GeLsin

el33t 09 Şubat 2007 17:59

Yanıt: txtden Komut işlevi
 
mIRC'nin eski bir sürümünü kullanıyorsan $v1 yerine $ifmatch yazmalısın.

if $read(bilgiler.txt,s,$1) { msg # $ifmatch }

bilgiler.txt dosyasında $1 ile başlayan bir cümle geçtiğinde devamını yani 2. kelime ve kalanını mesaj atacaktır.

Umarım işine yarar...

radiCOOL 02 Mart 2007 13:19

Yanıt: txtden Komut işlevi
 
Bu konuda biraz üsteliyor gibi görünebilirim ancak ilk mesajımdan sonra hemen bütün işlemleri $read ile yapmaya başladım :)

Hemen bütün postlarda 1. kelimeden sonrakini okutma veya sırayla okutma vb. şeyler bulunuyor ..Bunlar az sayıda değişken olduğu zamanlarda fonksiyonel ..Ancak çok değişkenim ve o değişkene isabet eden çok fazla değer olduğu zamanlar için şöyle bir yoldan gideyim istedim..Tabii Mümkünse..

Kısace Özetleyeyim ; Bir web sitesine ekleyenleri yazdıgımızda onun eklediklerini timer la link olarak yollayacak bir sistem.. Ancak dediğim gibi teker teker txt dosyası olarak kaydetmektense ; tek bir txt içine şu şekilde kaydetsek ;

Alıntı:

radiCOOL
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]..
el33t
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
diEforyou
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
Yani kullanıcı !gönder radiCOOL yazdığı zaman el33t ye kadar olan değerleri timerla 3 saniye gibi bir arayla yollayabilir mi? ..tabii ki daha kolay olacaksa ..radiCOOL ve diğer nickler için rakamsal bir değişken de atanabilir ....Hem bu yolla çoğu txt yi de birleştirmek gibi bir şansım olabilir ..

Yardımcı olursanız sevinirim ; Kolay Gelsin


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

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