Yazar:Alcholic

Açıklama: Stoneda satılmasını istediğiniz itemları zone_1 zone_2 şeklinde ayarlıycaksınız. ilk idsi sonra bir space ve fiyatı ve sonra virgül koycaksınız.


[defname stone_items]
zone_1 = i_katana_Vanq 10000,i_Spear_vanq 10000,i_Scimitar_vanq 10000,i_Bow_vanq 10000,i_Crossbow_vanq 10000
zone_2 = i_potion_healgreat 0,i_potion_curegreat 0,i_bandage 0,i_potion_refreshtotal 0,i_potion_poisondeadly 0

stonenizin dclick kısmını aşağıdaki gibi ayarlarsanız tek stone scripti ve menüsüyle tüm itemleri ayarlayabilirsiniz.

ON=@dclick
if (<tag0.potionstone>=1)
src.tag0.zonenum 2
elif (<tag0.weaponstone>=1)
src.tag0.zonenum 1
-
-
-
endif


[DIALOG d_itemstone]
0, 0
PAGE 0
resizepic 262 64 5120 230 320
resizepic 268 69 3000 220 310
dtext 289 83 32 <serv.servname> Silah Menusu
for 0 <eval <f_array <def.zones>>-1>
dhtmlgump 315 <eval 120+<hval <dlocal._for>*30>> 250 25 0 0 <def.l1><def.r1><def.bfont_white> <serv.itemdef.<f_array_item <def.zone_<src.dtag0.zonenum>>, <eval <dlocal._for> + 1>>.name>
button 296 <eval 120+<hval <dlocal._for>*30>> 2714 2715 1 0 <dlocal._for>
endfor

[dialog d_itemstone button]
ON=0,999
if (<src.gold> >= <streat <f_array_item <def.zone_<src.dtag0.zonenum>>, <eval <dargn> + 1>>>)
serv.b @,,1 <serv.itemdef.<f_array_item <def.zone_<src.dtag0.zonenum>>, <eval <dargn> + 1>>.name>
serv.newitem <strarg <f_array_item <def.zone_<src.dtag0.zonenum>>>,1,<src.uid>
src.gold -=<streat <f_array_item <def.zone_<src.dtag0.zonenum>>, <eval <dargn> + 1>>
else
src.sys_error <streat <f_array_item <def.zone_<src.dtag0.zonenum>>, <eval <dargn> + 1>>> altına ihtiyacınız var.
return 1
endif

[FUNCTION f_array]
return <dargv> // burda bir nevi virgülleri sayıyoruz.

[FUNCTION f_array_item]
local.temp = <argv[<eval <argv> - 1>]> -1 // forla gelen fazlalığı aldk.
return <argv[<dlocal.temp>]>
Novice
0.1
Array kullanımına güzel bir örnek teşkil etmekte. Başarılı bir kodlama.

Üye Ol veya Giriş Yap

Bu forum başlığına mesaj atmak istiyorsanız hemen üye olun veya giriş yapın.

Benzer Konular