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/)
-   mIRC Scripting Hazır Kodlar (https://www.ircforumlari.net/mirc-scripting-hazir-kodlar/)
-   -   Debug && Hash Tables - Badnick,Reklam,Küfür Korumaları (https://www.ircforumlari.net/mirc-scripting-hazir-kodlar/287592-debug-ampamp-hash-tables-badnickreklamkufur-korumalari.html)

Doktrin 05 Kasım 2009 17:20

Debug && Hash Tables - Badnick,Reklam,Küfür Korumaları
 
Başlıktan da anlaşılacağı gibi debug ve hash tablo kullanarak yazdığım badnick,reklam ve küfür korumaları.Korumaların çalışabilmesi için kanalda op olmalı veya usermode'larınızda "o" mode'unun olması gerekmektedir.Umarım debug kullanımına ve hash tablolarının kullanımına basit bir örnek olmuştur.

Kullanım şekli:
Kodların çalışması için öncelikle /debug -i on _prots komutunu uyguluyoruz.(debug verilerinin algılanabilmesi için)

/ekle <badnick|reklam|kufur> <eklenecek>
/sil <badnick|reklam|kufur> <silinecek>

Ekleme yaparken wilcard(*) kullanabilirsiniz.
Kayıt dosyaları : badnick.doktrin kufur.doktrin reklam.doktrin

Örn:
/ekle reklam *http*
/sil badnick camda_*

İşte kodlar :
Kod:

on *:start:{
  hmake badnick
  hmake kufur
  hmake reklam
  hload badnick badnick.doktrin
  hload kufur kufur.doktrin
  hload reklam reklam.doktrin
}
alias _prots {
  tokenize 32 $1-
  if ($1 = <-) {
    if ($3 = JOIN) {
      var %nick = $right($gettok($2,1,33),-1),%chan = $right($4,-1)
      if $me isop %chan || o isin $usermode {
        if $hfind(badnick,%nick,1,W).data {
          ban -k %chan %nick 2 badnick
        }
      }
    }
    elseif ($3 = PRIVMSG) {
      if ($4 ischan) {
        var %nick = $right($gettok($2,1,33),-1),%text = $right($5-,-1),%chan = $4
        if $me isop %chan || o isin $usermode {
          if $hfind(kufur,%text,1,W).data {
            ban -k %chan %nick 2 kufur
          }
          if $hfind(reklam,%text,1,W).data {
            ban -k %chan %nick 2 reklam
          }
        }
      }
    }
  }
}
alias ekle {
  if !$1 { echo $colour(info) $timestamp *** Hatalı işlem! Kullanım şekli: /ekle <badnick|kufur|reklam> <eklenecek>  | return }
  if $1 == badnick {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Eklenecek badnicki girmediniz. | return }
    else {
      hadd -m badnick $r(1000,999999) $2
      hsave badnick badnick.doktrin
      echo $colour(info) $timestamp $+(7,$2,) veritabanına başarıyla eklendi.
    }
  }
  elseif $1 == kufur {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Eklenecek küfürü girmediniz. | return }
    else {
      hadd -m kufur $r(1000,999999) $2-
      hsave kufur kufur.doktrin
      echo $colour(info) $timestamp $+(7,$2-,) veritabanına başarıyla eklendi.
    }
  }
  elseif $1 == reklam {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Eklenecek reklamı girmediniz. | return }
    else {
      hadd -m reklam $r(1000,999999) $2-
      hsave reklam reklam.doktrin
      echo $colour(info) $timestamp $+(7,$2-,) veritabanına başarıyla eklendi.
    }
  }
}
alias sil {
  if !$1 { echo $colour(info) $timestamp *** Hatalı işlem! Kullanım şekli: /sil <badnick|kufur|reklam> <silinecek>  | return }
  if $1 == badnick {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Silinecek badnicki girmediniz. | return }
    if $hfind(badnick,$2,1,W).data {
      hdel badnick $ifmatch
      hsave badnick badnick.doktrin
      echo $colour(info) $timestamp $+(7,$2,) veritabanından başarıyla silindi.
    }
    else { echo $colour(info) $timestamp $+(7,$2,) veritabanında bulunamadı | return }
  }
  elseif $1 == kufur {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Silinecek küfürü girmediniz. | return }
    if $hfind(kufur,$2,1,W).data {
      hdel kufur $ifmatch
      hsave kufur kufur.doktrin
      echo $colour(info) $timestamp $+(7,$2,) veritabanından başarıyla silindi.
    }
    else { echo $colour(info) $timestamp $+(7,$2,) veritabanında bulunamadı | return }
  }
  elseif $1 == reklam {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Silinecek reklamı girmediniz. | return }
    if $hfind(reklam,$2,1,W).data {
      hdel reklam $ifmatch
      hsave reklam reklam.doktrin
      echo $colour(info) $timestamp $+(7,$2,) veritabanından başarıyla silindi.
    }
    else { echo $colour(info) $timestamp $+(7,$2,) veritabanında bulunamadı | return }
  }
}


