selam.
partyline'da bota : .chanset #kanal chanmode +kanalmodu gibi bir komutlada olabilir.
botun sahibi hariç başka kimse değişmemesi için kanal modlarını hep bu ayarda tutması için kullanılabilir yok illa scriptle yaptırmak içinse,elimde bu iş için yapılmış şöyle bir kod var..
Kod: Kodu kopyalamak için üzerine çift tıklayın!
namespace eval modecontrol {
variable enforceModes "" #daima bu modlarda tutsun
variable restrictModes "" #asla bu modlara izin vermesin
proc raw:modeCheck {from key text} {
variable enforceModes
variable restrictModes
set from [split $from "!"]
set nick [lindex $from 0]
set handle [nick2hand $nick]
#Sanity check
if {[isbotnick $nick] || [matchattr $handle "+mnb"]} {
return 0
}
set items [split $text]
set enforce [split $enforceModes ""]
set restrict [split $restrictModes ""]
set target [lindex $items 0]
set add 1
set act 0
foreach mode [split [lindex $items 1] ""] {
switch -- $mode {
"+" {
set add 1
}
"-" {
set add 0
}
"I" -
"e" -
"b" {
set items [lreplace $items 2 2]
}
"k" {
if {$add} {
set key [lindex $items 2]
set items [lreplace $items 2 2]
}
}
"l" {
if {$add} {
set limit [lindex $items 2]
set items [lreplace $items 2 2]
}
}
default {
if {[lsearch $lock $enforce] >= 0 && !$add} {
pushmode $target "+$mode"
set act 1
} elseif {[lsearch $restrict $mode] >= 0 && $add} {
pushmode $target "-$mode"
set act 1
}
}
}
#kanal için bir limit yada key-anahtar ayarlamak için kullanın
#if {[info exists key]} {
# pushmode $target -k $key
#}
#if {[info exists limit]} {
# pushmode $target -l
#}
}
if {$act && [llength $from] > 1} {
puthelp "NOTICE $nick :izin verin size kanal mod ayarları için yardım edeyim."
}
return 0
}
bind raw - "MODE" [namespace current]::modeCheck
}
kolay gelsin...