Çevrimiçi | Karısık İsteğe Göre Yazılmıs Kodlar
Bu kod #kanal kanalında voice verilen nicklerin host adreslerini kayıt eder ve #kanal@ kanalında !info komutunu uyguladığınızda bu liste kanala yansıtılır.
Not: Kod on text üzerine kuruludur. Dolayısıyla başkaları için !komut olarak uygulanabilir. Kendiniz için kullanacaksanız on input kullanabilirsiniz. Kod: Kodu kopyalamak için üzerine çift tıklayın!
on *:start:{
if ($exists(voice.hash)) hmake voice | hload -i voice voice.hash
}
on *:voice:#kanal:{
if ($nick != $me) {
var %q = $+($address($vnick,2),%,$time,&,$date)
hadd -m voice %q $nick
hsave -i voice voice.hash
}
}
on @*:text:!info *:#kanal@: {
if ($hfind(voice,$2,0).data >= 2) {
var %2 = $v1,%1 = 1
msg # $2 rumuzunun voice girdileri:
while (%1 <= %2) {
var %d = $hfind(voice,$2,%1).data
msg # $+(%1,-) Host: $gettok(%d,1,37) - Saat/tarih: $regsubex($gettok(%d,2,37),&,$chr(32))
inc %1
}
else msg # $qt($nick) $2 rumuzu için kayıt bulunamadı.
}
}
Bu kod kanal ve özele gönderdiğiniz text/yazı(ların) «YAZI» şeklinde çıkmasını sağlar. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:input:*:{
if ($regex($window($active).type,^(query|channel)$) && (!$regex($left($1,1),\/))) {
say $+(«,$chr(160),$1-,$chr(160),»)
haltdef
}
}
Bu kod kanala giriş yapan kullanıcının varsa daha önceki nicklerini giriş bilgisinde gösterir.
Not: Tüm veriler HD-ye kaydolur ve açılışta yükletilir. Kod: Kodu kopyalamak için üzerine çift tıklayın! on !^*:join:#: {
hadd -m # $nick $site
hsave -i # # $+ .chans
if ($hfind(#,$site,0).data >= 2) {
var %s = 1,%q
while (%s <= $hfind(#,$site,0).data) {
%q = $addtok(%q,$hfind(#,$site,%s).data,32)
inc %s
}
echo $color(join) # * Giriş: $nick $+($chr(40),$remove($address($nick,0),*,!),$chr(41)) $&
- Önceki nickleri: $+($chr(40),$remove(%q,$nick),$chr(41))
return
}
}
on *:start:noop $findfile($mircdir,*.chans,0,.timer 1 0 hmake $token($nopath($1-),1,46) $(|,) hload -i $token($nopath($1-),1,46) $nopath($1-))
Bu kod özelinizi açmaya/kapatmaya ve karşı kullanıcıya geri-bildirim yapmanıza olanak sağlar. Kod: Kodu kopyalamak için üzerine çift tıklayın! on ^*:open:?:*:{
if (%closed) {
inc $+(%,rumuz,$nick) 1
if ($($+(%,rumuz,$nick),2) = 1) {
msg $nick Özelim kapalıdır. Yazdıklarınız bana ulaşmamakta.
}
return
}
}
menu channel,status,query {
Özel aç/kapa
.Özeli kapat:set %closed 1 | echo -ea -: Özeliniz konuşmaya kapatıldı.
.Özeli aç:unset %closed %*rumuz* | echo -ea -: Özeliniz konuşmaya açıldı.
}
Bu kod kanaldaki herkeze seslenmek için kullanılır. Kodu kullanmak için herhangi bir kanal penceresinde; /users <mesaj> yapabilirsiniz. Kod: Kodu kopyalamak için üzerine çift tıklayın! alias users {
if ($active ischan) {
var %s = 1,%n
while ($nick($active,%s)) {
%n = $addtok(%n,$v1,32)
inc %s
}
say $remove(%n,$me) $1-
}
}
Bu kod yine üstek üzerine yazmış olduğum gelişmiş bir badnick tarama kodudur.
Kod neler yapar?
- Herhangi bir kanala girdiğiniz-de "bad" tablosuna eklemiş olduğunuz ve badnick niteliği taşıyan kelimeleri kanaldaki tüm kullanıcılarda arar.
- Bulunan sonuçları size /echo mesajı ile gösterir.
- Tarama sonunda f9 tuşuna basarsanız son taramaya yakalanan tüm nickleri kanaldan uzaklaştırır.
- /badd <kelime> şeklinde badnick listesine kelime ekleyebilirsiniz.
- /bdel <kelime> şeklinde badnick listesinden belirtilen kelimeyi silebilirsiniz.
- /blist komutunu kullanarak listeyi görebilirsiniz.
- CTRL + f9 kombinasyonunu kullanarak tespit edilen badnickleri görebilirsiniz. Kod: Kodu kopyalamak için üzerine çift tıklayın!
chk {
var %1 = 1
while (%1 <= $hget(bad,0).item) {
if ($ialchan($+(*,$hget(bad,%1).item,*),$1,0) == 1 && >= 0) {
hadd -m $1 $ialchan($+(*,$hget(bad,%1).item,*),$1,1).nick 1
}
else {
chk2 $1 $+(*,$hget(bad,%1).item,*)
}
inc %1
}
echo $colour(info) $1 $timestamp $iif($hget($1,0).item >= 1,Bulunan badnick sayısı: $hget($1,0).item,Badnick bulunamadı.)
echo $colour(info) $1 $timestamp Nickleri görüntülemek için: CTRL + F9 tuşuna basınız.
echo $colour(info) $1 $timestamp $iif($regex($nick($1,$me).pnick,@|&|%|~),$iif($regex($usermode,a|A|N|C),Nickleri kanal'dan atmak için: F9 tuşuna basınız.),Kanaldan atma yetkiniz yok.))
}
chk2 {
if ($1 && $2) {
var %& = 1
while (%& <= $ialchan($2,$1,0)) {
hadd -m $1 $ialchan($2,$1,%&).nick
inc %&
}
}
}
cF9 {
if ($hget($active)) seen $active
}
seen {
var %t = 1,%tt
while (%t <= $hget($1,0).item) {
%tt = $addtok(%tt,$hget($1,%t).item,32)
inc %t
}
echo $colour(info) $1 $timestamp Tespit edilen badnickler: %tt
}
F9 {
if ($hget($active)) bans $active
else diğer komut
}
bans {
var %- = 1
while (%- <= $hget($1,0).item) {
ban -k $1 $hget($1,%-).item 2 SEBEB.
inc %-
}
%// = %- - 1
echo $colour(info) $1 $timestamp Atılan nick sayısı: %//
hfree $1
}
badd {
$iif(!$1,echo -at Kelime girmediniz.,$iif($hget(bad,$1),echo -at $1 kelimesi listede.,hadd -m bad $1 1))
hsave -i bad bad.hsh
}
bdel {
$iif(!$1,echo -at Kelime girmediniz.,$iif(!$hget(bad,$1),echo -at $1 kelimesi listede değil.,hdel bad $1))
hsave -i bad bad.hsh
}
blist {
window -Caldk0 +L @Bad-words 0 0 200 400
var %- = 1
while (%- <= $hget(bad,0).item) {
aline @bad-words $+(%-,-) $hget(bad,%-).item
inc %-
}
}
on me:*:join:#:.ial on | who # | .timer 1 2 chk #
on *:start: {
if ($isfile(bad.hsh)) {
hmake bad 50
hload -i bad bad.hsh
}
}
Bu kod belirtilen #kanal -da atılan kick-leri detaylı bir şekilde kick.txt dosyasına kaydeder ve yine belirtilen kanalda !kick komutunu uygulayan nick-e ait bir kick-list kaydı varsa bu listeyi sıralar.
Kullanım şekli: !kick Kod: Kodu kopyalamak için üzerine çift tıklayın! on !*:kick:#kanal: {
hinc -m kick $nick 1
hsave -i kick kick.hsh
write kick.txt Saat: $time - Kick atan: $nick - Kicklenen: $knick - Sebeb: $1-
}
on *:text:*:#kanal: {
if ($regex($1,/^!kick$/i) && $nick isreg #) {
if ($hget(kick,$nick)) msg # Attığınız kick sayısı: $v1
else msg # Kick uygulamamışsınız.
}
if ($regex($1,^!list$)) {
var %1 = 1
while (%1 <= $lines(kick.txt)) {
msg # $read(kick.txt,%1)
inc %1
}
}
}
on *:start:{
if ($isfile(kick.hsh)) {
hmake kick 50
hload -i kick kick.hsh
}
}
Bu kod belirtilen kanaldaki tüm kullanıcılara belirlediğini text-i göndermenizi sağlar.
Kullanım şekli: /msgall #kanal <mesaj> Kod: Kodu kopyalamak için üzerine çift tıklayın! alias msgall {
if ($1 ischan) {
var %1 = 1
while (%1 <= $nick($1,0)) {
msg $1 $2-
inc %1
}
}
}
Bu kod belirlediğiniz nick-i ortak tüm kanallardan akick-e almanızı sağlar.
Kullanım şekli: /allkick <nick> <akick sebebi> Kod: Kodu kopyalamak için üzerine çift tıklayın! alias allkick {
if ($1) {
var %1 = 1
while (%1 <= $comchan($1,0)) {
if ($regex($nick($comchan($1,%1),$me).pnick,@|&|~|%) || $regex($usermode,A|a|N|C)) {
cs akick $comchan($1,%1) add $address($1,2) $2-
cs akick $comchan($1,%1) enforce
}
inc %1
}
var %2 %1 - 1
echo -at %2 kanalda akick uyguladınız.
}
}
Bu kod belirtilen kanal veya kanaldaki herhangi bir nick'e kural.txt dosyası içerisindeki kuralları göndermenize yarar.
Kullanım şekilleri:
- /kural #kanal (kanaldaki tüm @(op) - &(sop) - %(halfop) kullanıcılarına göndermek için)
- /kural nick (herhangi bir kullanıcıya göndermek için) Kod: Kodu kopyalamak için üzerine çift tıklayın! alias kural {
if ($1 ischan || $1 ison active) {
var %1 = 1
while (%1 <= $nick($1,0)) {
if ($regex($nick($1,$nick($1,%1)).pnick,@|&|%)) {
okut $nick($1,%1)
}
inc %1
}
}
}
alias okut {
var %2 = 1
while ($read(kural.txt,%2)) {
msg $1 $v1
inc %2
}
}
Bu kod herhangi bir IDENT'in sunucu üzerinde en fazla belirlediğiniz limit kadar kullanılmasına izin verir. Belirlediğiniz limit aşılırsa, giren kişilere kill atılır. Kod giriş çıkışları otomatik kontrol eder ve sayımı girdi(inc)/çıktı(dec) şeklinde tutar. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:snotice:*: {
if (*client conn* iswm $1-) {
var %i = $gettok($remove($10,$chr(40)),1,64)
if ($hget(ident,%i) >= 6) kill $9 KILL SEBEBİ.
else hinc -m ident %i 1
}
if (*client exiting* iswm $1-) {
var %ii = $gettok($remove($7,$chr(40)),1,64)
$iif($hget(ident,%ii) >= 1,hdec ident %ii 1)
}
} 6 olarak belirtilen yer limittir. Değiştirebilirsiniz.
Bu kod /stats k -den gelen verilere bakarak #kanal kanalında !ip <ip-adresi> komutu kullandığınızda belirttiğiniz IP adresini listede arar ve bulunan IP'nin atılma sebebini belirtilen kanala yansıtır. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:text:!ip* &:#kanal:{
.enable #g
set %ip $2
stats k
}
#g off
raw *:*:{
if ($regex($numeric,^216$)) {
if ($3 == %ip) {
set %ss $4-
}
}
if ($regex($numeric,^219$)) {
if (%ss) {
msg #kanal %ip ipinin atılma sebebi: %ss
}
else {
msg #kanal %ip ip'i banlı değil.
}
unset %ss %ip
.disable #g
}
}
#g end
Bu kod kişiye whois çektiğinizde kişinin "bağlantı süresini, konuşmadığı süreyi, bağlantı zamanını" türkçe ve düzenli olarak gösterilmesine yarar. Kod: Kodu kopyalamak için üzerine çift tıklayın! alias -l days return $replacecs($1,Monday,Pazartesi,Tuesday,Salı,Wednesday,Çarşamba,Thursday,Perşembe,Friday,Cuma,Saturday,Cumartesi,Sunday,Pazar)
alias -l idl return $replace($1-,Secs,$+($chr(32),Saniye),Sec,$+($chr(32),Saniye),Mins,$+($chr(32),Dakika),Min,$+($chr(32),Dakika),Hrs,$+($chr(32),Saat),Hr,$+($chr(32),Saat),Days,$+($chr(32),Gün),Day,$+($chr(32),Gün),Wks,$+($chr(32),Hafta),Wk,$+($chr(32),Hafta))
alias -l cnnt return $idl($duration($calc($ctime - $1)))
raw 317:*: {
echo -a * Bağlanış: $days($asctime($4,$+($chr(40),dddd,$chr(41) dd/mm/yyyy,) - HH:nn:ss))
echo -a * Konuşmadığı süre: $idl($duration($3))
echo -a * Bağlı olduğu: $cnnt($4) | haltdef
}
Bu kod 30 dakikada bir kendinize idle kontrolu yaparak, eğer idle süresi belirtilen süreyi(saniye cinsinden) geçmişse /away konumuna otomatik geçmenize yarar. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:connect:.timer 0 1800 idlekntrl 1800
alias idlekntrl {
if ($idle >= $1 && !$away) {
away AWAY-MESAJIN.
}
}
Bu kod herhangi bir kanalda !prefix yaptığınızda, size +qaohve modlarını verir. Eğer !deprefix yaparsanız, bu modları geri alırsınız. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:input:#:{
if ($regex($1,^(!prefix|!deprefix)$)) {
mode # $iif($left($1,3) = !de,-,+) $+ qaohve $str($+($me,$chr(32)),6)
}
}
Bu kod !bilgi nick olarak kullanıldığı zaman, kişinin auth-code bilgisini belirlediğiniz #kanal -a yansıtır. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:text:!bilgi * &:#:.enable #n | ns auth $2
#n off
on *:notice:*:?:{
if ($nick == nickserv) {
msg #kanal $1-
.disable #n
}
}
#n end
Bu kod özelde konuştuğunuz kişinin nick-ini arkaplan/background olarak kaydetmenizi sağlar. HD şişmesine sebeb olmaz, özel penceresi kapanınca resim otomatik silinir. Kod: Kodu kopyalamak için üzerine çift tıklayın! alias npaint {
if ($1 && $2) {
var %win = $+(@,$1)
window -pah %win 0 0 200 100
drawtext -ro %win $rgb(112,121,11) Tahoma 19 60 20 $2
drawsave -b32 %win $+($1,.,bmp)
window -c %win
}
}
on *:open:?:*:{
if ($isfile($+($nick,.,bmp))) background -p $nick $+($nick,.,bmp)
}
on *:close:?:{
if ($isfile($+($target,.,bmp))) {
.remove -b $+($target,.bmp)
.remini mIRC.ini background $target
}
}
Bu kod #sop(değişebilirsiniz) kanalına girdiğinizde, kanaldaki kullanıcıların idle sürelerine bakarak;
- 10 dakikayı geçen kullanıcılara UYARI
- 20 dakikayı geçen kullanıcılara UYARI + KILL
İşlemlerini uygular.
Bu tarama işlemi kanala girdiğiniz andan itibaren 600 saniye(10 dakikada) bir gerçekleşir. Kod: Kodu kopyalamak için üzerine çift tıklayın! on me:*:join:#SOP:idlechk # | .timer 0 600 idlechk #
alias idlechk {
warning
.enable #q
if ($1) {
var %1 = 1
while (%1 <= $nick($1,0,@)) {
if ($regex($removecs($nick($1,%1,@).pnick,$nick($1,%1,@)),^@$)) {
hinc -m ttl total 1
whois $nick($1,%1,@)
}
inc %1
}
}
}
alias warning {
set %w1 idle süreniz 10 dakikayı geçmiştir. Cevap ver vs.
set %w2 idle süresi 20 dakikayı geçtiği için uzaklaştırıldı.
set %w3 idle süreniz 20 dakikayı geçtiği için uzaklaştırıldınız.
}
#q off
raw *:*: {
haltdef
if ($regex($numeric,^317$)) {
if ($3 >= 600 && $3 < 1200) {
msg #sop $qt($2) %w1
}
if ($3 >= 1200) {
kill $2 %w3
msg #sop $qt($2) %w2
}
}
if ($regex($numeric,^318$)) {
inc %&
if (%& = $hget(ttl,total)) {
unset %&
hfree ttl
.disable #q
}
}
}
#q end
Bu kod sunucuya giren kullanıcıya, giriş yapan kaçıncı kullanıcı olduğunu belirtir ve sozler.txt dosyasından random bir veri gönderir. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:snotice:*client conn*: {
inc %1
msg $9 Sunucuya hoşgeldin vs. Giren $+(%1,.) kişisin.
msg $9 $read(sozler.txt)
}
Bu kod #kanal kanalında voice verilen nicklerin host adreslerini kayıt eder ve #kanal@ kanalında !info komutunu uyguladığınızda bu liste kanala yansıtılır.
Not: Kod on text üzerine kuruludur. Dolayısıyla başkaları için !komut olarak uygulanabilir. Kendiniz için kullanacaksanız on input kullanabilirsiniz. Kod: Kodu kopyalamak için üzerine çift tıklayın!
on *:start:{
if ($exists(voice.hash)) hmake voice | hload -i voice voice.hash
}
on *:voice:#kanal:{
if ($nick != $me) {
var %q = $+($address($vnick,2),%,$time,&,$date)
hadd -m voice %q $nick
hsave -i voice voice.hash
}
}
on @*:text:!info *:#kanal@: {
if ($hfind(voice,$2,0).data >= 2) {
var %2 = $v1,%1 = 1
msg # $2 rumuzunun voice girdileri:
while (%1 <= %2) {
var %d = $hfind(voice,$2,%1).data
msg # $+(%1,-) Host: $gettok(%d,1,37) - Saat/tarih: $regsubex($gettok(%d,2,37),&,$chr(32))
inc %1
}
else msg # $qt($nick) $2 rumuzu için kayıt bulunamadı.
}
}
Bu kod kanal ve özele gönderdiğiniz text/yazı(ların) «YAZI» şeklinde çıkmasını sağlar. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:input:*:{
if ($regex($window($active).type,^(query|channel)$) && (!$regex($left($1,1),\/))) {
say $+(«,$chr(160),$1-,$chr(160),»)
haltdef
}
}
Bu kod kanala giriş yapan kullanıcının varsa daha önceki nicklerini giriş bilgisinde gösterir.
Not: Tüm veriler HD-ye kaydolur ve açılışta yükletilir. Kod: Kodu kopyalamak için üzerine çift tıklayın! on !^*:join:#: {
hadd -m # $nick $site
hsave -i # # $+ .chans
if ($hfind(#,$site,0).data >= 2) {
var %s = 1,%q
while (%s <= $hfind(#,$site,0).data) {
%q = $addtok(%q,$hfind(#,$site,%s).data,32)
inc %s
}
echo $color(join) # * Giriş: $nick $+($chr(40),$remove($address($nick,0),*,!),$chr(41)) $&
- Önceki nickleri: $+($chr(40),$remove(%q,$nick),$chr(41))
return
}
}
on *:start:noop $findfile($mircdir,*.chans,0,.timer 1 0 hmake $token($nopath($1-),1,46) $(|,) hload -i $token($nopath($1-),1,46) $nopath($1-))
Bu kod özelinizi açmaya/kapatmaya ve karşı kullanıcıya geri-bildirim yapmanıza olanak sağlar. Kod: Kodu kopyalamak için üzerine çift tıklayın! on ^*:open:?:*:{
if (%closed) {
inc $+(%,rumuz,$nick) 1
if ($($+(%,rumuz,$nick),2) = 1) {
msg $nick Özelim kapalıdır. Yazdıklarınız bana ulaşmamakta.
}
return
}
}
menu channel,status,query {
Özel aç/kapa
.Özeli kapat:set %closed 1 | echo -ea -: Özeliniz konuşmaya kapatıldı.
.Özeli aç:unset %closed %*rumuz* | echo -ea -: Özeliniz konuşmaya açıldı.
}
Bu kod kanaldaki herkeze seslenmek için kullanılır. Kodu kullanmak için herhangi bir kanal penceresinde; /users <mesaj> yapabilirsiniz. Kod: Kodu kopyalamak için üzerine çift tıklayın! alias users {
if ($active ischan) {
var %s = 1,%n
while ($nick($active,%s)) {
%n = $addtok(%n,$v1,32)
inc %s
}
say $remove(%n,$me) $1-
}
}
Bu kod yine üstek üzerine yazmış olduğum gelişmiş bir badnick tarama kodudur.
Kod neler yapar?
- Herhangi bir kanala girdiğiniz-de "bad" tablosuna eklemiş olduğunuz ve badnick niteliği taşıyan kelimeleri kanaldaki tüm kullanıcılarda arar.
- Bulunan sonuçları size /echo mesajı ile gösterir.
- Tarama sonunda f9 tuşuna basarsanız son taramaya yakalanan tüm nickleri kanaldan uzaklaştırır.
- /badd <kelime> şeklinde badnick listesine kelime ekleyebilirsiniz.
- /bdel <kelime> şeklinde badnick listesinden belirtilen kelimeyi silebilirsiniz.
- /blist komutunu kullanarak listeyi görebilirsiniz.
- CTRL + f9 kombinasyonunu kullanarak tespit edilen badnickleri görebilirsiniz. Kod: Kodu kopyalamak için üzerine çift tıklayın!
chk {
var %1 = 1
while (%1 <= $hget(bad,0).item) {
if ($ialchan($+(*,$hget(bad,%1).item,*),$1,0) == 1 && >= 0) {
hadd -m $1 $ialchan($+(*,$hget(bad,%1).item,*),$1,1).nick 1
}
else {
chk2 $1 $+(*,$hget(bad,%1).item,*)
}
inc %1
}
echo $colour(info) $1 $timestamp $iif($hget($1,0).item >= 1,Bulunan badnick sayısı: $hget($1,0).item,Badnick bulunamadı.)
echo $colour(info) $1 $timestamp Nickleri görüntülemek için: CTRL + F9 tuşuna basınız.
echo $colour(info) $1 $timestamp $iif($regex($nick($1,$me).pnick,@|&|%|~),$iif($regex($usermode,a|A|N|C),Nickleri kanal'dan atmak için: F9 tuşuna basınız.),Kanaldan atma yetkiniz yok.))
}
chk2 {
if ($1 && $2) {
var %& = 1
while (%& <= $ialchan($2,$1,0)) {
hadd -m $1 $ialchan($2,$1,%&).nick
inc %&
}
}
}
cF9 {
if ($hget($active)) seen $active
}
seen {
var %t = 1,%tt
while (%t <= $hget($1,0).item) {
%tt = $addtok(%tt,$hget($1,%t).item,32)
inc %t
}
echo $colour(info) $1 $timestamp Tespit edilen badnickler: %tt
}
F9 {
if ($hget($active)) bans $active
else diğer komut
}
bans {
var %- = 1
while (%- <= $hget($1,0).item) {
ban -k $1 $hget($1,%-).item 2 SEBEB.
inc %-
}
%// = %- - 1
echo $colour(info) $1 $timestamp Atılan nick sayısı: %//
hfree $1
}
badd {
$iif(!$1,echo -at Kelime girmediniz.,$iif($hget(bad,$1),echo -at $1 kelimesi listede.,hadd -m bad $1 1))
hsave -i bad bad.hsh
}
bdel {
$iif(!$1,echo -at Kelime girmediniz.,$iif(!$hget(bad,$1),echo -at $1 kelimesi listede değil.,hdel bad $1))
hsave -i bad bad.hsh
}
blist {
window -Caldk0 +L @Bad-words 0 0 200 400
var %- = 1
while (%- <= $hget(bad,0).item) {
aline @bad-words $+(%-,-) $hget(bad,%-).item
inc %-
}
}
on me:*:join:#:.ial on | who # | .timer 1 2 chk #
on *:start: {
if ($isfile(bad.hsh)) {
hmake bad 50
hload -i bad bad.hsh
}
}
Bu kod belirtilen #kanal -da atılan kick-leri detaylı bir şekilde kick.txt dosyasına kaydeder ve yine belirtilen kanalda !kick komutunu uygulayan nick-e ait bir kick-list kaydı varsa bu listeyi sıralar.
Kullanım şekli: !kick Kod: Kodu kopyalamak için üzerine çift tıklayın! on !*:kick:#kanal: {
hinc -m kick $nick 1
hsave -i kick kick.hsh
write kick.txt Saat: $time - Kick atan: $nick - Kicklenen: $knick - Sebeb: $1-
}
on *:text:*:#kanal: {
if ($regex($1,/^!kick$/i) && $nick isreg #) {
if ($hget(kick,$nick)) msg # Attığınız kick sayısı: $v1
else msg # Kick uygulamamışsınız.
}
if ($regex($1,^!list$)) {
var %1 = 1
while (%1 <= $lines(kick.txt)) {
msg # $read(kick.txt,%1)
inc %1
}
}
}
on *:start:{
if ($isfile(kick.hsh)) {
hmake kick 50
hload -i kick kick.hsh
}
}
Bu kod belirtilen kanaldaki tüm kullanıcılara belirlediğini text-i göndermenizi sağlar.
Kullanım şekli: /msgall #kanal <mesaj> Kod: Kodu kopyalamak için üzerine çift tıklayın! alias msgall {
if ($1 ischan) {
var %1 = 1
while (%1 <= $nick($1,0)) {
msg $1 $2-
inc %1
}
}
}
Bu kod belirlediğiniz nick-i ortak tüm kanallardan akick-e almanızı sağlar.
Kullanım şekli: /allkick <nick> <akick sebebi> Kod: Kodu kopyalamak için üzerine çift tıklayın! alias allkick {
if ($1) {
var %1 = 1
while (%1 <= $comchan($1,0)) {
if ($regex($nick($comchan($1,%1),$me).pnick,@|&|~|%) || $regex($usermode,A|a|N|C)) {
cs akick $comchan($1,%1) add $address($1,2) $2-
cs akick $comchan($1,%1) enforce
}
inc %1
}
var %2 %1 - 1
echo -at %2 kanalda akick uyguladınız.
}
}
Bu kod belirtilen kanal veya kanaldaki herhangi bir nick'e kural.txt dosyası içerisindeki kuralları göndermenize yarar.
Kullanım şekilleri:
- /kural #kanal (kanaldaki tüm @(op) - &(sop) - %(halfop) kullanıcılarına göndermek için)
- /kural nick (herhangi bir kullanıcıya göndermek için) Kod: Kodu kopyalamak için üzerine çift tıklayın! alias kural {
if ($1 ischan || $1 ison active) {
var %1 = 1
while (%1 <= $nick($1,0)) {
if ($regex($nick($1,$nick($1,%1)).pnick,@|&|%)) {
okut $nick($1,%1)
}
inc %1
}
}
}
alias okut {
var %2 = 1
while ($read(kural.txt,%2)) {
msg $1 $v1
inc %2
}
}
Bu kod herhangi bir IDENT'in sunucu üzerinde en fazla belirlediğiniz limit kadar kullanılmasına izin verir. Belirlediğiniz limit aşılırsa, giren kişilere kill atılır. Kod giriş çıkışları otomatik kontrol eder ve sayımı girdi(inc)/çıktı(dec) şeklinde tutar. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:snotice:*: {
if (*client conn* iswm $1-) {
var %i = $gettok($remove($10,$chr(40)),1,64)
if ($hget(ident,%i) >= 6) kill $9 KILL SEBEBİ.
else hinc -m ident %i 1
}
if (*client exiting* iswm $1-) {
var %ii = $gettok($remove($7,$chr(40)),1,64)
$iif($hget(ident,%ii) >= 1,hdec ident %ii 1)
}
} 6 olarak belirtilen yer limittir. Değiştirebilirsiniz.
Bu kod /stats k -den gelen verilere bakarak #kanal kanalında !ip <ip-adresi> komutu kullandığınızda belirttiğiniz IP adresini listede arar ve bulunan IP'nin atılma sebebini belirtilen kanala yansıtır. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:text:!ip* &:#kanal:{
.enable #g
set %ip $2
stats k
}
#g off
raw *:*:{
if ($regex($numeric,^216$)) {
if ($3 == %ip) {
set %ss $4-
}
}
if ($regex($numeric,^219$)) {
if (%ss) {
msg #kanal %ip ipinin atılma sebebi: %ss
}
else {
msg #kanal %ip ip'i banlı değil.
}
unset %ss %ip
.disable #g
}
}
#g end
Bu kod kişiye whois çektiğinizde kişinin "bağlantı süresini, konuşmadığı süreyi, bağlantı zamanını" türkçe ve düzenli olarak gösterilmesine yarar. Kod: Kodu kopyalamak için üzerine çift tıklayın! alias -l days return $replacecs($1,Monday,Pazartesi,Tuesday,Salı,Wednesday,Çarşamba,Thursday,Perşembe,Friday,Cuma,Saturday,Cumartesi,Sunday,Pazar)
alias -l idl return $replace($1-,Secs,$+($chr(32),Saniye),Sec,$+($chr(32),Saniye),Mins,$+($chr(32),Dakika),Min,$+($chr(32),Dakika),Hrs,$+($chr(32),Saat),Hr,$+($chr(32),Saat),Days,$+($chr(32),Gün),Day,$+($chr(32),Gün),Wks,$+($chr(32),Hafta),Wk,$+($chr(32),Hafta))
alias -l cnnt return $idl($duration($calc($ctime - $1)))
raw 317:*: {
echo -a * Bağlanış: $days($asctime($4,$+($chr(40),dddd,$chr(41) dd/mm/yyyy,) - HH:nn:ss))
echo -a * Konuşmadığı süre: $idl($duration($3))
echo -a * Bağlı olduğu: $cnnt($4) | haltdef
}
Bu kod 30 dakikada bir kendinize idle kontrolu yaparak, eğer idle süresi belirtilen süreyi(saniye cinsinden) geçmişse /away konumuna otomatik geçmenize yarar. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:connect:.timer 0 1800 idlekntrl 1800
alias idlekntrl {
if ($idle >= $1 && !$away) {
away AWAY-MESAJIN.
}
}
Bu kod herhangi bir kanalda !prefix yaptığınızda, size +qaohve modlarını verir. Eğer !deprefix yaparsanız, bu modları geri alırsınız. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:input:#:{
if ($regex($1,^(!prefix|!deprefix)$)) {
mode # $iif($left($1,3) = !de,-,+) $+ qaohve $str($+($me,$chr(32)),6)
}
}
Bu kod !bilgi nick olarak kullanıldığı zaman, kişinin auth-code bilgisini belirlediğiniz #kanal -a yansıtır. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:text:!bilgi * &:#:.enable #n | ns auth $2
#n off
on *:notice:*:?:{
if ($nick == nickserv) {
msg #kanal $1-
.disable #n
}
}
#n end
Bu kod özelde konuştuğunuz kişinin nick-ini arkaplan/background olarak kaydetmenizi sağlar. HD şişmesine sebeb olmaz, özel penceresi kapanınca resim otomatik silinir. Kod: Kodu kopyalamak için üzerine çift tıklayın! alias npaint {
if ($1 && $2) {
var %win = $+(@,$1)
window -pah %win 0 0 200 100
drawtext -ro %win $rgb(112,121,11) Tahoma 19 60 20 $2
drawsave -b32 %win $+($1,.,bmp)
window -c %win
}
}
on *:open:?:*:{
if ($isfile($+($nick,.,bmp))) background -p $nick $+($nick,.,bmp)
}
on *:close:?:{
if ($isfile($+($target,.,bmp))) {
.remove -b $+($target,.bmp)
.remini mIRC.ini background $target
}
}
Bu kod #sop(değişebilirsiniz) kanalına girdiğinizde, kanaldaki kullanıcıların idle sürelerine bakarak;
- 10 dakikayı geçen kullanıcılara UYARI
- 20 dakikayı geçen kullanıcılara UYARI + KILL
İşlemlerini uygular.
Bu tarama işlemi kanala girdiğiniz andan itibaren 600 saniye(10 dakikada) bir gerçekleşir. Kod: Kodu kopyalamak için üzerine çift tıklayın! on me:*:join:#SOP:idlechk # | .timer 0 600 idlechk #
alias idlechk {
warning
.enable #q
if ($1) {
var %1 = 1
while (%1 <= $nick($1,0,@)) {
if ($regex($removecs($nick($1,%1,@).pnick,$nick($1,%1,@)),^@$)) {
hinc -m ttl total 1
whois $nick($1,%1,@)
}
inc %1
}
}
}
alias warning {
set %w1 idle süreniz 10 dakikayı geçmiştir. Cevap ver vs.
set %w2 idle süresi 20 dakikayı geçtiği için uzaklaştırıldı.
set %w3 idle süreniz 20 dakikayı geçtiği için uzaklaştırıldınız.
}
#q off
raw *:*: {
haltdef
if ($regex($numeric,^317$)) {
if ($3 >= 600 && $3 < 1200) {
msg #sop $qt($2) %w1
}
if ($3 >= 1200) {
kill $2 %w3
msg #sop $qt($2) %w2
}
}
if ($regex($numeric,^318$)) {
inc %&
if (%& = $hget(ttl,total)) {
unset %&
hfree ttl
.disable #q
}
}
}
#q end
Bu kod sunucuya giren kullanıcıya, giriş yapan kaçıncı kullanıcı olduğunu belirtir ve sozler.txt dosyasından random bir veri gönderir. Kod: Kodu kopyalamak için üzerine çift tıklayın! on *:snotice:*client conn*: {
inc %1
msg $9 Sunucuya hoşgeldin vs. Giren $+(%1,.) kişisin.
msg $9 $read(sozler.txt)
} |