ponderadom 02 Ocak 2010 11:41

Cevap: Debug && Hash Tables - Badnick,Reklam,Küfür Korumaları
 
Alıntı:

ErmaN Nickli Üyeden Alıntı (Mesaj 857033)
on *:start:{
hmake badnick
hmake kufur
hmake reklam
hload badnick badnick.doktrin
hload kufur kufur.doktrin
hload reklam reklam.doktrin
}
alias _prots {
tokenize 32 $1-
if ($1 = <-) {
if ($3 = JOIN) {
var %nick = $right($gettok($2,1,33),-1),%chan = $right($4,-1)
if $me isop %chan || o isin $usermode {
if $hfind(badnick,%nick,1,W).data {
ban -k %chan %nick 2 badnick
}
}
}
elseif ($3 = PRIVMSG) {
if ($4 ischan) {
var %nick = $right($gettok($2,1,33),-1),%text = $right($5-,-1),%chan = $4
if $me isop %chan || o isin $usermode {
if $hfind(kufur,%text,1,W).data {
ban -k %chan %nick 2 kufur
}
if $hfind(reklam,%text,1,W).data {
ban -k %chan %nick 2 reklam
}
}
}
}
}
}
alias ekle {
if !$1 { echo $colour(info) $timestamp *** Hatalı işlem! Kullanım şekli: /ekle <badnick|kufur|reklam> <eklenecek> | return }
if $1 == badnick {
if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Eklenecek badnicki girmediniz. | return }
else {
hadd -m badnick $r(1000,999999) $2
hsave badnick badnick.doktrin
echo $colour(info) $timestamp $+(7,$2,) veritabanına başarıyla eklendi.
}
}
elseif $1 == kufur {
if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Eklenecek küfürü girmediniz. | return }
else {
hadd -m kufur $r(1000,999999) $2-
hsave kufur kufur.doktrin
echo $colour(info) $timestamp $+(7,$2-,) veritabanına başarıyla eklendi.
}
}
elseif $1 == reklam {
if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Eklenecek reklamı girmediniz. | return }
else {
hadd -m reklam $r(1000,999999) $2-
hsave reklam reklam.doktrin
echo $colour(info) $timestamp $+(7,$2-,) veritabanına başarıyla eklendi.
}
}
}
alias sil {
if !$1 { echo $colour(info) $timestamp *** Hatalı işlem! Kullanım şekli: /sil <badnick|kufur|reklam> <silinecek> | return }
if $1 == badnick {
if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Silinecek badnicki girmediniz. | return }
if $hfind(badnick,$2,1,W).data {
hdel badnick $ifmatch
hsave badnick badnick.doktrin
echo $colour(info) $timestamp $+(7,$2,) veritabanından başarıyla silindi.
}
else { echo $colour(info) $timestamp $+(7,$2,) veritabanında bulunamadı | return }
}
elseif $1 == kufur {
if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Silinecek küfürü girmediniz. | return }
if $hfind(kufur,$2,1,W).data {
hdel kufur $ifmatch
hsave kufur kufur.doktrin
echo $colour(info) $timestamp $+(7,$2,) veritabanından başarıyla silindi.
}
else { echo $colour(info) $timestamp $+(7,$2,) veritabanında bulunamadı | return }
}
elseif $1 == reklam {
if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Silinecek reklamı girmediniz. | return }
if $hfind(reklam,$2,1,W).data {
hdel reklam $ifmatch
hsave reklam reklam.doktrin
echo $colour(info) $timestamp $+(7,$2,) veritabanından başarıyla silindi.
}
else { echo $colour(info) $timestamp $+(7,$2,) veritabanında bulunamadı | return }
}
}
[/code]


Bunlara uyarı muaf nick muaf kanal ekleyemezmiyiz acaba?

Orhan_VeLi 11 Ocak 2010 01:09

