No_FeaR
28 Nisan 2015, 20:22
Merhabalar IF Kullanıcıları..
Bu TCL'yi Kendim İçin Rica Etmiştim rascoLn'de Yapıvermişti. Sağolsun Oda Kırmadı Yaptı.
Komutlar Şöyle ;
!kurallar - kuralları listeler..
!kurallar ekle (kuralınız)
!kurallar sil (silinecek kural)
Ekle ve Sil komutlarını kural yöneticisi çalıştırabilir..
DİPNOT: kuralowner'a girilen nick büyük küçük harfe duyarlıdır..
# Kurallar yöneticisi
set kuralowner "No_FeaR"
# Komutun iÅŸleyeceÄŸi kanal
set operchan "#Opers"
# Kullanılacak komut
set kuralkomut "!kurallar"
# Kuralların eklenip, silineceğ dosya yolu
set kuraldosya "scripts/operkurallar"
## Başlangıç
bind pub - $kuralkomut kural
proc kural { nick host hand chan text } {
global operchan kuraldosya operchan
if {[string equal $operchan $chan]} {
set islem [lindex $text 0]
set veri [turkce:destek [lrange $text 1 end]]
switch -- $islem {
"ekle" {
if { $::kuralowner == $nick } {
if { $veri ne "" } {
set kuralekle [open $kuraldosya a]
puts $kuralekle $veri
close $kuralekle
putserv "privmsg $operchan :\0034«\0031 [duzenle "Yeni kural başarıyla eklendi."]\0034 »"
} else {
putserv "privmsg $operchan :\0034 «\0031 [duzenle "Kural girmediniz. \002ORNEK:\002 $::kuralkomut ekle \(\00312kuralınız\003\)"] \0034»"
}
} else {
putserv "privmsg $operchan :\0034 «\0031 [duzenle "Kurallarla ilgili yönetici komutları kullanamazsınız."] \0034 »"
}
}
"sil" {
if { $::kuralowner == $nick } {
if {![file isfile $kuraldosya] } { putquick "privmsg $operchan :[duzenle "\0034 «\0031 Herhangi bir kural eklenmemiş \0034»"]"; return 0}
if { [file size $kuraldosya] <= 10 } { close [open $kuraldosya w]; putquick "privmsg $operchan :[duzenle "\0034 «\0031 Kural dosyası boş \0034»"]"; return 0}
set kuralsil [open $kuraldosya r]
set silinecek [split [read -nonewline $kuralsil] \n]
close $kuralsil
set bul [lsearch -exact $silinecek "$veri" ]
set sil [lreplace $silinecek $bul $bul]
set olustur [open $kuraldosya w]
puts $olustur [join $sil "\n"]
close $olustur
putserv "privmsg $operchan :\0034 «\0031 [duzenle "Eski kural başarıyla silindi."] \0034 »"
} else {
putserv "privmsg $operchan :\0034 «\0031 [duzenle "Kurallarla ilgili yönetici komutları kullanamazsınız."] \0034 »"
}
}
default {
if { $text eq "" } {
if {![file isfile $kuraldosya] } { putquick "privmsg $operchan :[duzenle "\0034 «\0031 Herhangi bir kural eklenmemiş \0034»"]"; return 0}
if { [file size $kuraldosya] <= 10 } { close [open $kuraldosya w]; putquick "privmsg $operchan :[duzenle "\0034 «\0031 Kural dosyası boş \0034»"]"; return 0}
set dosya [open $kuraldosya r]
set liste [split [read $dosya] \n]
close $dosya
putquick "privmsg $operchan :\0030,2 Kurallar : \003"
putquick "privmsg $operchan :------------------------------------"
set x 1
foreach listele $liste {
if { ![string match "" $listele] } {
putquick "privmsg $operchan :\0034»\0031 [duzenle $listele]"
}
incr x
}
putquick "privmsg $operchan :------------------------------------"
putquick "privmsg $operchan :\0030,2 Kurallar Listelendi.. \003"
}
}
}
}
}
proc duzenle {harf} {
regsub -all "ğ" $harf "ð" harf
regsub -all "ş" $harf "þ" harf
regsub -all "Ä°" $harf "Ã" harf
regsub -all "ı" $harf "ý" harf
regsub -all "Ä" $harf "Ã" harf
regsub -all "Å" $harf "Ã" harf
return $harf
}
proc turkce:destek {veri} {
#--- Turkce karakter duzeltme ----------------------------------------------------------------------------------------------------------------
regsub -all "ý" $veri "ı" veri
regsub -all "Ã" $veri "Ä°" veri
regsub -all "þ" $veri "ş" veri
regsub -all "ð" $veri "ğ" veri
regsub -all "Ã" $veri "Ä" veri
regsub -all "Ã" $veri "Å" veri
return $veri
}
## BitiÅŸ
putlog "kural.tcl rascoLn"
Bu TCL'yi Kendim İçin Rica Etmiştim rascoLn'de Yapıvermişti. Sağolsun Oda Kırmadı Yaptı.
Komutlar Şöyle ;
!kurallar - kuralları listeler..
!kurallar ekle (kuralınız)
!kurallar sil (silinecek kural)
Ekle ve Sil komutlarını kural yöneticisi çalıştırabilir..
DİPNOT: kuralowner'a girilen nick büyük küçük harfe duyarlıdır..
# Kurallar yöneticisi
set kuralowner "No_FeaR"
# Komutun iÅŸleyeceÄŸi kanal
set operchan "#Opers"
# Kullanılacak komut
set kuralkomut "!kurallar"
# Kuralların eklenip, silineceğ dosya yolu
set kuraldosya "scripts/operkurallar"
## Başlangıç
bind pub - $kuralkomut kural
proc kural { nick host hand chan text } {
global operchan kuraldosya operchan
if {[string equal $operchan $chan]} {
set islem [lindex $text 0]
set veri [turkce:destek [lrange $text 1 end]]
switch -- $islem {
"ekle" {
if { $::kuralowner == $nick } {
if { $veri ne "" } {
set kuralekle [open $kuraldosya a]
puts $kuralekle $veri
close $kuralekle
putserv "privmsg $operchan :\0034«\0031 [duzenle "Yeni kural başarıyla eklendi."]\0034 »"
} else {
putserv "privmsg $operchan :\0034 «\0031 [duzenle "Kural girmediniz. \002ORNEK:\002 $::kuralkomut ekle \(\00312kuralınız\003\)"] \0034»"
}
} else {
putserv "privmsg $operchan :\0034 «\0031 [duzenle "Kurallarla ilgili yönetici komutları kullanamazsınız."] \0034 »"
}
}
"sil" {
if { $::kuralowner == $nick } {
if {![file isfile $kuraldosya] } { putquick "privmsg $operchan :[duzenle "\0034 «\0031 Herhangi bir kural eklenmemiş \0034»"]"; return 0}
if { [file size $kuraldosya] <= 10 } { close [open $kuraldosya w]; putquick "privmsg $operchan :[duzenle "\0034 «\0031 Kural dosyası boş \0034»"]"; return 0}
set kuralsil [open $kuraldosya r]
set silinecek [split [read -nonewline $kuralsil] \n]
close $kuralsil
set bul [lsearch -exact $silinecek "$veri" ]
set sil [lreplace $silinecek $bul $bul]
set olustur [open $kuraldosya w]
puts $olustur [join $sil "\n"]
close $olustur
putserv "privmsg $operchan :\0034 «\0031 [duzenle "Eski kural başarıyla silindi."] \0034 »"
} else {
putserv "privmsg $operchan :\0034 «\0031 [duzenle "Kurallarla ilgili yönetici komutları kullanamazsınız."] \0034 »"
}
}
default {
if { $text eq "" } {
if {![file isfile $kuraldosya] } { putquick "privmsg $operchan :[duzenle "\0034 «\0031 Herhangi bir kural eklenmemiş \0034»"]"; return 0}
if { [file size $kuraldosya] <= 10 } { close [open $kuraldosya w]; putquick "privmsg $operchan :[duzenle "\0034 «\0031 Kural dosyası boş \0034»"]"; return 0}
set dosya [open $kuraldosya r]
set liste [split [read $dosya] \n]
close $dosya
putquick "privmsg $operchan :\0030,2 Kurallar : \003"
putquick "privmsg $operchan :------------------------------------"
set x 1
foreach listele $liste {
if { ![string match "" $listele] } {
putquick "privmsg $operchan :\0034»\0031 [duzenle $listele]"
}
incr x
}
putquick "privmsg $operchan :------------------------------------"
putquick "privmsg $operchan :\0030,2 Kurallar Listelendi.. \003"
}
}
}
}
}
proc duzenle {harf} {
regsub -all "ğ" $harf "ð" harf
regsub -all "ş" $harf "þ" harf
regsub -all "Ä°" $harf "Ã" harf
regsub -all "ı" $harf "ý" harf
regsub -all "Ä" $harf "Ã" harf
regsub -all "Å" $harf "Ã" harf
return $harf
}
proc turkce:destek {veri} {
#--- Turkce karakter duzeltme ----------------------------------------------------------------------------------------------------------------
regsub -all "ý" $veri "ı" veri
regsub -all "Ã" $veri "Ä°" veri
regsub -all "þ" $veri "ş" veri
regsub -all "ð" $veri "ğ" veri
regsub -all "Ã" $veri "Ä" veri
regsub -all "Ã" $veri "Å" veri
return $veri
}
## BitiÅŸ
putlog "kural.tcl rascoLn"