IRCForumu.Net - Türkiye'nin IRC ve mIRC Kullanıcılarının Buluştuğu Forum

IRCForumu.Net - Türkiye'nin IRC ve mIRC Kullanıcılarının Buluştuğu Forum (https://www.ircforumu.net/)
-   Hazır Kodlar (https://www.ircforumu.net/hazir-kodlar/)
-   -   İsteğe Göre Yazılan Kodlar (https://www.ircforumu.net/hazir-kodlar/828-istege-gore-yazilan-kodlar.html)

immortaL 04 Haziran 2016 15:49

İsteğe Göre Yazılan Kodlar
 
Bu kod herhangi bir kanala girdiğinizde eğer 2 saniye içerisinde özelinize yazan olursa, bulunmuş olduğunuz tüm kanallardan banlamak için yazılmıştır.


Kod:

on *:join:#:if ($nick = $me) inc -eu2 %k
on *:text:*:?: {
  if %k {
    var %1 = $1-,%2 = 1
    while $comchan($nick,%2) {
      ban -k $v1 $nick 2 Yasaklı kelime: %1
      inc %2
    }
  }
}


Bu kod belirtilen saniyede belirtilen sayıda aynı text kanala gönderilirse o text-i 10 dakikalığına spamfilter listesine eklemenize yarar.


Kod:

on *:text:*:#: {
  if $nick isreg # {
    hinc -mu3 fln $+(#,½,$nick,$encode($1-)) 1
    if ($hget(fln,$+(#,½,$nick,$encode($1-))) >= 5) {
      spamfilter add cpnNa gzline 10m - $1-
      hdel fln $+(#,½,$nick,$encode($1-))
    }
  }
}


3 olan yer saniye, 5 olan yer limittir. Değiştirebilirsiniz.




Bu kod sunucuya aynı nick üzerinden belirtilen sürede belirtilen sayıdan fazla giren kullanıcıların hepsini sunucudan uzaklaştırır.

Kod:

on *:snotice:*client connect*: {
  hadd -mu60 nick $9 1
  if $hget(nick,0).item >= 10 {
    var %s = 1,%ss = $hget(nick,0).item
    while %s <= %ss {
      gline $hget(nick,%s).item :sebeb.
      inc %s
    }
  }
}


60 saniye, 10 ise limittir. Değiştirebilirsiniz.



Bu kod 1 saniye içerisinde sunucudan 10 kişi veya fazlası çıkarsa, o nicklere ait IP-lerin hepsini sunucudan banlayacaktır.

Kod:

on *:snotice:*client exiting*: {
  hadd -mu1 ip $remove($gettok($7,2,64),$chr(41)) 1
  if $hget(ip,0).item >= 10 {
    var %k = 1,%kk = $hget(ip,0).item
    while %k <= %kk {
      zline $+(*@,$hget(ip,%k).item) :sebeb
      inc %k
    }
  }
}


1 kısmı saniye, 10 kısmı limittir. Değiştirebilirsiniz.



Bu kod belirtilen kanaldaki yetkisiz(op, su-op, voice, halfop vs.) tüm nicklerin özeline away kontrol mesajı atmanıza olanak sağlar. Kodu çalıştırmak için, kanal client penceresine /kontrolaway yazmanız yeterli olacaktır



Kod:

alias kontrolaway {
  if $left($active,1) = $chr(35) {
    var %s = 1
    while $nick($active,%s) {
      if $count($nick($active,%s).pnick,@,&,~,+,%,.) = 0 {
        .msg $nick($active,%s) Away Kontrol mesajıdır.
      }
      inc %s
    }
  }
}


Bu kod varolan tüm logları mIRC Custom(@log) penceresinde list şeklinde listelemenize, okumanıza ve silmenize yarayacaktır. Çok hızlı çalışmakla beraber basit bir arayüze sahip işlem yapmak isterseniz, gayet uygundur.


Kod kullanımı: /logoku
Belirtilen logu açmak için, listdeki log-lara çift tıklayın.
Sectiğiniz logu silmek için listedeki loga tıklayıp, DEL tuşuna basmanız yeterli olacaktır.


Kod:

menu @log {
  dclick:$iif($mouse.lb,logs $active $1,return)
}
on *:keydown:@log:46: {
  var %1 = $sline(@log,1),%2 = $sline(@log,1).ln
  if (%1) $iif($input(%1 log'unu silmek istediğiniz'den eminmisiniz?,y,Uyarı) = $true,sil %1 %2,halt)
}
alias logoku {
  $iif(!$window(@Log),window -aCl15 @Log)
  if $findfile($logdir,*,0) != 0 {
    $findfile($logdir,*,0,aline -l @Log $nopath($1-))
  }
}
alias logs {
  var %1 = 1,%2 = $lines($+($logdir,$sline(@log,1))),%3 = $sline(@log,1)
  loadbuf -rp @log $shortfn($logdir $+ %3)
}
alias sil .remove -b $shortfn($+($logdir,$1)) | window -c @log | logoku


Bu kod #help kanalında voice verdiğiniz bir kullanıcı eğer 60 saniye içerisinde herhangi bir veri yazmazsa kullanıcıyı kanaldan banlar.


Kod:


on *:voice:#help: {
  if ($nick == $me) $+(.timer,$vnick,_voice) 1 60 ban -k # $vnick 2 sebeb.
}
on *:text:*:#help: {
  if ($timer($nick $+ _voice)) $+(.timer,$v1) off
}

60 kısmı saniyedir. Değiştirebilirsiniz.



Bu kod sunucuya giren kullanıcının IP adresine bakarak clone/klon taraması yapar ve bu tarama sonuçlarını /echo komutu ile aktif ekrana yansıtır.

Kod:


on *:snotice:*: {
  if *client connect* iswm $1- {
    var %s = $remove($gettok($10,2,64),$chr(41)) | hadd -m ip $+($9,½,%s)
    if $hmatch(ip,$+(*,%s),0) >= 2 {
      var %q 1,%qq,%qqq = $gettok($hmatch(ip,$+(*,%s),1),2,189)
      while %q <= $hmatch(ip,$+(*,%s),0) {
      %qq = $addtok(%qq,$gettok($hmatch(ip,$+(*,%s),%q),1,189),44)
      inc %q
    }
    echo -at Bilgi: %qqq adresiden bağlantı kuranlar: %qq  }
  }
  if *client exiting* iswm $1- {
    if ($hmatch(ip,$+(*,$remove($gettok($7,2,64),$chr(41))))) hdel ip $v1
  }
}


Bu kod sunucuya giren kullanıcıya /who çeker ve eğer fullname kısmında dosya.txt dosyasındaki kelimelerden biri varsa, sunucudan uzaklaştırır. Yani kısacası fullname-de reklam veya yasaklı kelime arayan koddur.



Kod:

raw 352:*:kontrol2 $9- $6
on *:snotice:*client connect*:who $9
alias kontrol2 {
  var %1 = 1
  while $read(dosya.txt,%1) {
    if $regex($1,/ $+ $v1 $+ /i) {
      zline $2 :ban sebebi.
      return $true
    }
    inc %1
  }
  return $false
}



Bu kod belirtilen kanalda op/sop/halpfop vs. olan kullanıcıları belirlediğiniz diğer kanala otomatik /sajoin-lemeye yarayan koddur.


Kod:

on *:rawmode:#belirtilen-kanal: {
  if $left($1,1) = $chr(43) && $regex($right($1,-1),a|o|h) {
    sajoin $2 #belirtilen-kanal2
  }
}


Bu kod picture window ile yazılmış olup, script açılış sayacı işlemi görmektedir.


Kod:

on *:start:start
alias start {
  .timer 1 3 window -c @start | window -c @start | inc %x | window -pdhBCk0 +d @start 0 0 140 45
  drawrect -r @start $rgb(150,150,150) 100 0 0 140 45 | drawrect -r @start $rgb(0,0,0) 3 0 0 140 45
  drawtext -r @start $rgb(0,0,0) Tahoma 11 30 14 $iif(%x == 1,Script ilk defa açıldı.,Script %x kere açıldı.)
  drawtext -r @start $rgb(255,255,255) Tahoma 13 130 0 x | window -a @start
}
menu @start {
  sclick:if ($mouse.x >= 130) window -c @start
}


Bu kod belirtilen kanala giren kayıtlı kullanıcılara belirlediğiniz mesajı gönderir.


Kod:

on !*:join:#belirtilen-kanal:.enable #q | who $nick | set %_k #
#q off
raw *:*: {
  if ($numeric = 352) {
    if (r isin $7 && $6 ison %_k) .msg $6 %_k belirtilen mesaj.
  }
  if ($numeric = 315) { .disable #q | unset %_k }
}
#q end



Bu kod herhangi bir kanal penceresinde /tara komutunu uyguladığınızda, badnick.txt dosyasındaki verileri kanal rumuzlarının içinde tek tek arar. Arama işlemi sırasında yakalanan nickleri kanaldan uzaklaştırır ve işlem tamamlandığında kaç adet badnick-in atıldığını size yansıtır.



Kod:

alias -l bn {
  var %s = 1
  while ($read(badnick.txt,%s)) {
    if $+(*,$v1,*) iswm $2 {
      hinc -m bn nk 1
      ban -k $1 $2 2 sebeb.
      break
    }

    inc %s
  }
}
alias tara {
  $iif($hget(bn),hfree bn)
  echo -ae Badnick taraması başlatıldı.
  var %1 = 1
  while ($nick($active,%1)) {
    bn $active $v1
    inc %1
  }
  echo -ae $active Toplam $+($chr(40),$iif(!$hget(bn,nk),0,$hget(bn,nk)),$chr(41)) badnick atıldı.
}


Bu kod, belirtilen kanala text gönderen kullanıcının gönderdiği satır sayısı, belirtilen satır limiti miktarına ulaştığı zaman voice(+) vermek için kullanılır. Bir nevi ödüllendir gibi yani. Kodu geliştirebilirsiniz. Mantık gayet açıktır.


Kod:

on *:text:*:#belirtilen-kanal:{
  if (!$count($nick(#,$nick).pnick,@,&,%,~,+)) {
    hinc -m txt $+(#,½,$nick) 1
    if ($hget(txt,$+(#,½,$nick)) >= 100) {
      mode # +v $nick
      msg # $+($nick,:) muhabbet ortamı sağladın vs.
    }
  }
}

100 olarak belirtilen yer satır sayısıdır.




Bu kod notify listesindeki kişilerin haraketlerini takip etmenize yarar. Bu haraketleri @notify penceresinde gösterir.


Kod:

on ^*:notify: {
  $iif(!$window(@notify),window -aCk0 @notify)
  echo -t @notify => $nick giriş yaptı.
  haltdef
}
on ^*:unotify: {
  $iif(!$window(@notify),window -aCk0 @notify)
  echo -t @notify <= $nick çıkış yaptı.
  haltdef
}



Bu kod belirtilen kullanıcıya(kişinin penceresinde uygulanır) belirtilen dosyayı($2) göndermeye yarayacaktır.
Kodu kullanma şekli: !gönder dosya-adı.uzantısı



Kod:

alias yasaklılar {
  if ($dccignore) var %1 = 1
  while $dccignore(%1) {
    echo -a $+(%1,-) $v1
    inc %1
  }
}
on *:input:?: {
  if ($regex($1,/^!gönder$/i) && $2) {
    dcc passive off
    dcc trust $nick
    $iif($findfile(C:\,$2,0) >= 1,dcc send $active $shortfn($findfile(C:\,$2,1)))
  }
}


Not: Kodu uygulamadan önce, /yasaklılar yaparak yasaklı listesini kontrol ediniz.



Bu kod belirtilen dosyayı mIRC Custom penceresinde açmanıza/okumanıza yarar.
Kullanım şekli: /oku dosya-adı.uzantısı


Kod:

alias oku {
    if ($1) window -Cak0 $+(@,$1)
    loadbuf -rp $+(@,$1) $qt($1)
}



Bu kod mIRC üzerinden herhangi bir sunucuya bağlanmaya kalktığınızda, eğer dosya.txt-deki rumuzlardan birisi ile bağlanıyorsanız rumuzunu mIRCUser-randomsayı şeklinde değiştirmeye yarar. Genellikle başkalarının scriptlerine güvenlik önlemi için kullanılır.


Kod:

alias -l kntrl {
  var %s = 1
  while ($read(dosya.txt,%s)) {
    if ($regex($1,/ $+ $v1 $+ /i))) {
      nick $+(mIRCUser,-,$r(1,999))
      break
    }
    inc %s
  }
}
on *:connect:kntrl $me


Bu kod scriptini açtığınızda belirlediğiniz günlere göre fullname-inizi değiştirmenize olanak sağlar.



Kod:

alias -l days return $replacecs($day,Monday,Pazartesi,Tuesday,Salı,Wedn esday,Çarşamba,Thursday,Perşembe,Friday,Cuma,Satur day,Cumartesi,Sunday,Pazar)
on *:start: {
  if ($days = Pazartesi) set %stnm Pazartesi-ismi.
  if ($days = Salı) set %snm Salı-ismi.
  if ($days = Çarşamba) set %snm Çarşamba-ismi.
  if ($days = Perşembe) set %snm Perşembe-ismi.
  if ($days = Cuma) set %snm Cuma-ismi.
  if ($days = Cumartesi) set %snm Cumartesi-ismi.
  if ($days = Pazar) set %snm Pazar-ismi.
}


Bu kod herhangi bir kullanıcı nickinizi özelden veya kanaldan yazdığı zaman, mIRC simge veya tray konumunda ise, flash ile uyarı almanızı sağlar.



Kod:

on ^*:text:$($+(*,$me,*)):*: {
  if ($regex($appstate,^(minimized|tray)$)) {
    flash -r30 $+($nick,-,$iif(#,#,Özelden))
  }
}


Bu kod kanala başkaları tarafından gönderilen text-ler içerisinde dosya.txt dosyasında bulunan "gelen yazı | gidecek yazı" şeklindeki satılarda, "gelen yazı" kısmında arama yapar. Eşleşme bulduğunda, "gidecek yazı" kısmını kişiye cevap olarak atacaktır.



Kod:

on *:text:*:#: {
  if ($read(dosya.txt,s,$1)) {
    var %s = $gettok($replacecs($read(dosya.txt,$readn),$chr(124),$(|)),2,124)
    msg # %s
  }
}



Bu kod belirtilen sayıdan fazla kullanıcı bulunan kanallara girmeye yarar.
Kodu kullanma şekli: /gir

Kod:

alias gir .enable #k | list -min $1
#k off
raw *:*:{
  if ($numeric = 322) {
    if ($3 >= 50) join $2
  }
  if ($numeric = 323) {
    .disable #k
  }
}
#k end



Bu kod kanala giren nicklerin, daha önce hangi nick-lerden giriş yaptığını gösterir.


Kod:


on !*:join:#: {
  if ($hmatch(#,$+($site,*),0) >= 2) {
    kntrl # $site $nick
  }
  hadd -m # $+($site,½,$nick) 1
}
alias kntrl {
  var %1 1,%2
  while ($hmatch($1,$+($2,*),%1)) {
    var %& = $gettok($v1,2,189)
    if (%& != $3) {
      %2 = $addtok(%2,%&,32)
    }
    inc %1
  }
  $iif($gettok(%2,2,32),echo $colour(join) -t $1 *** Bilgi: $3 nick'i daha önce; %2 nicklerinden giriş yaptı.)
}



Bu kod sunucudan çıkan kullanıcıları ayrı pencerede(@network ve @network2) göstermeye yarar. Kodlardan birisi(on quit) IRCop flagları gerektirmez. Diğeri (on snotice) gerektirir.


Kod:

on *:quit: {
  $iif(!$window(@network),window -Cnak0 @network)
  echo $colour(quit) -t @network (<= Çıkış) Nick: $nick - tam adresi: $gettok($address($nick,5),2,33)
}
on *:snotice:*client exiting*: {
  $iif(!$window(@network2),window -Cnak0 @network2)
  echo $colour(info) -t @network2 (<= Çıkış) Nick: $6 - IP adresi: $remove($gettok($7,2,64),$chr(41))
}


Bu kod sunucuya giren kullanıcıları ayrı sayfada gösterir(@giris). Ve o ayrı sayfadaki nick üzerine tıkladığınızda o kişiyi sunucudan uzaklaştırır(/gline)


Kod:

on *:snotice:*client connect*: {
  $iif(!$window(@giris),window -Cnak0 @giris)
  echo $colour(info) -t @giris Giriş yaptı: $+($chr(40),$9,$chr(41))
}
on ^*:hotlink:(*):@giris:if ($left($1,1) == $chr(40)) return | else return
on *:hotlink:*:@giris:gline $remove($1,$chr(40),$chr(41)) :gline sebebi.


Bu kod sunucuya giren son kullanıcıyı belirtilen değişkene kayıt eder. Ve status penceresinde son giren kullanıcıya tıkladığınız zaman /gline ile sunucudan uzaklaştırılır.


Kod:

on *:snotice:*client connect*:set %& $9
on ^*:hotlink:%&:status window:return
on *:hotlink:*:*:gline $1 :gline-sebeb.


Bu kod kanala giren kullanıcıya /userip uygulayıp aynı kanalda gerçek IP-sini göstermeye yarar. Bunu yapabilmek için IRCop flaglarına sahip olmalısınız.


Kod:

on ^!*:join:#:haltdef | set %& # | .enable #j | userip $nick
#j off
raw 340:*: {
  haltdef
  var %n = $gettok($2,1,61)
  echo $colour(join) -t %& *** Giriş: %n $+($chr(40),$gettok($2,2,43),$chr(41))
  .disable #j
}
#j end


Bu kod statusde bulunan nickleri ayrı bir pencerede(@slist) listemek ve işlevler yapmak için kullanılır. Kodu kullanmak için /slist yapmanız yeterlidir.



Kod:

alias slist .enable #r | who
#r off
raw *:*: {
  haltdef
  if ($numeric = 352) {
    $iif(!$window(@slist),window -Cak0dl +L @slist 0 0 200 300)
    if ($chr(35) !isin $2) {
      inc %1
      aline 5 @slist $+(%1,-,$6))
    }
  }
  if ($numeric = 315) {
    if ($window(@slist)) {
      aline @slist $chr(160)
      aline @slist Toplam: $+($chr(2),%1,$chr(2)) adet kullanıcı.
    }
    unset %1
    .disable #r
  }
}
#r end



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

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.6.0
Copyright ©2005 - 2023 IRCForumu.Net - Tüm Hakları Saklıdır.