Tekil Mesaj gösterimi
Alt 29 Nisan 2015, 16:49   #1
Çevrimdışı
tolgabati
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
!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 Kod:   Kodu kopyalamak için üzerine çift tıklayın!
# 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...." 


 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları eglen sohbet reklamver