[plevel 1]
hesapno
havaleyap
[function hesapno]
src.sysmessage @58,,1 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 5120 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 @58,,1 Lutfen parayi yollayacaginiz kisinin hesap nosunu yaziniz...
return 1
elseif (strmatch('<argtxt[2]>',''))
src.sysmessage @58,,1 Lutfen bir havale miktari giriniz.
return 1
elseif ((strlen(<argtxt[1]>)) > 12) || ((strlen(<argtxt[1]>)) < 4)
src.sysmessage @58,,1 Hesap nosu en fazla 12, en az 4 karakter olabilir.
return 1
elseif ((strlen(<argtxt[2]>)) > 6) || ((strlen(<argtxt[2]>)) < 5)
src.sysmessage @58,,1 Havale miktari en fazla 6, en az 5 haneli olabilir.
return 1
elseif (<IsNum <ARGTXT[2]>>==0)
src.sysmessage @58,,1 Havale miktarina sadece rakam girebilirsiniz.
return 1
elseif (<uid.<ARGTXT[1]>> == 00) || !(<uid.<ARGTXT[1]>.isplayer>)
src.sysmessage @58,,1 Boyle bir hesap no bulunmamaktadir.
return 1
elseif (<ARGTXT[1]> == <src.uid>)
src.sysmessage @58,,1 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 @48,1,1,1 Havale islemleri iptal edilmistir...
on=1
if (<src.toplampara> < <eval (<src.ctag.havalemiktar>+5000)>)
src.sysmessage @58,,1 <eval (<src.ctag.havalemiktar>+5000)> gpniz yok.(5 k havale parasidir)
return 1
endif
src.parayikes <eval <src.ctag.havalemiktar>+5000>
src.sysmessage @58,,1 <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 @58,,1 <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
[function toplampara]
RETURN <eval (<src.rescount.i_gold>+<src.findlayer.29.rescount.i_gold>)>
Nowanka : @DC-Game
Bircok Dilde Parantezlere Dikkat Edilir Bunu El Alıskanlıgı Yaparsan Sphere Script Dısındaki Dillerde Sıkıtı Cekebilirsin..
[function toplamgold]
local.player=<eval <rescount i_gold>+<findlayer.29.rescount i_gold>>
local.tmp=<obj>
var.gold_house=0
obj=<uid>
FORCHARMEMORYTYPE 0100
IF (<LINK.TYPE>==t_multi) || (<LINK.TYPE>==t_ship)
LINK.TOTALGOLD_HOUSE
ENDIF
ENDFOR
LOCAL.GOLD_HOUSE=<VAR.GOLD_HOUSE>
VAR.GOLD_HOUSE=
OBJ=<LOCAL.TMP>
RETURN <EVAL <LOCAL.PLAYER>+<LOCAL.GOLD_HOUSE>>
[plevel 1]
itemaktar
[function itemaktar]
dialogclose d_char_list
dialog d_char_list
[dialog d_char_list]
230,130
PAGE 0
resizepic 0 0 5120 310 280
resizepic 12 10 3000 290 260
dtext 20 20 1153 <serv.name> item transfer menusu
dtext 20 50 1153 Hangi karaktere item aktarilacak?
for 0 <eval <account.chars>-1>
dtext 65 <eval (<dlocal._for>*30)+90> 025 <account.char.<dlocal._for>.name>
endfor
for 1 <account.chars>
button 30 <eval (<dlocal._for>*30)+60> 4020 4022 1 0 <dlocal._for>
endfor
[dialog d_char_list button]
on=0
sysmessage @58,,1 Item aktarmaktan vazgectiniz..
on=1 5
if (<src.account.char.<eval <argn>-1>.uid> == <src.uid>)
src.sysmessage @58,,1 Bagli oldugunuz karakterinize item yollayamazsiniz...
return 1
endif
try ctag.<src.account.name><eval <argn>-1> <src.account.char.<eval <argn>-1>.uid>
targetf item_at <eval <argn>-1>
src.sysmessage @58,,1 hangi itemi aticaksiniz?
buraya kdr sorun yok fakat brda sonra cıkan targeti herhangı bir itemın uzerıne getirip tıkladıgımda sadece item yoluyabilirsiniz diyor ordaki
if !(<obj.isitem>) bu kodu isitem'i isnpc olarak degıstırdım yıne olmadı bunada bi yardımcı olursanız cok sevınıerım saygılarımla...
[function item_at]
obj=<argo>
if !(<obj.isitem>)
src.sysmessage @58,,1 Sadece item yollayabilirsiniz...
return 1
endif
if (<src.findlayer.29.uid> == <obj.cont.uid>)
obj.cont <uid.<ctag.<account.name><argn>>.findlayer.29.uid>
update
src.sysmessage @58,,1 Tebrikler, <account.char.<argn>.name>'e <obj.amount> adet <obj.name> yolladiniz...
else
src.sysmessage @58,,1 Sadece bankanizdaki itemleri yollayabilirsiniz..
return 1
endif
// 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
[DEFNAME havale]
cmoney i_gold