Начало | IRC HELP | IRC ФОРУМ | HTML Chat | Вход

от: DJ_Halou (регистриран)

Писането на такива скриптове става по принцип в едитора зададен в самия mIRC, но въпреки всичко това не е единствения начин.....аз съм писал и на mEditor otdelen oT mirc, Programers notepad и разбира се програмата на която може да се пише всичко.....Notepad :)) Такам по принцип след като се напише скрипта се съхранява (save) вав файл с разширение "mrc" или "ini" но въпреки всичко на mIRC не пречи да бъдат записани и в други формати....

Да минем към самия скрипт.......

Нека започнем с това....сложете това

慲摮浯ܰ瘀牥楳湯敔湬瑥映牯䠠捡敫獲⸮⸮祭睯Ů㄀潰異Ű㄀

в един фаил vchanger.dat и си го сложете някъде из директорията на mIRC

След това си саздаите фаила aIRCversions.txt
В които ще си пишете VERSION replys

И накрая най-важното...


;Естествено че като всички газари ще си сложим в скрипта част която при зареждане на самия add-on ще си изписва че сме го писали нии:)
on *:LOAD: {
echo -a *** Version changer addon loaded.
echo -a *** Read vchanger.txt for more info.
var %q = $input(Would you like a popup to the menubar? You'll have to type /cversion if you dont add it!,40)
if (%q == $yes) {
vchanger.s popup 1
}
;on *:LOAD: се използва като event(събитие) при което ще се случи дадено действие в случая събитието е LOAD(зареждането на скрипта с команда /load -rs името_на_файла.ini)
;echo се ползва за отпечатване на текст които само вие ще видите.... а параметара -a слуйи за да се отпечата текста в активния прозорец.....След това е текста, който ще бъде отпечатан (вашето собщение)
;var e команда която запазва дадена променлива която се ползва от скрипта..... $imput и това ,40 ще създадат прозорче което ви изписва текста по в скобите и ви дава като вазможности "Yes" и "No"
;if е най-обикновено условие за дадено действие, в случая ако %q (променливата в която съхранихме отговора от прозорчето) е "yes" ще изпълни всички действия в {}
;За vchanger.s popup 1 ще говорим по надолу :)
}

alias new-version-reply {
if ($vchanger.s(random)) return $read($+(",$scriptdiraIRCversions.txt,"))
else { return $iif($vchanger.s(version),$ifmatch,$my-new-version-reply) }
;Ся това alias показва че това е alias script демек на по прост Български ще става дума за създаване на команда.... в случая тя е new-version-reply. Ще кажете че е много неудобна но всъшност вие ще я ползвате по опростен начин....
;$ е string това е един вид като тект които обаче варши работа в скриптовете таи като препраща към дадени функции....
;Така и тук намесваме вече и втори фаил в които ще си сахраниме различните VERSION REPLY.........
}

#ondisconnectnstart on
; Нека се уверим че не е премахнато:
on *:DISCONNECT:{
.timer -io 1 0 vchanger 1
scid $cid .debug off
window -c $+(@verch.,$cid)
}
; Нека се уверим че при стартиране работи.....
on *:START:{ vchanger 1 | vchanger.s -s }
#ondisconnectnstart end

alias vchanger.s {
if (!$hget(vchanger.s)) { hmake vchanger.s 10 | .timer 1 0 vchanger.s myown 1 }
if ($isfile($+(",$scriptdirvchanger.dat,"))) && ($hget(vchanger.s,myown) == $null) {
hload -bo vchanger.s $+(",$scriptdirvchanger.dat,")
}
if (!$1) return 1
if ($isid) return $hget(vchanger.s,$$1)
else {
if ($1 == -s) hsave -bo vchanger.s $+(",$scriptdirvchanger.dat,")
else { hadd vchanger.s $$1 $2- }
}
}

alias vchanger {
; Ако първия параметър съществува и не е "0" ...
if ($1) {
; виж нагоре.
.enable #ondisconnectnstart
; Активираме таймера които проверява получените ctcp's
; Можете да го промените но според мен 0,3 секунди е добре....
.timer..vchanger -iom 0 300 vchanger.checkctcps
}
else {
.disable #ondisconnectnstart
.timer..vchanger off
var %cid = 1, %cid.cnt = 0
if (!$scid(0)) return
while (%cid.cnt < $scid(0)) {
if ($scid(%cid)) { inc %cid.cnt
; Изключва DEBUG и ignores за всички сварзвания със сървар
; Да ние /ignore всичко и показваме информацията на raw server-а
; дето получаваме CTCPs, но не отговаряме.
scid %cid
.debug off
.ignore -rtw *!*@*
window -c $+(@verch.,%cid)
}
inc %cid
}
}
}

on *:UNLOAD: {
;Трябва да сме сигурни че не остават разни $#!t-ни след като сме премахнали add-ona от скрипта си.
.remove $scriptdirvchanger.dat
hfree -w vchanger.s
vchanger
echo -s *** Unloaded the version changer addon.
}

alias vchanger.ignore {
; Това е нещо като номер за да запазим нормалния игнор лист след като сме задали *!*@*
if ($ignore(*!*@*)) { .ignore -rtw *!*@* | .timer 1 0 scid $cid .ignore -tw *!*@* | return $ignore($1-).type }
else { return $ignore($1-).type }
}


; Това проверява за пратени ctcp's

alias vchanger.checkctcps {
var %cid = 1, %cid.cnt = 0, %tmpwin, %i, %line, %ctcp, %addr, %verch
;Ако не сме свързани със сървар защо да проверяваме матеряла???
if (!$scid(0)) return
%cid.cnt = $scon(0)
.ignore -tw *
while (%cid.cnt) {
%cid = $scon(%cid.cnt)
dec %cid.cnt
if ($scid(%cid)) {
if (!$window($+(@verch.,%cid))) {
window -h $+(@verch.,%cid)
scid %cid .debug $+(@verch.,%cid)
}
%verch = @verch. $+ %cid
%i = 1
while ($line(%verch,%i)) {
tokenize 32 $ifmatch
if ($1 ==

Мнения от посетители (3):
dzver13.01.05 11:13:30
довечера ще проверя и щи кажа...

dzver13.01.05 11:13:13
хмм не знам що

DJ_Halou12.01.05 23:12:21
Mnogo s1jelqvam
Sega vijdam 4e poradi pri4ini nezavise6ti ot men ne se e sabral celiq script........... pls help
:P

Anonymous comments are temporary disabled

  Copyright: ShakeIT IRC; dev: dzver; des: metala. Read blogs.  
eXTReMe Tracker