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/)
-   Eggdrop, NeoStats, BNC (https://www.ircforumlari.net/eggdrop-neostats-bnc/)
-   -   !duyuruekle !duyurusil farklı (https://www.ircforumlari.net/eggdrop-neostats-bnc/692330-duyuruekle-duyurusil-farkli.html)

tolgabati 29 Nisan 2015 16:49

!duyuruekle !duyurusil farklı
 
Aşağıdaki kodda !dyrekle !dyrsil değilde farklı bir düzenleme yapabilirmiyiz mesela bota duyuru ekleme kanalı #opers bu kanalda bota bir duyuru ekledik diyelim #sohbet kanalınada bir user girdi ve bot bu userin özeline duyuruyu yazsın.Ama kişi kanaldan çıkıp tekrar girdiğinde aynı duyuruyu tekrar göndermesin kişiye yeni bir duyuru varsa bunu bildirsin.Bunun için sizlerden coder arkadaşlardan çok yardım bekliyorum lütfen bu konudaki yardımlarınızı esirgemeyiniz şimdiden teşekkür ederim.


PHP- Kodu:

# kullanımı:
# .chanset #kanalınız +duyuru .. ile ayarladığınız kanal üstünde.en az Op'lar için:
# !dyrekle <duyuru-no/duyuru-ismi> duyurunuz...
# !dyrsil <duyuru-no/duyuru-ismi>
# !dyrliste
# özelde herhangi bir botun olduğu kanalda,herhangi bir kullanıcı tarafından kullanılabilecek duyuru komutu:
# <duyuru-no/duyuru-ismi>
# kodun aktif olduğu kanaldaki kanal opları ve üstünün eklemiş olduğu duyuru/ları 
# botun özelinde duyuru-ismi yada rakkam ile eklenmişse numarasıyla okuyabilmesini sağlıyor... 
# (herhangi bir komutu yada işareti yok.sadece eklediğinizde 
# duyurunuza koyduğunuz isim yada numara ile o eklenmiş duyuruyu postalıyor.)
setudef flag duyuru
bind pubm 
-|- "*" duyuru:pub
bind msgm 
-|- "*" duyuru:duyur
proc duyuru
:pub {nick uhost hand chan text} {
if {![
channel get $chan duyuru] || ![isop $nick $chan]} {
    return 
0
}
set dyrkmt [lindex [split $text0]
set dyrno [lindex [split $text1]
set dyrmsg [join [lrange [split $text2 end]]
set dzn "duyuru.txt"
    
switch -- $dyrkmt {
 
        
"!dyrekle" {
            if {[
llength $dyrmsg] == "0"} {
                
putserv "notice $nick :kullanımı !dyrekle <duyuru-no/duyuru-ismi> duyurunuz."
                
return 0
            
}
            
set abc [open "$dzna+]
            
puts $abc "$dyrno $dyrmsg"
            
close $abc
            putserv 
"notice $nick :eklendi \002$dyrno:\002 $dyrmsg"
            
return 0
        
}
  
        
"!dyrsil" {
            if {![
file exists "$dzn"]} {
                
putserv "notice $nick :\002$dzn\002 boş."
                
return 0
            
}
            if {[
llength "$dyrno"] == "0"} {
                
putserv "notice $nick :kullanımı !dyrsil <duyuru-no/duyuru-ismi>."
                
return 0
            
}
            
set abc [open "$dzn"]
            
set lines [split [read -nonewline $abc"\n"]
            
close $abc
            
if {[llength $lines] == "0"} {
                
putserv "notice $nick :\002$dzn\002 boş."
                
return 0
            
}
            
set lines2 ""
            
set say 0
            set satirno 0
            
foreach line $lines {
                if {[
lindex $line 0] == $dyrno} {
                  
set lines2 [lreplace $lines $satirno $satirno]
                  
incr say
                
}
                
incr satirno
            
}
            if {
$say == 0} {
                
putserv "notice $nick :böyle bir duyuru yok: \002$dyrno\002."
                
return 0
            
}
            
set abc [open "$dznw]
            
puts $abc [join $lines2 "\n"]
            
close $abc
            
if {$say == 1} {
                
set s ""
            
} else {
                
set s "s"
            
}
            
putserv "notice $nick :\002$dyrno\002 $say adet$s, duyuru silindi."
        
}
  
        
"!dyrliste" {
       if {![
file exists "$dzn"]} {
                
putserv "notice $nick :\002$dzn\002 boş"
                
return 0
            
}
            
set dyrno 0
            set abc 
[open "$dzn"]
            
set lines [split [read -nonewline $abc"\n"]
            
close $abc
            
if {[llength $lines] == "0"} {
                
putserv "notice $nick :\002$dzn\002 boş"
                
return 0
            
}
            foreach 
line $lines {
                
putserv "notice $nick :\002[lindex $line 0]\002 [lrange $line 1 end]"
            
}
            
putserv "notice $nick :Son"
        
}
        return 
0
    
}
}
proc duyuru:duyur {nick uhost hand text} {
    
set dzn "duyuru.txt"
    
if {![file exists "$dzn"]} {
        return 
0
    
}
    
set dyrno 0
    set abc 
[open "$dzn"]
    
set lines [split [read -nonewline $abc"\n"]
    
close $abc
    
if {[llength $lines] == "0"} {
        return 
0
    
}
    foreach 
line $lines {
        if {[
lindex $line 0] == $text} {
            
putserv "privmsg $nick :[lrange $line 1 end]"
        
}
    }
    }
putlog "burası,   kodun dibidir...." 


No_FeaR 29 Nisan 2015 21:46

Cevap: !duyuruekle !duyurusil farklı
 
Burdan Devam Etsen Olurdu Aslında |> [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

tolgabati 29 Nisan 2015 22:39

Cevap: !duyuruekle !duyurusil farklı
 
Alıntı:

No_FeaR Nickli Üyeden Alıntı (Mesaj 1041648101)
Burdan Devam Etsen Olurdu Aslında |> [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Haklısın düşünemedim onu :) bu konuda mutlaka yardımcı olacak bir arkadaş vardır eminim çünkü bu işi bu forumda çözemezsem başka hiç bir yerde çözebileceğimi sanmıyorum

--IRCForumlari.NET ; Flood Engellendi -->-> Yeni yazılan mesaj 22:39 -->-> Daha önceki mesaj 21:51 --

Yokmu arkadaşlar aranızda bu konuda yardımcı olabilecek bir arkadaş lütfen

rascoLn 30 Nisan 2015 02:33

Cevap: !duyuruekle !duyurusil farklı
 
Selamun ALeykum

@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] buyur kardeşim duyuru.tcl

TCL İndir : [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Komutlar:
!duyuru - Duyuruları listeler
!duyuru ekle (duyurun) - Duyuru ekler
!duyuru sil (duyuru) - Tekil olarak duyuru siler
!duyuru tsil - Bütün duyuruları siler

Duyuru eklediğiniz zaman nickinizle birlikte duyurunuzu ekler.
sil komutunda tek tek duyuru siler.
tsil komutunda dosyadaki bütün duyuruları siler.

a kanalına girenin özelinde duyuruyu kim atmışsa nickiyle birlikte gözükür.
Tekrar girdiğinde aynı duyuruyu almaz.

rar' dan çıkardığınız duyuru klasörünü olduğu gibi scripts klasörüne atınız!!

NOT: kanal isimlerini yazmayı unutmayınız (TCL Edit..)

Özele gelen ekran görüntüsü:
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

tolgabati 30 Nisan 2015 03:11

Cevap: !duyuruekle !duyurusil farklı
 
Alıntı:

rascoLn Nickli Üyeden Alıntı (Mesaj 1041648188)
Selamun ALeykum

@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] buyur kardeşim duyuru.tcl

TCL İndir : [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Komutlar:
!duyuru - Duyuruları listeler
!duyuru ekle (duyurun) - Duyuru ekler
!duyuru sil (duyuru) - Tekil olarak duyuru siler
!duyuru tsil - Bütün duyuruları siler

Duyuru eklediğiniz zaman nickinizle birlikte duyurunuzu ekler.
sil komutunda tek tek duyuru siler.
tsil komutunda dosyadaki bütün duyuruları siler.

a kanalına girenin özelinde duyuruyu kim atmışsa nickiyle birlikte gözükür.
Tekrar girdiğinde aynı duyuruyu almaz.

rar' dan çıkardığınız duyuru klasörünü olduğu gibi scripts klasörüne atınız!!

NOT: kanal isimlerini yazmayı unutmayınız (TCL Edit..)

Özele gelen ekran görüntüsü:
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]




@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] şefim kanalda !duyuru ekle deneme yada !duyuru yazıyorum ama hiç bir tepki vermiyor.Hatta önce hiç editlemeden #akanal ve ##bkanal diye kanal açtım ordada denedim ama sonuç aynı

rascoLn 30 Nisan 2015 03:25

Cevap: !duyuruekle !duyurusil farklı
 
confunuza source ederken:

source/duyuru/duyuru.tcl

olarak eklediniz mi

bot her iki kanaldada mevcutmu

tolgabati 30 Nisan 2015 03:36

Cevap: !duyuruekle !duyurusil farklı
 
Alıntı:

rascoLn Nickli Üyeden Alıntı (Mesaj 1041648198)
confunuza source ederken:

source/duyuru/duyuru.tcl

olarak eklediniz mi

bot her iki kanaldada mevcutmu

@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] şefim şimdi hallettim sunucu üstünde klasöre yazma izni vermek gerekiyormuş Allah senden razı öyle güzel çalışıyorki tıkır tıkır hiç sorun yok.Allah kalbinden ne keçerse kabul etsin.Şefim senden küçük bir ricam olacak mesela kişi kanalda ve eski duyuruları aldı okudu ama kanaldayken tekrar bir duyuru daha yapıldı nu yeni duyuruyu alması için kişinin kanaldan çıkıp tekrar girmesi gerekiyor,bunun yerine kişi kanaldan çıkıp girmedende yeni duyuruyu alması mümkünmü.

rascoLn 30 Nisan 2015 03:40

Cevap: !duyuruekle !duyurusil farklı
 
Amin cümlemizin..

tolgabati 30 Nisan 2015 05:34

Cevap: !duyuruekle !duyurusil farklı
 
Alıntı:

rascoLn Nickli Üyeden Alıntı (Mesaj 1041648204)
Amin cümlemizin..

@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] şefim sana yük olmazsa senden küçük bir ricam olacak mesela kişi kanalda ve eski duyuruları aldı okudu ama kanaldayken tekrar bir duyuru daha yapıldı bu yeni duyuruyu alması için kişinin kanaldan çıkıp tekrar girmesi gerekiyor,bunun yerine kişi kanaldan çıkıp girmedende yeni duyuruyu alması mümkünmü.Birde tekil olarak duyuruyu silemiyoruz mesela 10 tane duyuru ekledim ama diyelimki 9. duyuruyu sileceğim ama silemiyorum sadece tüm duyuruları aynı anda silebiliyorum

--IRCForumlari.NET ; Flood Engellendi -->-> Yeni yazılan mesaj 05:34 -->-> Daha önceki mesaj 03:43 --

Alıntı:

tolgabati Nickli Üyeden Alıntı (Mesaj 1041648205)
@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] şefim sana yük olmazsa senden küçük bir ricam olacak mesela kişi kanalda ve eski duyuruları aldı okudu ama kanaldayken tekrar bir duyuru daha yapıldı bu yeni duyuruyu alması için kişinin kanaldan çıkıp tekrar girmesi gerekiyor,bunun yerine kişi kanaldan çıkıp girmedende yeni duyuruyu alması mümkünmü..


Şefim duyuru silmeyide hallettim benim hatamdan kaynaklanıyor bir sorun yok yani tek eksiğim belirttiğim gibi kişi kanaldayken de yeni duyuru eklendiğinde aynı anda duyuruyu alması bunun dışında hiç bir sorun yok.

tolgabati 30 Nisan 2015 12:52

Cevap: !duyuruekle !duyurusil farklı
 
Alıntı:

tolgabati Nickli Üyeden Alıntı (Mesaj 1041648205)
@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] şefim sana yük olmazsa senden küçük bir ricam olacak mesela kişi kanalda ve eski duyuruları aldı okudu ama kanaldayken tekrar bir duyuru daha yapıldı bu yeni duyuruyu alması için kişinin kanaldan çıkıp tekrar girmesi gerekiyor,bunun yerine kişi kanaldan çıkıp girmedende yeni duyuruyu alması mümkünmü.Birde tekil olarak duyuruyu silemiyoruz mesela 10 tane duyuru ekledim ama diyelimki 9. duyuruyu sileceğim ama silemiyorum sadece tüm duyuruları aynı anda silebiliyorum

--IRCForumlari.NET ; Flood Engellendi -->-> Yeni yazılan mesaj 05:34 -->-> Daha önceki mesaj 03:43 --




Şefim duyuru silmeyide hallettim benim hatamdan kaynaklanıyor bir sorun yok yani tek eksiğim belirttiğim gibi kişi kanaldayken de yeni duyuru eklendiğinde aynı anda duyuruyu alması bunun dışında hiç bir sorun yok.

@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] şefim biraz fazla oldum demi ;s1


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

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