[u]Not:sistem 56b için yazılmıştır.56 harici versionlarda sorun yaratabilir....[/u]
Havale sistemi bir oyuncunun baska bir oyuncuya gold yollamasını sağlar...Her oyuncunun bir hesap nosu vardır. .hesapno komutu ile hesapnosunu ogrenebilir...Kişi havale yapabilmek için havale yapacağı kişinin hesap nosunu bilmek zorundadır... .havaleyap komutu ile menu acilir ve havale islemlerini başlatır.Havale için kesilen ekstra ücret 5000 altındır...Buyrun sistemden ssler;
http://img107.imageshack.us/img107/2333/asdasadnm5.jpg
[url=http://img107.imageshack.us/my.php?image=asdasadnm5.jpg]Buyuk[/url]
http://img50.imageshack.us/img50/8822/havale2gf9.jpg
[url=http://img50.imageshack.us/my.php?image=havale2gf9.jpg]Buyuk[/url]
Ve sistemin kodlaması;
// By Michaell
[plevel 1]
hesapno
havaleyap
[function hesapno]
src.sysmessage @1153 Hesap Nonuz: <src.uid>
return 1
[function havaleyap]
dialogclose d_havale
dialog d_havale
[dialog d_havale]
120,301
PAGE 0
noclose
nomove
resizepic 0 0 5120 520 180
resizepic 93 66 3000 120 25
resizepic 357 66 3000 120 25
dtextentry 97 70 105 105 1153 1
dtextentry 361 70 105 105 1153 2
dtext 10 10 024 <serv.name> havale sistemine hos geldiniz
dtext 10 30 024 Lutfen havale bilgilerini giriniz
dtext 17 68 024 Hesap no:
dtext 237 68 024 Havale miktari:
dtext 145 120 024 Havale et
dtext 339 120 024 Iptal et
button 305 119 4017 4019 1 0 0
button 110 120 4020 4022 1 0 1
[dialog d_havale button]
on=0
src.sysmessage @026 Havale yapmaktan vazgectiniz...
on=1
if (strmatch('<argtxt[1]>',''))
src.sysmessage @1153 Lutfen parayi yollayacaginiz kisinin hesap nosunu yaziniz...
return 1
elseif (strmatch('<argtxt[2]>',''))
src.sysmessage @1153 Lutfen bir havale miktari giriniz.
return 1
elseif ((strlen(<argtxt[1]>)) > 12) || ((strlen(<argtxt[1]>)) < 4)
src.sysmessage @1153 Hesap nosu en fazla 12, en az 4 karakter olabilir.
return 1
elseif ((strlen(<argtxt[2]>)) > 6) || ((strlen(<argtxt[2]>)) < 5)
src.sysmessage @1153 Havale miktari en fazla 6, en az 5 haneli olabilir.
return 1
elseif (<IsNum <ARGTXT[2]>>==0)
src.sysmessage @1153 Havale miktarina sadece rakam girebilirsiniz.
return 1
elseif (<uid.<ARGTXT[1]>> == 00) || !(<uid.<ARGTXT[1]>.isplayer>)
src.sysmessage @1153 Boyle bir hesap no bulunmamaktadir.
return 1
elseif (<ARGTXT[1]> == <src.uid>)
src.sysmessage @1153 Kendi kendinize havale yapamazsiniz
return 1
endif
src.ctag.hesapnosu <argtxt[1]>
src.ctag.havalemiktar <eval <argtxt[2]>>
src.dialogclose d_havaleyi_sor
src.dialog d_havaleyi_sor
return 1
[dialog d_havaleyi_sor]
200,180
page 0
noclose
nomove
resizepic 0 0 5120 310 170
resizepic 12 10 3000 290 150
dtext 20 20 1153 <uid.<src.ctag.hesapnosu>.name> isimli kisiye,
dtext 20 40 1153 <eval <src.ctag.havalemiktar>> gp gondermek istiyormusunuz?
dtext 20 130 025 Havale ucreti 5k dir.
dtext 55 91 048 Evet
dtext 155 91 025 Hayir
button 20 89 4020 4022 1 0 1
button 120 89 4017 4019 1 0 0
[dialog d_havaleyi_sor button]
on=0
src.sysmessage @026 Havale islemleri iptal edilmistir...
on=1
if (<src.toplampara> < <eval (<src.ctag.havalemiktar>+5000)>)
src.sysmessage @1153 <eval (<src.ctag.havalemiktar>+5000)> gpniz yok.(5 k havale parasidir)
return 1
endif
src.parayikes <eval <src.ctag.havalemiktar>+5000>
src.sysmessage @1153 <eval <src.ctag.havalemiktar>> gp, <uid.<src.ctag.hesapnosu>.name> isimli kisiye gonderilmistir.
try uid.<src.ctag.hesapnosu>.parayiyolla <eval <src.ctag.havalemiktar>>
try uid.<src.ctag.hesapnosu>.sysmessage @1153 <src.name> isimli kisi size <eval <src.ctag.havalemiktar>> gp havale etmistir.Paraniz bankanizdadir.
return 1
[FUNCTION parayikes]
IF (<toplampara> < <ARGN1>)
RETURN 1
ENDIF
LOCAL.AMOUNT=<ARGN1>
WHILE (<LOCAL.AMOUNT>)
IF (0<FINDLAYER.21.FINDID.i_gold>)
LOCAL.GOLD=<FINDLAYER.21.FINDID.i_gold.amount>
IF (<EVAL <LOCAL.AMOUNT>-<LOCAL.GOLD>> < 0)
FINDLAYER.21.FINDID.i_gold.AMOUNT -= <LOCAL.AMOUNT>
LOCAL.AMOUNT=0
ELSE
FINDLAYER.21.FINDID.i_gold.remove
LOCAL.AMOUNT -= <LOCAL.GOLD>
ENDIF
ELIF (0<FINDLAYER.29.FINDID.i_gold>)
LOCAL.GOLD=<FINDLAYER.29.FINDID.i_gold.amount>
IF (<EVAL <LOCAL.AMOUNT>-<LOCAL.GOLD>> < 0)
FINDLAYER.29.FINDID.i_gold.AMOUNT -= <LOCAL.AMOUNT>
LOCAL.AMOUNT=0
ELSE
FINDLAYER.29.FINDID.i_gold.remove
LOCAL.AMOUNT -= <LOCAL.GOLD>
ENDIF
ENDIF
ENDWHILE
UPDATE
[function toplampara]
RETURN <eval <rescount <def.cmoney>>+<findlayer.29.rescount <def.cmoney>>>
[FUNCTION parayiyolla]
IF (<ARGS> > 0)
serv.newitem i_gold
IF (<ARGS> > 65000)
new.amount=65000
new.cont <uid.<src.ctag.hesapnosu>.findlayer.29.uid>
parayiyolla <eval <ARGS>-<NEW.AMOUNT>>
ELSE
new.amount=<ARGS>
new.cont <uid.<src.ctag.hesapnosu>.findlayer.29.uid>
ENDIF
ENDIF
Total votes: 0
Sunucular 20 saat önce
Sunucular 3 gün önce
Sunucular 6 gün önce
Sunucular 1 hafta önce
Ultima Online 1 hafta önce
Ultima Online 3 hafta önce
Ultima Online 3 hafta önce
Sphere Scripting 3 hafta önce
Ultima Online 3 hafta önce
Off Topic 1 ay önce
Sunucular 1 ay önce
2024-10-31 22:47
2024-10-14 17:45
2024-09-26 14:21
2024-07-08 22:50
2024-07-08 22:34
2024-06-19 22:05
2024-06-01 02:19
2024-05-31 21:17
Yorumlar (0)