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/)
-   -   !ekle (https://www.ircforumlari.net/mirc-scripting-sorunlari/48083-ekle.html)

ncxsd 23 Ocak 2008 15:38

!ekle
 
arkadaslar benim bi sorum olacak mesela " !ekle mesaj " yazdıgım zaman o mesajı kaydedecek we 10 dkk aralıklı #X kanalına yazacak yardımcı olursanız sevinirim

KiLL 23 Ocak 2008 15:42

Cevap: !ekle
 
!ekle mesaj

yazısını nerede yazacaksın bellı bır kanaldamı herkanaldamı ozeldemı ?

7610 23 Ocak 2008 16:10

Cevap: !ekle
 
txt vb. den timer olarak okutabilirsin.bunun için forumda buna benzer bi ton konu var.araştır bak kodu kendin yazarsın.emin ol yazdıktan sonra mutlu olucaksın ;love

Sarp 23 Ocak 2008 16:27

Cevap: !ekle
 
Kod:

on *:text:!ekle*:#Y:.timer 1 600 .msg #X $2-

#Y kanalında !ekle mesaj yazarsan mesajı kaydedip 10 dakika sonra #X kanalına yazar.

ircmsn 24 Ocak 2008 11:51

Cevap: !ekle
 
Alıntı:

L3vis Nickli Üyeden Alıntı (Mesaj 330765)
Kod:

on *:text:!ekle*:#Y:.timer 1 600 .msg #X $2-

#Y kanalında !ekle mesaj yazarsan mesajı kaydedip 10 dakika sonra #X kanalına yazar.


Bu kod'da her hangi bir .txt dosyası görünmüyor, !ekle msj yapsa da nereye ekleyecek L3vis?

ncxsd 24 Ocak 2008 13:08

Cevap: !ekle
 
ben bunu #Y kanalına !ekle mesaj olarak ekletecem ama, #X kanalında !yaz diyince hepsını gosterecek timer'le deil ?

MavipikSeL 24 Ocak 2008 13:46

Cevap: !ekle
 
Öncelikle ekleme kodunu yazıyoruz, bu kod #Admin kanalında !ekle mesaj komutu ile girdiğin metni mesajlar.txt'ye kaydedecek.

Kod:

on *:text:*:#Admin:{
  if $1 == !ekle {
    if $read(mesajlar.txt,w,*) { .msg # Ekleme yapmadan önce, hafızadaki mesajı !sil komutu ile temizlemelisin $+($nick,.) }
    else { write mesajlar.txt $2- | .msg #  Mesajınız hafızaya alındı, gönderme işlemini !yolla komutu ile başlatabilirsiniz.
    }
  }
}

İkinci kısıma geçiyoruz, ikinci kısım listeleme komutu. #Admin kanalında !mesajlar yazdığında barınan mesajı #Admin kanalına kod listeleyecektir.
Kod:

on *:text:*:#Admin:{
  if !mesajlar isin $1 {
    .msg # Hafızadaki mesaj:
    .play # mesajlar.txt 0
    .timer 1 2 .msg # Listemele tamamlandı.
  }
}

Hafızada 1 mesaj barındırma hakkın var. 1 mesaj varken sana önce mesajı silmelisin diyecek. İşte bu mesajı silme kodunu yazıyoruz.

Kod:

on *:text:*:#Admin:{
  if !sil isin $1 {
    .write -c mesajlar.txt
    .msg # Hafızadaki mesaj silindi, yeni oluşturmak için !ekle mesaj yazmalısınız.
  }
}

Mesajı 10 dakika arayla #X kanalına atma kodunu yazıyoruz. Hemen altına da durdurma komutunu oluşturuyoruz.

Kod:

on *:text:*:#Admin:{
  if !yolla isin $1 {
    .msg #Admin İlk mesaj gönderildi, ikincisi için 10 dakika beklenecek.
    .msg #X $read(mesajlar.txt,1)
    .timeroku 0 600 msg #x $read(mesajlar.txt,1)
  }
  if !dur isin $1 {
    .timeroku off | msg # Mesaj yollama işlemi durdu, aktif hale getirmek için !yolla yazınız.
  }
}

