bazı şeyleri mükemmel yapmak için kullanıcı deneyimi ve geri dönüşü önemlidir.
işte bu noktada mantık hatalarının olduğunu gördük ve düzelttim.
bazı yeniliklerde ekledim eklemeyede devam edeceğim, insallah daha mükemmel bir iş çıkacak..
Kod: Kodu kopyalamak için üzerine çift tıklayın!
on *:TEXT:*:#: {
if $me isop $chan {
if ($bw($1-).?) {
;$1<eslesme> $2<tespit edilen kelime> $3<ceza tipi>
tokenize 32 $v1
if $3 == Kickban {
ban -ku600 # $nick 2 küfür yaraktır!
echo # $nick $qt($1) ile eşleşen $qt($2) yasaklı kelimesini kullandı!
}
}
}
}
on *:start: b:load
alias b:def return $iif($1,$1,KickBan)
alias b:save $iif($hget(bw~,0),.hsave bw~ badword.db) | $iif($hget(br~,0),.hsave br~ badword.db)
alias b:load {
if !$hget(bw~,0) || !$hget(br~,0) {
if (!$isfile(badword.db)) write badword.db
if ($isfile(badword.db)) { hmake bw~ 10000 | hload bw~ badword.db | hmake br~ 10000 | hload br~ badword.db
}
}
}
alias bw {
if $regex($1,/([-+][wr])/) && $b:def($3) {
if $1 == +r {
if $hget(br~,$2) { echo 4 *** Bu Kelime ekli | return }
else hadd -m br~ $2 $b:def($3) | echo 3 ** Kelime eklendi | b:save | return
}
if $1 == -r {
if $hget(br~,$2) { hdel br~ $2 | echo 4 ** Kelime silindi | b:save | return }
else echo 4 ** Kelime bulunamadı | return
}
if $1 == +w {
if $hget(bw~,$2) { echo 4 *** Bu Kelime ekli | return }
else hadd -m bw~ $2 $b:def($3) | echo 3 ** Kelime eklendi | b:save | return
}
if $1 == -w {
if $hget(bw~,$2) { hdel bw~ $2 | echo 4 ** Kelime silindi | b:save | return }
else echo 4 ** Kelime bulunamadı | return
}
}
if $1 == ? { noop $hfind(br~,$2,0,R,echo Regex: $1-) | noop $hfind(bw~,$2,0,W,echo WildCard: $1-) | return }
if ($regex($1,/(cr|cw)/ig)) { echo * liste temizlendi | $iif($regml(1) == cw,hfree bw~,hfree br~) | b:save | return }
elseif $prop == ? {
var %r~ = $gettok($1-,0,32)
while (%r~) { if ($hfind(br~,$gettok($1-,%r~,32),0,R,var %i $1)) return %i $gettok($1-,%r~,32) $hget(br~,%i) | dec %r~ }
var %w~ $gettok($1-,0,32)
while (%w~) { if ($hfind(bw~,$gettok($1-,%w~,32),0,W,var %i $1)) return %i $gettok($1-,%w~,32) $hget(bw~,%i) | dec %w~ }
}
else {
echo 5 *** hatalı ve eksik parametre
echo 5 * /bw [+|-][W|R|CR|WR]? (wildcard|regex|kontrol|kayıt temizleme) [wildcard|regex|text] <opsiyonel ExData: [Kick|kickban|zline|glizne|sqline..]>
echo 5 * orn: /bw +R ([pb][i!İı1][cç\[])
echo 5 * orn: /bw +R (\b[pb][i!I1İü][çc]\b) ban
echo 5 * orn: /bw -R (\b[pb][i!I1İü][çc]\b) (eklenen kaydı siler)
echo 5 * orn: /bw +R (\bw{3}\.\w+\.w*\b) Sizin_ceza_tipiniz
echo 5 * orn: /bw +W *bitch* kickBan
echo 5 * orn: /bw +W *g0ogle* kill
echo 5 * orn: /bw -W *g0ogle* (eklenen kaydı siler)
echo 5 * orn: /bw +W *y?nd?x* Sizin_ceza_tipiniz
echo 5 * orn: /bw ? bitch (bu kelimeye uygun eşleşme var mı sorgular )
echo 5 * orn: /bw CR (tüm Regex kayıtlarını siler)
echo 5 * orn: /bw CW (tüm wildcard kayıtlarını siler)
}
}