Cevap: Debug && Hash Tables - Badnick,Reklam,Küfür Korumaları
 
Alıntı:

ponderadom Nickli Üyeden Alıntı (Mesaj 1040285526)
Bunlara uyarı muaf nick muaf kanal ekleyemezmiyiz acaba?

Eklense Süper olur valla. /ekle muafnick nick /ekle muafkanal kanal şeklinde :)

Doktrin 11 Ocak 2010 02:54

Cevap: Debug && Hash Tables - Badnick,Reklam,Küfür Korumaları
 
Kod:

on *:start: {
  hmake badnick
  hmake kufur
  hmake reklam
  hload badnick badnick.doktrin
  hload kufur kufur.doktrin
  hload reklam reklam.doktrin
  if !$isfile(muafkanal.db) { .write muafkanal.db }
  if !$isfile(muafnick.db) { .write muafnick.db }
}
alias _prots {
  tokenize 32 $1-
  if ($1 = <-) {
    if ($3 = JOIN) {
      var %nick = $right($gettok($2,1,33),-1),%chan = $right($4,-1)
      if $read(muafkanal.db,w,%chan) || $read(muafnick.db,w,%nick) { return }
      if $me isop %chan || o isin $usermode {
        if $hfind(badnick,%nick,1,W).data {
          ban -k %chan %nick 2 badnick
        }
      }
    }
    elseif ($3 = PRIVMSG) {
      if ($4 ischan) {
        var %nick = $right($gettok($2,1,33),-1),%text = $right($5-,-1),%chan = $4
        if $read(muafkanal.db,w,%chan) || $read(muafnick.db,w,%nick) { return }
        if $me isop %chan || o isin $usermode {
          if $hfind(kufur,%text,1,W).data {
            ban -k %chan %nick 2 kufur
          }
          if $hfind(reklam,%text,1,W).data {
            ban -k %chan %nick 2 reklam
          }
        }
      }
    }
  }
}
alias ekle {
  if !$1 { echo $colour(info) $timestamp *** Hatalı işlem! Kullanım şekli: /ekle <muafnick|muafkanal|badnick|kufur|reklam> <eklenecek>  | return }
  if $1 == muafnick {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Eklenecek muafnicki girmediniz. | return }
    else {
      write muafnick.db $2     
      echo $colour(info) $timestamp $+(7,$2,) veritabanına başarıyla eklendi.
    }
  }
  elseif $1 == muafkanal {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Eklenecek muafkanalı girmediniz. | return }
    else {
      write muafnick.db $2     
      echo $colour(info) $timestamp $+(7,$2,) veritabanına başarıyla eklendi.
    }
  }
  elseif $1 == badnick {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Eklenecek badnicki girmediniz. | return }
    else {
      hadd -m badnick $r(1000,999999) $2
      hsave badnick badnick.doktrin
      echo $colour(info) $timestamp $+(7,$2,) veritabanına başarıyla eklendi.
    }
  }
  elseif $1 == kufur {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Eklenecek küfürü girmediniz. | return }
    else {
      hadd -m kufur $r(1000,999999) $2-
      hsave kufur kufur.doktrin
      echo $colour(info) $timestamp $+(7,$2-,) veritabanına başarıyla eklendi.
    }
  }
  elseif $1 == reklam {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Eklenecek reklamı girmediniz. | return }
    else {
      hadd -m reklam $r(1000,999999) $2-
      hsave reklam reklam.doktrin
      echo $colour(info) $timestamp $+(7,$2-,) veritabanına başarıyla eklendi.
    }
  }
}
alias sil {
  if !$1 { echo $colour(info) $timestamp *** Hatalı işlem! Kullanım şekli: /sil <muafnick|muafkanal|badnick|kufur|reklam> <silinecek>  | return }
  if $1 == muafnick {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Silinecek muafnicki girmediniz. | return }
    if $read(muafnick.db,w,$2) {
      write $+(-ds,$2) muafnick.db
      echo $colour(info) $timestamp $+(7,$2,) veritabanından başarıyla silindi.
    }
    else { echo $colour(info) $timestamp $+(7,$2,) veritabanında bulunamadı | return }
  }
  elseif $1 == muafkanal {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Silinecek muafkanalı girmediniz. | return }
    if $read(muafkanal.db,w,$2) {
      write $+(-ds,$2) muafkanal.db
      echo $colour(info) $timestamp $+(7,$2,) veritabanından başarıyla silindi.
    }
    else { echo $colour(info) $timestamp $+(7,$2,) veritabanında bulunamadı | return }
  }
  elseif $1 == badnick {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Silinecek badnicki girmediniz. | return }
    if $hfind(badnick,$2,1,W).data {
      hdel badnick $ifmatch
      hsave badnick badnick.doktrin
      echo $colour(info) $timestamp $+(7,$2,) veritabanından başarıyla silindi.
    }
    else { echo $colour(info) $timestamp $+(7,$2,) veritabanında bulunamadı | return }
  }
  elseif $1 == kufur {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Silinecek küfürü girmediniz. | return }
    if $hfind(kufur,$2,1,W).data {
      hdel kufur $ifmatch
      hsave kufur kufur.doktrin
      echo $colour(info) $timestamp $+(7,$2,) veritabanından başarıyla silindi.
    }
    else { echo $colour(info) $timestamp $+(7,$2,) veritabanında bulunamadı | return }
  }
  elseif $1 == reklam {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Silinecek reklamı girmediniz. | return }
    if $hfind(reklam,$2,1,W).data {
      hdel reklam $ifmatch
      hsave reklam reklam.doktrin
      echo $colour(info) $timestamp $+(7,$2,) veritabanından başarıyla silindi.
    }
    else { echo $colour(info) $timestamp $+(7,$2,) veritabanında bulunamadı | return }
  }
}