Son olarak da tüm komutlar hakkında bilgi verirsek sistemi bitirmiş oluruz.

Kod:

on *:text:*:#Admin:{
  if !komutlar isin $1 {
    .msg # Ekleme: !ekle mesaj (mesajınız hafızaya eklenir)
    .msg # Listeleme: !mesajlar (hafızadaki mesaj listelenir)
    .msg # Silme: !sil (hafızadaki mesaj silinir)
    .msg # Başlatma: !yolla (hafızadaki mesaj #x kanalına gönderilir)
    .msg # Durdurma: !dur (gönderme işlemi sonlandırılır)
    .msg # Bilgi: !komutlar (bu listeyi yeniden gönderir)
  }
}

Hepsini deneyerek kodladım, onun için çalışmadı deme lüksünüz yok. Gözden kaçırdığım hata varsa yazdığınız taktirde yardımcı olurum. Düzenlemen gereken yerleri de bold (kalın) yaparak belirttim.

Tüm olayları tek bir eventte toplama şansın da var. Lakin anlatımın akıcı olması için birden çok eventte olayı bitirdim. Tüm kodları aynı pencereye atıp çalışmadı deme sakın, her olay için ayrı bir sayfa aç.

Kolay gelsin.

ShaoLin 27 Ocak 2008 16:36

Yanıt: !ekle
 
MavipikseL çok teşekkürler emekleri için lakin bir sorum olacak.. bu hafızadaki mesaj tutma sayısını arttırabilir miyiz?

MavipikSeL 27 Ocak 2008 16:58

Cevap: Yanıt: !ekle
 
Alıntı:

ShaoLin Nickli Üyeden Alıntı (Mesaj 334091)
MavipikseL çok teşekkürler emekleri için lakin bir sorum olacak.. bu hafızadaki mesaj tutma sayısını arttırabilir miyiz?

Ben kodlamayı txt içinde herhangi bir satır varsa, hafıza dolu diye yorumladım. Yani mesajlar.txt içinde herhangi bir satır varsa, hafızada mesaj var diyecektir. $read(mesajlar.txt,*) parametresi bu anlama geliyor.

MavipikSeL 27 Ocak 2008 17:00

Cevap: !ekle
 
Alıntı:

Radows Nickli Üyeden Alıntı (Mesaj 334106)
Shaolin hafızada mesaj tutma değilde,
Hafızada olanları text den Sırayla Karışık olarak Kanala yollayabılırsın.

on *:text:*:#Admin:{
if !yolla isin $1 {
.msg #Admin İlk mesaj gönderildi, ikincisi için 10 dakika beklenecek.
.msg #X $read(mesajlar.txt,1)
.timeroku 0 600 msg #x $read(mesajlar.txt,1)
}
if !dur isin $1 {
.timeroku off | msg # Mesaj yollama işlemi durdu, aktif hale getirmek için !yolla yazınız.
}
}



Buradaki text1 dosyasına daha fazla metın eklersen sorunun çözülcegını zannediyorum

Bu karışık mesaj falan yollamaz. Herhangi bir satırı okutmak istiyorsan $read(mesajlar.txt,1) bu 1 ne oluyor burda? Açıklayayım, mesajlar.txt içersindeki 1. satırı oku demek oluyor. Yani benim yazdığım kodu kopyalayıp, aşağıdaki gibi yapabilirsin demen çok saçma olmuş. :),

Karışık şekilde aşağıdaki gibi yollayabilirsin.

Kod:

on *:text:*:#Admin:{
  if !yolla isin $1 {
    .msg #Admin Hafızadan herhangi bir mesaj gönderildi, diğeri için 10 dakika beklenecek.
    .msg #X $read(mesajlar.txt)
    .timeroku 0 600 msg #x $read(mesajlar.txt)
  }
  if !dur isin $1 {
    .timeroku off | msg # Mesaj yollama işlemi durdu, aktif hale getirmek için !yolla yazınız.
  }
}



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

Powered by vBulletin® Version 3.8.8 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2024 IRCForumlari.Net