.

“mIRC Script Özel Kodlar” Kategorisi için Arþiv

Toplu Sajoin Kodu
alias mjoin {
if (!$1) || (!$2) {
}
else {
echo 12 * Userler Tasınıyor.. $1 – $2
set %i 1
set %nick $nick($1,%i)
While %nick != $null {
%nick = $nick($1,%i)
sajoin %nick $2
echo 12 * %i %nick Tasındı. $2
inc %i
}
echo 14 * Toplam %i User $2 Kanalina Tasinmistir.
}Kullanımı :/mjoin #taşınankanal #taşınacakkanal

Comments Yorum Yok »

Sunucuya Girip nick şifrelemekle oper pass girmekle veya kanallara tek tek girmekle uğraşmak istemiyormusunuz ? işte bu kod tam size göre ;

on *:CONNECT: {
.Oper opernickiniz operşifreniz
.nick Rumuzunuz
.msg nickserv identify rumuzşifreniz
.join #Kanala,#kanalb,#kanalc,#kanal4d
}

yukarıdaki kodu kendinize göre düzenleyip remotenize atın. sadece bağlan tusuna basın ve scriptiniz herşeyi kendi halletsin.

Comments Yorum Yok »

mIRC Toolbar hakkinda geniş açıklamali doküman. DLL’siz mIRC Toolbar’i düzenleyebilirsiniz. mIRC Scriptings kendisine has bir özelligidir. Toolbar’i açmak için /toolbar komutu ile açabilirsiniz. Toolbar kullanımda bazı parametreler vardir bu paremetlerin özelliklerini tek tek örneklerle açıklıcagım.

-a Parametresi = Toolbara buton eklemek için kullanilir.

Örnek : /toolbar -a mIRC “mircbul” mirc.ico “/url http://www.mircbul.net

İlk kırmızılı mIRC yazisi Butonun adıdır. mIRCbuL yazisi Buton üzerine geldiginizde mIRCbuLyazisini gösterir. mirc.ico ise toolbar üzerine eklediginiz ico resmidir. Url kısmı ise butona tıkladiginiz gireceginiz web sitesidir.

Ico Boyutu 16X16 olmalidir. En büyük ise 256×256 olmalidir.

-i Parametresi = Bu paremetrede varolan mirc toolbardaki siraya göre sagdan sola dogru sirayla istediginiz toolbar arasina ekleme yapabilirsiniz.

Örnek : /toolbar -iz1 5 mIRC “mIRCbuL” mirc.ico “/url http://www.mircbuL.net

Toolbardaki iz1 5 yazma sebebim ; 5. id numarasina buton eklemiş oluyoruz. z harfi ise mirc iconu orjinal boyut olarak ayarlansin diye yazıyoruz.

-d Parametresi = Buton Silmek için kullanilir.

Örnek : /toolbar -d mIRC

Buradaki mIRC yazisi Eklediginiz toolbarin adı.

-m Parametresi = Buton taşımaya yarar.

Mesela, 5. siradaki butonu 3. siraya taşımak için kullanilir.

Örnek : /toolbar -m 3 radio

-is Parametresi = Bu parametre Butonlar arasinda ( | ) bu tarz bir çizgi vermeyi sagLar. En son buton mIRC diyelim ondan sonra gelsin. Örnekleyelim.

Örnek : /toolbar -is mIRC

-x Parametresi = Bu parametre diger -a parametresi gibi ayni görevi yapmaktadir. Yalniz butonu daha geniş yapar.

Örnek : /toolbar -x mIRC “mIRCbuL” mirc.ico “/url http://www.mircbuL.net

-kN Parametresi = Bu parametre ile buton eklerken butonlari kontrol etmenizi saglar. Yanindaki de en sayidir 1 ile 0  rakamıdır.

Örnek : /toolbar -akN mIRC “mIRCbuL” mirc.ico “/url http://www.mircbuL.net

-e Parametresi = Bu parametre eklediginiz butonu aktif kılar.

-eb Parametresi = Bu ise eklediginiz butonu pasif kılar.

-yN Parametresi = Eklediginiz butonlara saydamlık görünürlük yani verebilirsiniz. 0 ile 255 arasinda bir rakam girebilirsiniz. N yerine rakami yaziyorsunuz.

-u Parametresi = Bu parametrede eklediginiz butonlari güncelleyebilirsiniz. Örnegin mIRC diye bir buton eklediniz. Bunu güncellicekseniz

Örnek : /toolbar -u mIRC

-r Parametresi = Bu ise eklediginiz tüm butonlari siler. Sıfırlar. Eski mIRC butonlari kalir.

-c Parametresi = Bu parametreyi uyugularsaniz mIRC orjinal butonlari dahi siler. Sıfırlanir.

-f [ sdl ] Parametresi = Buradaki f parametresi eklediginiz butonlari mirc tekrar açılışında kayıt eder. -fs ile kullanım kayitlar. -fd ile kullanim siler. -fl ile kullanim ise en son kayit ettiginiz toolbari tekrardan geri getirir. Toolbariniz bozulursa bununla geri alabilirsiniz. Eger kayit edilmiş ise. toolbar.ini dosyasına kayit etmektedir.

Eğer Türkçe mIRC içerisinde help dosyaniz yoksa sitemizden bunu download edebilirsiniz. Gerekli ingilizce bilgileride mIRC scriptinizde /help /toolbar yazip entere basarak görüntüleyebilirsiniz.

Comments Yorum Yok »

Notlar:
ircforumlari.net için 5-Eylül-2005 tarihinde Alience tarafından yazılmıştır.
Buradaki yazılanlar en az 3 tane yabancı kaynaktan (genelde php kaynakları)
ve kendi deneyimlerimin sonucu mümkün olduğunca basit,kısa ve karşılaştırmalı
ele alınmıştır.

Expression (yani türkçesi ifade) yazıda aranacak kelime cümle ve veya harf olarak kullanıldı
String en basitinden düz cümle demektir .

Regex nedir?:
En basitinden ve anlayacağınız şekilde string karşılaştırma,string içi arama işlemini gerçekleştirmemizi sağlayan komut diyebiliriz. Mirc’de aynı işi yapan operatörler var ama regex hem daha hızlıdır hemde çok daha esnek bir yapıda olduğundan büyük kolaylık sağlar şöyleki:
if *deneme* iswm $1- veya if deneme isin $1-
ile
if $regex($1-,deneme) veya if $regex($1-,deneme) == 1
aynıdır.

Regex kullanımı:
Regex’in en basit kullanımı ile mirc help te $regex([name], text, re) olarak açıklandığını biliyoruz.
burada genel operatörler’i anlatmaya çalışacağım. Yazacağım komutlar $regex(bu bir örnektir,bir) şekline olacak bunu siz aliasese veya nerede kullanmak istiyorsanız ona göre ayarlamak zorundasınız şöyleki hemen sonucu görmek isityorsanız en basit yöntem mirc de komut olarak //echo : $regex(bu bir örnektir,bir) yazıp entere basmanız eğer bir yazısı “bu bir örnektir” de varsa ki var 1 değeri döner, eğer bar $regex(bu bir örnektir,bar) yazarsak 0 değeri döner.
Operatörler:
1: Basit kullanım:
Regexin en basit kullanımı yukarıdada bahsedildiği gibi $regex(string,expression) şeklindedir string içinde expression yazılan yerdeki kelime veya cümle varsa 1 olarak döner yoksa 0 olarak döner.
2: “.” Herhangi bir karakter operatörü:
expression da “.” herhangi bir karakter yerine geçer şöyleki:
$regex(bu bir örnektir,bir) yerine $regex(bu bir örnektir,b.r) yazarsak yine 1 değeri döner anlamıda b ile r arasına bir karakter gelecek ama ne olduğu önemli değil sadece bir karakter gelmesi yeterli.

3: Tekrar operatörleri
3.1: “*” Hiç yok yada birden çok olabilir Operatörü:
Şimdi bu başlıkta ne demeyin “*” aynı başlıktaki işi yapıyor, aranan string konulduğu yerin önündeki harfle devam ediyorsa veya devam etmiyorsa regex 1 olarak döner. kısacası i* yazdıkmı orada sadece i harfi olabilir veya tekrar eder şekilde olabilir (örn: iiiiiiiiiii gibi.) bu durumda 1 değeri döner, veya //echo : $regex(bu br örnektir,b*r) gibi arada birşey olmasa dahi 1 değeri döner. Daha iyi anlamanız için örnekler aşağıda.
Örnekler:
//echo : $regex(bu bir örnektir,bi*)
//echo : $regex(bu br örnektir,b*r)
//echo : $regex(bu br örnektir,ba*r)
//echo : $regex(bu biiiiiiiir örnektir,bi*r)
//echo : $regex(bu biiiiiiiiaaiir örnektir,bi*r)

3.2: “+” Bir tane veya birden çok olabilir operatörü:
“*” operatörünün hemen hemen aynısı ama tek farkı i+ gibi yazdıkmı en az bir i veya birden çok iiiiiiiiiiiiiii gibi devam edeni görmesi ama i harfi olmadımı * operatörü yerine 1 değilde 0 dönmesi (başlıklardan anlaşıldığı üzere * da hiç yok, + da bir veya daha fazla).
farkı ayırabileceğiniz örnekler:
//echo : $regex(bu br örnektir,ba*r)
//echo : $regex(bu br örnektir,ba+r)
//echo : $regex(bu bir örnektir,b*r)
//echo : $regex(bu bir örnektir,b+r)

3.3: “?” Hiçolmayabilir yada birtane olabilir operatörü:
“.” operatöründen tek farkı yerine herhangi bir karakter gelme zorunluluğu olmaması.
Farkları anlamanız için örnekler:
$regex(bu bir örnektir,b.r)
$regex(bu bir örnektir,b?r)
$regex(bu br örnektir,b.r)
$regex(bu br örnektir,b?r)

3.4: “{..}” uzunluk operatörü:
tanımlama şekilleri {uzunluk}, {min,max}, {min, }şekillerinde olabilir. Regex’te br{3} gibi belirtiğimiz zaman aranan stringin içinde brrrr gibi br den sonra en az 3 tane son yazılan karakterden olmalı ki regex 1 değeri dönsün. Kısacası + operatörünün hemen hemen aynısı ama farkı tekrar eden sayıların aramasını bizim sınırlandırabilmemiz.
[color=blue]//echo : $regex(bu brr örnektir,br{3})
//echo : $regex(bu brrr örnektir,br{3})
//echo : $regex(bu abrbrbr örnektir,a(br){3}) ;buda br nin grup şeklinde devam etmesi () grup operatörü ne işe yaradığı aşağıda yazıyor.

4: “|” veya Operatörü:
if a == b || a == c dekindeki aynı mantık a b ye eşit olabilir veya a c ye eşit olabilir, regexte $regex(deneme bu bir örnektir,bar|bir) yazarsak “bu bir örnektir” yazısında “bar” yok ama “bir” var ve regex 1 değeri olarak döner.

5: “^” başlama Operatörü:
^ önüne konulan expression aranan stringin ilk kelimesi ise 1 değeri döner, eğer yukarıdaki örneklerdeki gibi “bir” kelimesini ararken $regex(bu bir denemedir,^bir) şeklinde yazarsak 0 değeri döner ama $regex(bu bir denemedir,^bu bir) şeklinde yazarsak 1 değeri döner, Özetle bu* iswm bu bir denemedir ile aynı işlemi yapıyor.

6: “$” bitme Operatörü:
^ operatörü ile aynı olup tek farkı aranan string’in o expression ile bitmesi gereklidir. Özetle $regex(bu bir denemedir,denemedir$) veya $regex(bu bir denemedir,dir$) yazarsak 1 değerleri döner, yani if *dir iswm ile aynıdır.

6: “[[: :]]” Karakter sınıfı Operatörleri:
kullanımları $regex(string,[[peratör:]])
Operatörleri ve anlamları:
alnum : yazı karakterleri ve sayılar
alpha : sadece yazı karakterleri
blank : space veya tab.
cntrl : kontrol karakterleri (ASCII de 0177 ve 040 tan duşuk karakterler)
digit : sayılar
lower : küçük harf
space : boşluk, $cr (carriage return) , $crlf (yeni satır), tab
upper : büyük harf
xdigit : hexadesimal sayılar: 0–9, a–f, A–F

Örnekler:
//echo – $regex(AAAA23 $+ $cr,[[:space:]])
//echo – $regex(AAAA23,[[:space:]])
//echo – $regex(AAAA23,[[:digit:]])
//echo – $regex(AAAA,[[:digit:]])
vs..

7: “-” Aralık Operatörü:

Belli aralıklari karşılaştırmaya yarar 1-9,a-z,a-c gibi sırasıyla 1 den 9 a kadar, a dan z ye kadar kücük harfler, a dan c ye kadar kücük harfler’i arar.

Örnekler:
//echo – $regex(3,[1-5])
//echo – $regex(5,[1-5])
//echo – $regex(8,[1-5])

8: “()” Grup Operatörü:

Yukarıda bir örnekte bahsetiğim gibi aradığınız bir expression’u gruplamak için kullanılır br* yazarsak sadece r ye göre işlem yapılır, ama (br)* yaparsak br ye göre işlem yapar.

9: Kelime Operatörleri:

\b :
Kelime tam anlamıyla eşitse 1 değeri döner
Örnekler:
$regex(rat,\brat\b)
$regex(arata rat a,\brat\b)
$regex(arata rata,\brat\b)
$regex(arata rata,rat\b)
vs..

\B :
Kelime içeriyorsa 1 değerini döner \b deki gibi space’e gerek yoktur.
$regex(crate,c\Brat\Be)

\s :
Herhangi bir boşluk karakteri varsa 1 değeri döner.
$regex(deneme mesajı,\s)

\S :
\s nin tam tersi boşluk yoksa 1 döner. $regex(deneme,\S)

\w :
Herhangi kelime sayılabilecek karakter içeriyorsa 1 değeri döner.
$regex(deneme,\w)

\W :
\w nin tam tersi.
$regex(bunu dene,\W)

\d :
Herhangi bir sayı varsa 1 değeri döner
$regex(deneme 20,\d)

\D :
Herhangi bir sayı yoksa 1 değeri döner
$regex(deneme 20,\D)

Extra not: regexte \, {, gibi karakterleri aramak için başına \ koymamız gerekli böylece onları operatör değilde karakter olarak görür. Bu 3. gönderişim allahtan hdd yi yedeklerken cd ye kaydetmişim

Comments Yorum Yok »

;sock bağlama
on *:sockopen:xclusive: {
;sock hatalıysa durdur
if ( $sockerr > 0 ) { return }
;bağlandığında irc sunucusuna bağla
.sockwrite -tn $sockname CONNECT irc.server.comort $+(HTTP/1.0,$CRLF,$CRLF)
}
;sock okuma
on *:sockread:xclusive:{
;sock hatalıysa durdur
if ( $sockerr > 0 ) { return }
;sock oku
.sockread %report
;bağlantıdaki yazı HTTP/1.0 200 yada HTTP/1.1 200 ise
if ($gettok(%report,1-2,32) == HTTP/1.0 200) || ($gettok(%report,1-2,32) == HTTP/1.1 200) {
;bu komutları uygula
;botun nickini belirtiyoruz
.sockwrite -tn $sockname NICK XcLusive
;botun ident adresini ve fullnamesini belirtiyoruz
.sockwrite -tn $sockname USER XcLusive XcLusive XcLusive : $+ Botun Adı
}
;raw numarasını belirliyoruz sock botumuz sunucuya bağlandığında istediğimiz komutları yazdırmak için
;örneğin ben kanala almak istedim
;raw numarasını alıyoruz
var %:raw = $gettok(%report,2,32)
;eğer raw numarası 266 ise deneme kanalına gir diyoruz
if ( %:raw == 266 ) { sockwrite -nt $sockname join #deneme }
}
son olarak botumuzu /sockopen xclusive proxy-ip-adresi proxy-portu şeklinde bağlıyoruz
unutmayın sock botumuzun adı xclusive olmalı aksi halde bağlanmaz
bu değerleri değiştirmek istiyorsanız
on *:sockopen:xclusive:{
on *:sockread:xclusive:{
remotelerindeki xclusive yerine başka birşey yapabilirsiniz.

Comments Yorum Yok »

Her zaman sorulan socket botun nasıl yapıldığı konusunu biraz anlattım. Aşağıdaki kodun içinde neyin ne olduğunu gösteriyor. Sizde bu kodu yükledikten sonra @sdebug penceresine gelen bilgiye göre swalias’ı içinde istediğinizi ekleyebilirsiniz. İşte kod ve açıklaması:

Önce mIRC’de yazı yazdığımız yerde yani command line’dan /sockopen bot <server-ip> <port> komutunu yazarak botumuzu istediğimiz servera bağlıyoruz.

;”bot” adlı socketımız açıldığında
on *:sockopen:bot:{
;eğer socketta bir sorun varsa işlemi durduruyoruz
if ($sockerr) { echo $color(info) -st Socket botun bağlantısı kesildi. | return }
;servera bağlanırken botun nicki gönderiliyor
swbot NICK BOTUN-NICKI
;servera bağlanırken botun identdi ve usernamei gönderiliyor
swbot USER IDENTD * * :USERNAME BURAYA
;socket botun nickiyle işaretleniyor. yani $sock(bot).mark değeri botun nicki oluyor
sockmark $sockname BOTUN-NICKI
}
;serverdan socketa bilgi geldiğinde
on *:sockread:bot:{
;eğer socketta bir sorun varsa işlemi durduruyoruz
if ($sockerr) { echo $color(info) -st Socket botun bağlantısı kesildi. | return }
;%; diye bir değişken oluşturup sockettan gelen bilgiyi bu değişkene yüklüyoruz ve $1- değerini doldurması için tokenize kullanıyoruz
var %; | sockread %; | tokenize 32 %;
;eğer @sdebug penceresi yoksa pencere oluşturuluyor ve sockettan gelen bilgi o pencereye gösteriliyor
if !$window(@sdebug) { window -k0 @sdebug } | aline -p @sdebug $timestamp < $1-
;sockettan gelen bilgi ile swalias aliasını çağırıyoruz
swalias $1-
}
;socketta bilgi gönderme aliasımız, eğer bot socketı açıksa o socketa istediğimiz bilgiyi gönderiyoruz
alias swbot { if $sock(bot) { sockwrite -n bot $1- } }

;sockettan gelen bilgiyi okumak için oluşturduğumuz swalias aliası
alias swalias {
;eğer bot socketı açıksa
if $sock(bot) {
;%: değişkenine status penceresine echolaması için bir komut yüklüyoruz
var %: = echo $color(info) -st > Socket bot:
;eğer serverdan socket VERSIONu istenirse mIRC v6.17′nin version cevabını gönderiyoruz.
if :VERSION iswm $4- { swbot NOTICE $gettok($gettok($1,1,33),1,5h : $+ $chr(1) $+ VERSION mIRC v6.17 Khaled Mardam-Bey $+ $chr(1) }
;eğer serverdan botumuzun fingerı istenirse ona cevap gönderiyoruz
if :FINGER iswm $4- { swbot NOTICE $gettok($gettok($1,1,33),1,5h : $+ $chr(1) $+ FINGER Sevket Arslan $+ $chr(1) }
;eğer server bizi pinglerse, bizde onu pongluyoruz, düşmemek için bu gerekli.
if $1 == PING { swbot PONG $2- }
;serverdan gelen bilginin 2. kelimesi 474′se, bu 474. rawı gördü demektir, 474. raw bir kanaldan banlı olduğunu gönderir. statuse 4. değer olan kanaldan banlı olduğunu bildiriyor.
if $2 == 474 { %: $4 kanalında banlı. }
;2. kelime 366 ise yani /names komutunun sonu ki bu genelde bot kanala girdiğinde gelir, girdiğimiz kanal status penceresine gösteriliyor.
if $2 == 366 { %: $4 kanalına girdi. }
;eğer 2. kelime kickse ve 4. kelime botumuzun nickiyse, statuse kanaldan kicklendiğimizi kimin kicklediğini ve neden kicklendiğini gösteriyoruz.
if $2 == KICK && $4 == $sock(bot).mark { %: $3 kanalından %n tarafından kicklendi. $+($chr(40),$right($5-,-1),$chr(41)) | swbot JOIN $3 }
;eğer 2. kelime PRIVMSG ise
if $2 == PRIVMSG {
;%n değişkenine nicki, %m değişkenine gelen mesajı, %k değişkenine kanalı ayarlıyoruz
var %n = $gettok($gettok($1,1,33),1,5h, %m = $right($4-,-1), %k = $3
;eğer nickler belirlediğimiz nickler ise (burda el33t ve el33t2)
if $istok(el33t el33t2,%n,32) {
;eğer gelen mesajın birinci sözcüğü .hop ise eğer 2. kelime varsa 2. kelimenin olduğu kanalda, yoksa yazılan kanalda hop komutu uygulanıyor yani kanaldan çıkıp tekrar giriliyor.
if .hop == $gettok(%m,1,32) { var %< = $iif($gettok(%m,2,32),$v1,%k) | swbot PART %< | swbot JOIN %< }
;bu da .hop gibi fakat bunda botumuz belirtilen kanaldan çıkıyor. eğer 2. sözcük varsa, o kanaldan, yoksa mesajın yazıldığı kanaldan
if .part == $gettok(%m,1,32) { var %< = $iif($gettok(%m,2,32),$v1,%k) | swbot PART %< }
;bu da .part gibi ama bununla istediğimiz kanala sokuyoruz
if .join #* iswm %m { swbot JOIN $gettok(%m,2-,32) }

Comments Yorum Yok »

Dialog’lar Hakkında Herşey

;———————————————–
; Dialog Yardım Dosyası
; Written by Cappystarj0e
;

;———————————————-

; Örnek Dialog Penceresi

dialog Ornek {
title “Örnek – Dialog’un Title kısmı…”
size -1 -1 134 216
option dbu
icon C:\resimlerim\VatanScr.jpg, 1
edit “EDIT”, 1, 70 16 50 10, limit 34
text ” TEXT”, 2, 10 17 31 8
list 3, 9 30 50 44, sort size extsel hsbar vsbar
combo 4, 63 30 60 45, sort size edit hsbar vsbar drop
box “BOX Texti…”, 5, 5 3 122 83
radio “Radyo Düğmesi”, 6, 8 90 50 10, group flat left push
check “Check düğmesi”, 7, 8 102 50 10, 3state flat left push
tab “Tab 1″, 8, 6 116 118 77
icon 9, 17 140 98 42, C:\resimlerim\deneme.bmp, 1, tab 8 noborder bottom
button “Button”, 10, 67 91 55 20, default flat multi
link ” Coded by CAPPYSTARJOE”, 11, 36 200 66 8
}
Alias Ornek { dialog -m ornek ornek }

——————————————————————————–
Bu dialog da hemen hemen bütün dialog elemanları tanıtılmıştır.
Code kısmını mirc’in remotesine yapıştırıp /Ornek yazarak dialog’u açabilirsiniz fakat iconlar hata verebilir o yüzden icon ların bulunduğu satırları ya kendinize göre ayarlamanız yada silmeniz önerilir. Şimdi sırayla bunların ne anlama geldiklerini ve nasıl çalıştıklarını anlatmaya çalışayım.

::::: DIALOG ELEMANLARI :::::
::: Size :::
Size [X] [Y] [W] [H]
Dialog’un boyutlarını belirler 4 parametresi vardır.
ilk iki parametre genelde -1 olarak kullanılır. Bu şekilde kullanıldığı zaman dialog penceresinin ekranın ortasında açılmasını sağlar. Eğer siz buraya başka değerler girerseniz girdiğiniz değerlere göre ekranın belirli bir bölgesinde açığa çıkar.
3. [W] parametresi soldan sağa ne kadar boyutta olduğunu gösterir.
4. [H] parametresi de yukarıdan aşağıya ne kadar boyutta (büyüklükte) olacağını gösterir.

::: Title :::
Title “yazı…”
Dialog pencresinin en üst bandında (Titlebar) yer alan yazıyı kontrol etmek için kullanılır.

::: Edit :::
edit “yazı…” [N], [X] [Y] [W] [H], [read | pass | multi | return | autohs | autovs | hsbar vsbar | limit N ]
Dialog penceresinde bir satır meydana getirmek için kullanılır. Yalnız bu ve bundan sonra anlatacağım dialog elemanlarının index numaraları vardır. Yani her eleman kendisini tanıtan bir sayıya eşdeğerdir. Dialog komutlarında bu sayı ile tanınır. Yukarıda verdiğimiz örnekte edit in index numarası 1 dir. 1 den sonra görüleceği üzere yine 4 tane parametre mevcuttur. Bundan sonra gelen parametreler Dialog penceresine yerleştireceğiniz elemanın görünümü ve değişik kullanımları ile alakalı parametrelerdir.

Örneğin…
read; edite bir yazı girilmesini engeller. Sadece editteki yazıyı okuyabilirsiniz. pass; edit’e girilen bir sayının *** şeklinde gözükmesini sağlar. Onu gizler. multi; editte normalde 1 satır vardır. editi 1 den fazla satır halinde kullanmak için bu parametre kullanılır. vs.

::: Text :::
Text “yazı…” [N], [X] [Y] [W] [H]
Dialog penceresine yazı yazmak için kullanılır.

::: Button :::
Button “yazı…” [N], [X] [Y] [W] [H], [ default | flat | multi | OK | CANCEL ]
Dialog’da button oluşturmak için kullanılır.

Flat; Button görünümü ile alakalıdır.
Default; Buttonun dialog penceresi açıldığı andan itibaren üstünde bir karatı gözükmesi olayıdır. Yani diğer elemanlardan daha aktif bi şekilde gözükür seçiliymiş gibi görünür. O durumu bozmadığınız sürece Enter’a bastığınız zaman o butona basmış olursunuz.

::: List :::
List [N], [X] [Y] [W] [H], [ sort | extsel | hsbar | vsbar | size ]
Dialog da Listeler oluşturmak için kullanılır.Bilinen [N], [X] [Y] [W] [H] parametrelerinin dışında [ sort | extsel | hsbar | vsbar | size ] gibi parametreleri mevcuttur.

Sort; Listeye girilen yazıların listede alfabetik sırayla düzenlenmesini sağlar.
Extsel; Listede birden fazla seçim yapmanıza imkan sağlar.
hsbar & vsbar; Liste kontrolü için sağdan sola ve aşağıdan yukarıya scrolleri etkinleştirir.
size; Bu da sanırım listenin boyutu ile alakalı bir parametre ama tam olarak ne oldugunu bilmiyorum. Ama listelerin hemen hepsinde var.

::: Combo :::
Combo [N], [X] [Y] [W] [H], [ sort | size | edit | hsbar | vsbar | drop ]
Dialog da aktif bir edit elemanı oluşturmak için kullanılır. 2 kullanımı vardır.
1.si Liste şeklinde olanıdır. Üstte bir satır altta bir liste şeklinde…
2.si Tıklandığında aşağıya açılabilen bir edit görünümündedir. İçinde bir çok satır barındırır.

Bu özellikleri “drop” parametresi ile belirlenir. Eğer drop u kullanırsanız. Combo’nuz 2. tipte çalışır.
List’in parametreleri ile aynı olan parametreler List’deki görevler ile aynı görevleri yapar.
Edit; Combo da seçilen bir satırın kontrol edilebilmesi için kullanılır. Yani eğer bu parametre kullanılmamışsa combo daki satırları kullanıcı değiştiremez. Ona sadece seçenekler sunarsınız. Eğer edit kullanılırsa combo içindeki bir satırı kullanıcıya da değiştirtebilirsiniz.

::: Box :::
Box “yazı…” [N], [X] [Y] [W] [H]
Dialog elemanlarını bir çerçeve içinde toplamak için kullanılır.

::: Radio :::
Radio “yazı…” [N], [X] [Y] [W] [H], [ group | flat | left | push ]

Bir kez tıklandığında ancak grup içerisinde başka radyo düğmesi var iken değeri değişebilen bir elemandır. Seçenekler için kullanılır. Örneğin, kullanıcı birçok seçenek içinden sadece 1 tane veya sadece belirli sayıda seçeneği seçebilecek durumdaysa Radyo düğmesi kullanılır.

Group; Birçok seçeneği grup halinde toplamak ve kullanıcıya bunlardan sadece 1 tanesini seçtirmek için kullanılan bir parametredir. Group içinde bulunan radyo düğmelerine tıkladığınızda sadece 1 i tıklı gözükür diğerine tıkladığınız zaman tıklı gözüken radyo düğmesi boş olur. Böyle bir düzeneği ancak group parametresi ile sağlayabilirsiniz.

Flat; Radyo düğmesinin görünümü ile alakalı bir parametredir.
Left; Bu parametreyi kullanmazsanız, Tıklanacak kısım solda yazı kısmı sağda olacak şekilde bir Radyo düğmesi oluşturmuş olursunuz. Eğer bu parametreyi kullanısanız yazı kısmını sola, tıklanacak kısmı da sağa çekmiş olursunuz.
Push; Radyo düğmesinin Button gibi gözükmesini sağlar. Yalnız button dan farklı olarak basıldığı zaman basılı kalır. Ve group içinde aynı radyo düğmesi gibi davranır.

::: Check :::
Check “yazı…” [N], [X] [Y] [W] [H], [ 3state | flat | left | push ]

Seçeneklerin aktif olduğunu göstermek amacıyla kullanılır. Yani bir seçeneği seçtiğimizi belirtmek için kullanabiliriz. Radyo düğmesi ile biraz benzerlik göstermektedir.Fakat Tek bir Radyo düğmesi tıklandığında değeri değişemezken bir check düğmesinin değerini istediğimiz gibi değiştirebiliriz. Yani tıklı halden boş hale, boş halden tıklı hale geçirebiliriz. Radyo düğmesi ile aynı olan parametreleri aynı görevleri yaparlar.

3state; Görünüm ile alakalı bir parametredir.

::: Icon :::
1] icon [Dosya yolu], [Index]
2] icon [N], [X] [Y] [W] [H], [Dosya yolu], [Index], [ noborder | Left | Right | bottom | Top | Center ]

Bu dialog elemanının 2 kullanım şekli vardır.
1.si Dialog penceresinin title barda yer alan (sol üst köeşedeki) iconunu kontrol etmek için kullanılır.
2.si Dialog penceresine bir resim eklemek için kullanılır.

Left | Right | bottom | Top | Center ; parametreleri icon elemanının [X] [Y] [W] [H] değerleri ile oluşturulan alanda nasıl yerleştirileceği ile ilgili olan parametrelerdir.

[Index] i tam olarak bilmiyorum.Ama genelde sıfır olarak kullanıyorum.

::: Tab :::
Tab “yazı…”, [N], [X] [Y] [W] [H]

Dialog penceresindeki alanı kullanma açısından büyük faydalar sağlar.Aynı alanda birçok elemanı tab ile kullanabilirsiniz.Burda dikkat edilmesi gereken husu şudur: Tab içinde kullandığımız herhangi bir dialog elemanının parametresine “tab [N]” i eklemeliyiz.

Örneğimizde de görüleceği üzere;

icon 9, 17 140 98 42, C:\resimlerim\deneme.bmp, 1, tab 8 noborder bottom

9 numaralı icon elemanı 8 numaralı tab içinde kullanıldığı için sonuna “tab 8″ gibi bir parametre konulmuş.Bu 9 numaralı icon elemanının sadece 8 numaralı tab içerisinde aktif olacağını ifade eder.

::: link :::
Link “yazı…”, [N], [X] [Y] [W] [H]
Link oluşturmak için kullanılır.Tek başına çalışmaz.Aktif olması için kod gerekir.
——————————————————————————–
::::: DIALOG OLAYLARI (DIALOG EVENTS) :::::

on 1:dialog ialogIsmi:Olay(Event):[N]: { …kodlar… }

On 1:dialog:isim:INIT:0:{ …kodlar… } ;>> Buradaki dialog olayı INIT’dir Dialog’un ilk gösterildiği anda nelerin yapılaması gerektiği buraya yazılır.
On 1:dialog:isim:CLOSE:0:{ …kodlar… } ;>> Dialog kapanırken nelerin yapılması gerektiği buraya yazılır.
On 1:dialog:isim:EDIT:[N]:{ …kodlar… } ;>> [N] numarasına sahip bir edit veya combo elemanının içinde bir değişiklik yapıldığı zaman ne yapılması gerektiği buraya yazılır.
On 1:dialog:isim:SCLICK:[N]:{ …kodlar… } ;>> [N] numarasına sahip bir elemanın üzerinde tek bir tıklama yapıldıgı zaman ne yapılacağı buraya yazılır.
On 1:dialog:isimCLICK:[N]:{ …kodlar… } ;>> [N] numarasına sahip bir elemanın üzerinde çift tıklama yapıldıgı zaman ne yapılacağı buraya yazılır.
On 1:dialog:isim:MENU:[N]:{ …kodlar… } ;>> Menu’de bir seçenek seçildiği zaman ne yapılacağı buraya yazılır.
On 1:dialog:isim:SCROLL:[N]:{ …kodlar… } ;>> Dialogda kullanılan bir [N] numarasına sahip elemanın scroll’unun pozisyon değiştirmesi durumunda yapılacak olan işlemler buraya yazılır.

::: Mouse Event’ları :::
on 1:dialog:isim:MOUSE:[N]:{ …kodlar.. } ;>> Mouse [N] numaralı elemanın üzerine geldiğinde yapılacak işlemler…
on 1:dialog:isim:sclick:[N]:{ …kodlar… } ;>> Mouse un Sol tuşuyla [N] elemanına tıklanırken yapılacak işlemler…
on 1:dialog:isim:uclick:[N]:{ …kodlar… } ;>> Mouse un sol tuşuyla [N] elemanına tıklandıktan sonra yapılacak işlemler…
on 1:dialog:isim:dclick:[N]:{ …kodlar… } ;>> Mouse ile [N] elemanına çift tıklandığında yapılacak işlemler…
on 1:dialog:isim:rclick:[N]:{ …kodlar… } ;>> Mouse un sağ tuşuyla [N] elemanına tıklandığında yapılacak olan işlemler buraya yazılır.

::::: DIALOGLARDA BAZI ALIASLAR :::::

::: /Dialog Komutu :::

/DIALOG -mdtsonkcvie Dialog ismi [Dialog ismi] [X] [Y] [W] [H] [yazı...]

Dialog penceresinde kullanılan bu komutun parametrelerinin neler olduğuna bir bakalım.

/dialog -m [Isim] [Isim] ;

/dialog -a … ; Dilaog penceresini aktif windows penceresinde >açmak< için kullanılır. (-m ile beraber kullanılır. “/dialog -ma [isim] [isim]” şeklinde…)

/dialog -v [Isim] ; Dialog penceresini aktif windows’a >taşımak< için kullanılır. Tek başına kullanılabilir. -a dan bu yönüyle farklıdır.

/dialog -x [isim] ; Dialog penceresini kapatmak için kullanılır.

/dialog -d … ; Dialog penceresi normalde “-m” ile açıldığında sağ üst köşesinde sadece X gibi bir işaret vardır ve programı ordan kapatırsınız.Eğer dialog pencerenize “Simge Durumuna

Küçült” özelliği katmak istiyorsanız -m ile bir likte “-md” şeklinde bir parametre kullanırsınız.

/dialog -t [Isim] Yazı… ; Dialog penceresindeki titlebar da bulunan yazıyı bu komutla kontrol edebilirsiniz.

/dialog -s [Isim] [X] [Y] [W] [H] ; Dialog penceresinin boyutlarını kontrol etmek için kullanılır.

/dialog -r [Isim] ; Dialog penceresini ekranın ortasına taşır.

/dialog -o [Isim] ; Dialog penceresini windowsda çalışan tüm pencerelerin üstünde tutmak için kullanılır. (On Top)

/dialog -n [Isim] ; Bundan bir önceki komutun “/dialog -o [Isim]” in tam tersi işlemi yapar.

/dialog -k [Isim] ; Dialog içindeki bir “OK” parametresine sahip tuşa (Button’a) basma işlemini gerçekleştirmek için kullanılır.

/dialog -c [Isim] ; Dialog içindeki bir “Cancel” parametresine sahip tuşa (Button’a) basma işlemini gerçekleştirmek için kullanılır.

/dialog -i [Isim] ; Dialog penceresi “-md” parametresiyle açılmışsa yani “Simge durumuna Küçült” özelliği varsa o dialog u simge durumuna küçültmek için kullanılır.

/dialog -e [Isim] ; Yine Dialog penceresi “-md” parametresiyle açılmışsa yani “Simge durumuna Küçült” özelliği varsa o dialog u simge durumundan kurtarıp aktif ekrana taşımak için kullanılır.

::: /DID Komutu :::

/did komutu dialog penceresi açıldıktan sonra yapılacak işlemleri için anahtar bir komuttur.

/did -ftebvhnmcukradiogj [Isim] [N] [Sayı] [Yazı... | DosyaYolu...]

/did -f [Isim] [N] ; Bir dialog elemanını aktif etmek için kullanılır. Bu özellik bir pencerenin diğer bir pencere üzerinde daha aktif olması gibi birşey. Bir dialog elemanı diğer elemanlardan daha aktif gözükür. Deneyerek görebilirsiniz.

/did -t [Isim] [N] ; Bir dialog butonunu default buton yapmak için kullanılır. Default button Dialog elemanlarında anlatılmıştı.

/did -b [Isim] [N] ; Bir dialog elemanını ([N] numarasına sahip olan elemanı) çalışamaz hale getirmek ve üzerine donmuş gibi bir görüntü vermek için kullanılır.

/did -e [Isim] [N] ; “/did -b …” deki etkiyi kaldırmak için kullanılır.

/did -h [Isim] [N] ; Bir dialog elemanını dialog penceresinden silmek için kullanılır.

/did -v [Isim] [N] ; Dialog penceresinden silinmiş (did -h … uygulanmış) bir elemanı tekrar görünür kılmak için kullanılır.

/did -c [Isim] [N] ; Dialog penceresinde kullanılan elemanlardan, check düğmesi ve radio düğmesinde tıklama işlemini gerçekleştirmek için List ve Combo da ise belli bir satırın aktifleştirilmesi (seçili hale gelmesi) için kullanılır.

/did -u [Isim] [N] ; “/did -c …” işlemininin tersini yapar.

/did -r [Isim] [N] ; [N] numarasına sahip dialog elemanındaki bir text’i silmek için kullanılır.

/did -a [Isim] [N] ; [N] numarasına sahip dialog elemana bir text girmek için kullanılır.

/did -d [Isim] [N] [sayı] ; [N] dialog elemanında [sayı]. satırın silinmesi işlemini yapar.

/did -i [Isim] [N] [sayı] ; [N] dialog elemanında [sayı]. satıra text girilmesi işlemini yapar.

/did -o [Isim] [N] [sayı] ; [N] dialog elemanında [sayı]. satırdaki textin değiştirilmesi işlemini yapar.

/did -g [Isim] [N] [sayı] [Dosya Yolu] ; [N] dialog elemanındaki bir resim yada iconun değiştirilmesi için kullanılır.

/did komutunu birçok dialog elemanı için aynı anda tek komutta kullanabilirsiniz bunun için eleman numaraları arasına virgül koymalısınız. Örneğin “/did -b Ornek 1,2,3,4 ” gibi…

::::: DIALOGLARDA BAZI IDENTIFIERLAR :::::

::: $dialog() Identifier’ı :::

$dialog([Isim]/[Sayı])
En basit haliyle dialog içindeki bilgileri çekmek kullanılır. Örneğin “$dialog(ornek) = Ornek” ise o dialog mirc içinde açık demektir.Bunun tersi durumda $dialog(Ornek) = $null olacaktır. ($null Boş demektir.) Şimdi de $dialog identifierının parametrelerini görelim.

$dialog(Isim).x , $dialog(Isim).y , $dialog(Isim).w , $dialog(Isim).h ; Dialog penceresinin pzoisyonları hakkında bilgi verir.

$dialog(Isim).cw, $dialog(Isim).ch ; Dialog penceresinin boyutları hakkında bilgi verir. (En ve Boy)

$dialog(Isim).title ; Dialog penceresinin titlebar’ında yazan yazıyı ifade eder.

$dialog(Isim).table ; Bu identifier eğer “Isim” e eşitse o dialog o an kullanılıyor demektir.

$dialog(Isim).Ok ; Dialog içinde button parametresi “OK” olan bir button seçildiyse onun [N] eleman numarasını verir.

$dialog(Isim).cancel ; Dialog içinde button parametresi “Cancel” olan bir button seçildiyse onun [N] eleman numarasını verir.

::: $did([Isim],[N],[Sayı]) identifier’ı :::

Bu identifierlar eğer dialog eventlarında kullanılıyorsa çoğunda “Isim” kısmı yazılmaz. Ama eğer event dışında kullanılacaksa mutlaka “Isim” kısmı yazılmalıdır.

$did([N]) ve $did([N]).text ; Bu iki identifier aynı görevi görür. [N] numarasına sahip bir elemanın içindeki yazıyı ifade eder.

$did([N],[Sayı]).Len ; [N] numarasına sahip dialog elemanının [Sayı]. satırdaki yazının karakter sayısını verir.

$did([N]).Lines ; [N] elemanının barındırdığı toplam satır sayısını verir.

$did([N],[Sayı]).sel ; [Sayı] , sıfıra eşit değilse, [N] elemanındaki seçili satırın kaçıncı satır olduğunu verir. Eğer [Sayı] sıfır alınırsa [N] elemanında seçili olan toplam satır sayısını verir.

$did([N]).seltext ; Eğer eleman Edit ise editte seçili olan yazıyıi, Liste elemanında ise listede seçili olan satırdaki yazıyı verir.

$did([N]).selstart ; Edit te seçili olan bir yazının başlangıç karakterini verir.

$did([N]).selend ; Edit te seçili olan bir yazının son karakterini verir.

$did([N]).edited ; Eğer başlangıçta editte yazılan yazı değişmişse “$did([N]).edited = $true” olur. Eğer değişiklik yoksa “$did([N]).edited = $false” olur.

$did([Isim],[N]).state ; Check veya Radyo Düğmesinin tıklı olup olmadığı hakkında bilgi verir. Bu değer 1 e eşit se check düğmesi veya radyo düğmesi tıklı demektir.1′e eşit değilse tıklı olmadığı anlamına gelir. Eğer bu değer 2 ye eşitse tıklı olup olmadığı belirsiz anlamına gelir.

$did([Isim],[N]).enable ; Eğer [N] numaralı eleman kullanılabilir bir durumda ise (yani “/did -b …” ile kullanılamaz hale geitirilmemiş ise) bu identifier $true ya eşit olur. Aksi halde $false’a eşit olur.

$did([Isim],[N]).visible ; Eğer [N] numaralı dialog elemanı görünür durumda ise (yani “/did -h …” ile görünemez hale getirilmemiş ise) bu identifier $true ya eşit olur. Aksi halde $false’a eşit olur.

************************************************** *******

Comments Yorum Yok »

Event Eğitim Serimizden sira Join Eventinde.

Öncelikle size ne işe yaradığını anlatmakla başlıyayım.

ismindende anlaşıldığı gibi join kanala giriş join girmek demektir.

Mirc script remote editörümüzü açip yazacağimiz kodu oraya yazacağiz.
kısa yol tulsari ile Alt + R tuslari.

Bir örnek ile devam etmek istiyorum.

on *:join:#kanal:{ işlev }

şeklinde bir kodumuz var join eventi tam olarak bundan oluşmaktadir.

şimdi diyelim ki mirc kanalına biri girdiği zaman o nicke selam yazdirmaya çalişalim.

on *:join:#mirc:{ /msg #mirc Selam $nick Hoşgeldin $chan kanalına }

şeklindedir.

bunun örneklerini çoğaltabiliriz ve kendineze göre uyarlayabilirsiniz.

join eventi bu kadar basit ve kolaydır

Comments Yorum Yok »

[script]
n0=on 1:TEXT:Ops:#: { if $me isop $chan { /echo -a $time $nick 4 $chan 12, Kanalında Ops Talebinde Bulunuyor.. 1Ops } }
n1=on 1:TEXT:Op:#: { if $me isop $chan { /echo -a $time $nick 4 $chan 12, Kanalında Op Talebinde Bulunuyor.. 1Op } }

Comments Yorum Yok »

Öncelikle arkadaşlar size $read’ı açıklıyalım
$read anladığımız gibi okuma anlamına gelir
Örnek verelim..
Biri özelimde selam derse ona selam.txt den rastgele cümleler okutalım
on *:text:*selam*:?:{
.msg $nick $read(selam.txt)
}
Evet selam.txt ye eklediğm cümleler
Sanada selam
a.S. $nick
naber ?
Selaaam
<Radius> selam
<Radi> Sanada selam
<Radius> selam
<Radi> a.S. Radius
<Radius> selam
<Radi> Naber
<Radius> selam
<Radi> Selaam
burdaki text eventini değiştirerek diğer eventlerdede kullanabiliriz
Txt’den satır okutmak
diyorumki biri özelime naber yazarsa txtdeki 2. satırı sölemek istiyorum txt: naber.txt
on *:text:*naber*:?:{
.msg $nick $read(naber.txt,2)
}
txt’demizdeki yazılar..
iyi
iyi ya nolsun
kötüüü
berbaat
<Radius> Naber
<Radi> iyi ya nolsun
<Radius> Naber
<Radi> iyi ya nolsun
Kodumuzdaki naber.txt’den sonraki 2 2. satır demek..
Peki txt’de tek tek nasıl okuturuz 1 den başlayıp devam ederek..
Ben şöle bişi düşündüm
biri özelime selam yazarsa öle uzasın gitsin
on *:text:*selam*:?:{
if %selam == $null {
.set %selam 1
.msg $nick $read(selam.txt,%selam)
}
else {
.msg $nick $read(selam.txt,%selam)
.inc %selam
}
Kodumuz bu burdaki kodu açıklıyalım
if %selam == $null {
.set %selam 1
.msg $nick $read(selam.txt,%selam)
}
Burda diyorumki eğer %selam veriablesi boşsa %selam ı 1 al ve nicke 1. satırı oku
else {
.msg $nick $read(selam.txt,%selam)
.inc %selam
}
Burdada eğer boş değilse selam.txt de belirtilen satırı oku ve satır sayısını bir arttır..

Öncelikle arkadaşlar size $read’ı açıklıyalım$read anladığımız gibi okuma anlamına gelirÖrnek verelim..Biri özelimde selam derse ona selam.txt den rastgele cümleler okutalımon *:text:*selam*:?:{.msg $nick $read(selam.txt)}Evet selam.txt ye eklediğm cümlelerSanada selama.S. $nicknaber ?Selaaam
<Radius> selam<Radi> Sanada selam<Radius> selam<Radi> a.S. Radius<Radius> selam<Radi> Naber<Radius> selam<Radi> Selaam
burdaki text eventini değiştirerek diğer eventlerdede kullanabiliriz—Txt’den satır okutmakdiyorumki biri özelime naber yazarsa txtdeki 2. satırı sölemek istiyorum txt: naber.txton *:text:*naber*:?:{.msg $nick $read(naber.txt,2)}
txt’demizdeki yazılar..iyiiyi ya nolsunkötüüüberbaat
<Radius> Naber<Radi> iyi ya nolsun<Radius> Naber<Radi> iyi ya nolsun
Kodumuzdaki naber.txt’den sonraki 2 2. satır demek..Peki txt’de tek tek nasıl okuturuz 1 den başlayıp devam ederek..Ben şöle bişi düşündümbiri özelime selam yazarsa öle uzasın gitsinon *:text:*selam*:?:{if %selam == $null {.set %selam 1.msg $nick $read(selam.txt,%selam)}else {.msg $nick $read(selam.txt,%selam).inc %selam}
Kodumuz bu burdaki kodu açıklıyalımif %selam == $null {.set %selam 1.msg $nick $read(selam.txt,%selam)}Burda diyorumki eğer %selam veriablesi boşsa %selam ı 1 al ve nicke 1. satırı okuelse {.msg $nick $read(selam.txt,%selam).inc %selam}Burdada eğer boş değilse selam.txt de belirtilen satırı oku ve satır sayısını bir arttır..

Comments Yorum Yok »