/ekle <muafnick|muafkanal> <kanal|nick>
/sil <muafnick|muafkanal> <kanal|nick>

Converse 07 Kasım 2010 15:21

Cevap: Debug && Hash Tables - Badnick,Reklam,Küfür Korumaları
 
bunu badnicklerin hostlarına değilde nicklere yada wildcardlara ban atıcak şekilde yapabilirmiyiz?

eRCi 08 Kasım 2010 10:22

Cevap: Debug && Hash Tables - Badnick,Reklam,Küfür Korumaları
 
Bunu Botlar icin Tasarlayamazmıyız ? !kotusoz !reklam !muafnick vs komutları için

Nykshemera 20 Mayıs 2012 16:43

Cevap: Debug && Hash Tables - Badnick,Reklam,Küfür Korumaları
 
Alıntı:

Converse Nickli Üyeden Alıntı (Mesaj 1040569795)
bunu badnicklerin hostlarına değilde nicklere yada wildcardlara ban atıcak şekilde yapabilirmiyiz?

alias _prots {
tokenize 32 $1-
if ($1 = <-) {
if ($3 = JOIN) {
var %nick = $right($gettok($2,1,33),-1),%chan = $right($4,-1)
if $read(muafkanal.db,w,%chan) || $read(muafnick.db,w,%nick) { return }
if $me isop %chan || o isin $usermode {
if $hfind(badnick,%nick,1,W).data {
ban -k %chan %nick 2 badnick
}
}
}
elseif ($3 = PRIVMSG) {
if ($4 ischan) {
var %nick = $right($gettok($2,1,33),-1),%text = $right($5-,-1),%chan = $4
if $read(muafkanal.db,w,%chan) || $read(muafnick.db,w,%nick) { return }
if $me isop %chan || o isin $usermode {
if $hfind(kufur,%text,1,W).data {
ban -k %chan %nick 2 kufur
}
if $hfind(reklam,%text,1,W).data {
ban -k %chan %nick 2 reklam
}
}
}
}
}
}


Yukarda kırmızı ile verdiğim yerleri ;

ban -k %chan %nick 5

olarak değiştirirsen sadece nicke ban atar.

BrainDamaged 07 Haziran 2012 20:15

Cevap: Debug && Hash Tables - Badnick,Reklam,Küfür Korumaları
 
Kodlar için teşekkürler arşive attım lazım olur ileride :))

Seth 30 Aralık 2012 18:40

Cevap: Debug && Hash Tables - Badnick,Reklam,Küfür Korumaları
 
Tşkler :)

Shiniori 30 Kasım 2013 15:25

Cevap: Debug && Hash Tables - Badnick,Reklam,Küfür Korumaları
 
Alıntı:

Doktrin Nickli Üyeden Alıntı (Mesaj 857033)
Başlıktan da anlaşılacağı gibi debug ve hash tablo kullanarak yazdığım badnick,reklam ve küfür korumaları.Korumaların çalışabilmesi için kanalda op olmalı veya usermode'larınızda "o" mode'unun olması gerekmektedir.Umarım debug kullanımına ve hash tablolarının kullanımına basit bir örnek olmuştur.

Kullanım şekli:
Kodların çalışması için öncelikle /debug -i on _prots komutunu uyguluyoruz.(debug verilerinin algılanabilmesi için)

/ekle <badnick|reklam|kufur> <eklenecek>
/sil <badnick|reklam|kufur> <silinecek>

Ekleme yaparken wilcard(*) kullanabilirsiniz.
Kayıt dosyaları : badnick.doktrin kufur.doktrin reklam.doktrin

Örn:
/ekle reklam *http*
/sil badnick camda_*

İşte kodlar :
Kod:

on *:start:{
  hmake badnick
  hmake kufur
  hmake reklam
  hload badnick badnick.doktrin
  hload kufur kufur.doktrin
  hload reklam reklam.doktrin
}
alias _prots {
  tokenize 32 $1-
  if ($1 = <-) {
    if ($3 = JOIN) {
      var %nick = $right($gettok($2,1,33),-1),%chan = $right($4,-1)
      if $me isop %chan || o isin $usermode {
        if $hfind(badnick,%nick,1,W).data {
          ban -k %chan %nick 2 badnick
        }
      }
    }
    elseif ($3 = PRIVMSG) {
      if ($4 ischan) {
        var %nick = $right($gettok($2,1,33),-1),%text = $right($5-,-1),%chan = $4
        if $me isop %chan || o isin $usermode {
          if $hfind(kufur,%text,1,W).data {
            ban -k %chan %nick 2 kufur
          }
          if $hfind(reklam,%text,1,W).data {
            ban -k %chan %nick 2 reklam
          }
        }
      }
    }
  }
}
alias ekle {
  if !$1 { echo $colour(info) $timestamp *** Hatalı işlem! Kullanım şekli: /ekle <badnick|kufur|reklam> <eklenecek>  | return }
  if $1 == badnick {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Eklenecek badnicki girmediniz. | return }
    else {
      hadd -m badnick $r(1000,999999) $2
      hsave badnick badnick.doktrin
      echo $colour(info) $timestamp $+(7,$2,) veritabanına başarıyla eklendi.
    }
  }
  elseif $1 == kufur {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Eklenecek küfürü girmediniz. | return }
    else {
      hadd -m kufur $r(1000,999999) $2-
      hsave kufur kufur.doktrin
      echo $colour(info) $timestamp $+(7,$2-,) veritabanına başarıyla eklendi.
    }
  }
  elseif $1 == reklam {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Eklenecek reklamı girmediniz. | return }
    else {
      hadd -m reklam $r(1000,999999) $2-
      hsave reklam reklam.doktrin
      echo $colour(info) $timestamp $+(7,$2-,) veritabanına başarıyla eklendi.
    }
  }
}
alias sil {
  if !$1 { echo $colour(info) $timestamp *** Hatalı işlem! Kullanım şekli: /sil <badnick|kufur|reklam> <silinecek>  | return }
  if $1 == badnick {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Silinecek badnicki girmediniz. | return }
    if $hfind(badnick,$2,1,W).data {
      hdel badnick $ifmatch
      hsave badnick badnick.doktrin
      echo $colour(info) $timestamp $+(7,$2,) veritabanından başarıyla silindi.
    }
    else { echo $colour(info) $timestamp $+(7,$2,) veritabanında bulunamadı | return }
  }
  elseif $1 == kufur {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Silinecek küfürü girmediniz. | return }
    if $hfind(kufur,$2,1,W).data {
      hdel kufur $ifmatch
      hsave kufur kufur.doktrin
      echo $colour(info) $timestamp $+(7,$2,) veritabanından başarıyla silindi.
    }
    else { echo $colour(info) $timestamp $+(7,$2,) veritabanında bulunamadı | return }
  }
  elseif $1 == reklam {
    if !$2 { echo $colour(info) $timestamp *** Hatalı işlem! Silinecek reklamı girmediniz. | return }
    if $hfind(reklam,$2,1,W).data {
      hdel reklam $ifmatch
      hsave reklam reklam.doktrin
      echo $colour(info) $timestamp $+(7,$2,) veritabanından başarıyla silindi.
    }
    else { echo $colour(info) $timestamp $+(7,$2,) veritabanında bulunamadı | return }
  }
}



dediklerini yaptım

/ekle badnick _camda yazdım EKLE Unknown command hatası alıyorum.


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

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