UO-Developer.com olarak uzun zamandır üzerinde çalıştığımız en önemli projelerden birini gururla duyuruyoruz. Artık Ultima Online Araçlar adresinde, hem Ultima Online oyuncuları hem de shard geliştiricileri için özel olarak tasarlanmış 52 araçlık kapsamlı bir merkez hizmete girdi.
Forum, rehber ve içeriklerde ara. Sonuçlar Google arama sayfasında listelenir.
|
|
| 1 misafir, 0 üye : --- |


//////////////////////////GOREV////////////////////////////
[ITEMDEF i_champion_idol]
ID=01f18
TYPE=T_NORMAL
DEFNAME=i_champion_idol
NAME=Champion Idol
ON=@Create
ATTR=ATTR_MOVE_NEVER
color 0bae
tag soulstone1 0
ON=@Dclick
if (<tag0.soulstone> = 0)
src.sysmessage @080a [4] Soul Stone Ihtiyaciniz Var.
return 1
endif
if (<tag0.soulstone> = 1)
src.sysmessage @080a [3] Soul Stone Ihtiyaciniz Var.
return 1
endif
if (<tag0.soulstone> = 2)
src.sysmessage @080a [2] Soul Stone Ihtiyaciniz Var.
return 1
endif
if (<tag0.soulstone> = 3)
src.sysmessage @080a [1] Soul Stone Ihtiyaciniz Var.
return 1
endif
if (<tag0.soulstone> = 4)
src.sysmessage @080a Aktif !
src.newitem i_azmoal_gate
src.act.color 080a
src.act.name [ Azmoal ]
src.act.p 5731,1255,-23
src.act.timer 60
src.newnpc c_azmoal
src.act.p 4588,2397,10
tag.soulstone 0
src.events +e_azmoal
return 1
endif
ON=@click
if (<tag0.soulstone> = 0)
message @077a [ Deactive 4/0]
endif
if (<tag0.soulstone> = 1)
message @077a [ Deactive 4/1]
endif
if (<tag0.soulstone> = 2)
message @077a [ Deactive 4/2]
endif
if (<tag0.soulstone> = 3)
message @077a [ Deactive 4/3]
endif
if (<tag0.soulstone> = 4)
message @077a [ Aktif 4/4]
endif
[ITEMDEF i_azmoal_gate]
ID=i_moongate_red
NAME=Azmoal
ON=@Create
COLOR=080a
timer 60
ON=@timer
remove
ON=@Step
if (<src.isevent.e_azmoal>)
SRC.GO 4567,2395,10
return 1
else
src.sysmessage @077a Gate Sadece Soul Stone Yerlestiren Kisi Girebilir.
endif
ON=@click
message @1152 [<timer>]
[ITEMDEF i_azmoal_gates]
ID=i_moongate_red
NAME=Azmoal
ON=@Create
COLOR=080a
timer 60
ON=@timer
remove
ON=@Step
SRC.GO <morep>
src.events -e_azmoal
ON=@click
message @1152 [<timer>]
[EVENTS e_azmoal]
ON=@spellcast
IF ((<ARGN>==45))
src.sysmessage @077a [ Burda Bu Spell Kullanamazsiniz ]
SRC.ACTION -1
RETURN 1
ENDIF
IF ((<FINDLAYER.layer_special.BASEID>==i_x_RBDELAY) || (<FINDLAYER.55.BASEID>==i_gate_timer))
RunebookFizzle
src.sysmessage @077a [ Burda Bu Spell Kullanamazsiniz ]
return 1
ENDIF
[ITEMDEF i_soul_stone]
ID 7955
TYPE t_normal
name Soul Stone
ON=@create
color 080a
on=@Dclick
IF !(<src.RESTEST i_soul_stone>)
src.sysmessage @38,,1 Hata: Soul Stone'un Cantanizda Olmasi Gerekiyor.
return 1
else
If (<topobj.uid> != <src.uid>)
src.sysmessage @38,,1 Bu eşyayı sadece cantanizdayken kullanabilirsiniz.
return 1
endif
target Champion Skull Seciniz ?
return 1
endif
ON=@TARGON_CHAR
RETURN 1
ON=@TARGON_GROUND
RETURN 1
ON=@TARGON_ITEM
if ((<src.targ.baseid>=i_champion_idol) && (<src.targ.tag0.soulstone> = 0)
SRC.targ.tag.soulstone 1
SRC.SYSMESSAGE @1153 Complete.
src.consume 1 i_soul_stone
src.update
RETURN 1
endif
if ((<src.targ.baseid>=i_champion_idol) && (<src.targ.tag0.soulstone> = 1)
SRC.targ.tag.soulstone 2
SRC.SYSMESSAGE @1153 Complete.
src.consume 1 i_soul_stone
src.update
RETURN 1
endif
if ((<src.targ.baseid>=i_champion_idol) && (<src.targ.tag0.soulstone> = 2)
SRC.targ.tag.soulstone 3
SRC.SYSMESSAGE @1153 Complete.
src.consume 1 i_soul_stone
src.update
RETURN 1
endif
if ((<src.targ.baseid>=i_champion_idol) && (<src.targ.tag0.soulstone> = 3)
SRC.targ.tag.soulstone 4
SRC.SYSMESSAGE @1153 Complete.
src.consume 1 i_soul_stone
src.update
RETURN 1
endif
[CHARDEF c_azmoal]
id 064
NAME=Azmoal
ICON=i_pet_dragon
ARMOR=20
DAM=5
CAN=MT_WALK|MT_RUN
CATEGORY=BEEPK NPCS
DESCRIPTION=azmoal
ON=@CREATE
Tag.name.hue 096
Events=+e_npc
STR=2500
DEX=200
INT=1
FAME=2500
KARMA=-10000
EVENTS=+e_poison_immune
SWORDSMANSHIP 1
TACTICS 1
MAGERY 0
HIDING 0
STEALTH 0
ON=@click
message @1153,,1 [Str = <str> Dex = <dex>]
ON=@npcrestock
ITEM=azmoal_loot
ON=@deathcorpse
act.go themis town
ref1=<attacker.max>
ref2=<argo>
for <eval <ref2.rescount>-1> 0
ref3=<ref2.findcont.<dlocal._for>>
ref3.cont <ref1.findlayer.21>
endfor
[TEMPLATE azmoal_loot]
container=i_bag
color=07a1
item= { i_bleeding_upgrade 1 i_stunblow_upgrade 1 i_moveback_upgrade 1},R2
item=i_gold,50000
//////////////////////////UPGRADE SILAH////////////////////////////
[ITEMDEF i_bleeding_upgrade]
Id 2074
name Bleeding Upgrade
type t_script
value 20000
on=@Create
attr 00
on=@Click
message @60 [<name>]
return 1
on=@Dclick
IF !(<src.RESTEST i_bleeding_upgrade>)
src.sysmessage @38,,1 Hata: Upgrade Cantanizda Olmasi Gerekiyor.
return 1
else
If (<topobj.uid> != <src.uid>)
src.sysmessage @38,,1 Bu eşyayı sadece cantanizdayken kullanabilirsiniz.
return 1
endif
target Silahi Seciniz ?
return 1
endif
ON=@TARGON_CHAR
RETURN 1
ON=@TARGON_GROUND
RETURN 1
ON=@TARGON_ITEM
if ((<src.targ.isweapon>) && (<src.targ.tag0.bleedingvar>=0) && (<src.targ.tag0.stunblowvar>=0) && (<src.targ.tag0.movebackvar>=0)
SRC.targ.tag.bleedingvar 1
SRC.SYSMESSAGE @1153 Complete.
REMOVE
RETURN 1
ELSE
SRC.SYSMESSAGE @1153 Hata !!
RETURN 1
ENDIF
ELSE
SRC.SYSMESSAGE @1153 Kullanim Hatasi
RETURN 1
ENDIF
///////////////BLEEDİNG///////////
[events e_gorev_bleed]
On=@Hit
if !(RAND(15)) && !(<src.findid.i_gorev_bleed1>) && !(<src.findid.i_gorev_bleed2>)
src.HITS= (<src.HITS>+(-50))
src.skill fail
var.act <src.act.uid>
src.newitem i_gorev_bleed1
src.act.equip
src.newitem i_gorev_bleed2
src.act.equip
src.act <var.act>
src.yara_message
return 1
endif
[function yara_message]
dorand 4
src.sayua 145,6,6,0 * Kolunuz Kesilir *
src.sayua 145,6,6,0 * Bacağınız Kesilir *
src.sayua 145,6,6,0 * Eliniz Kesilir *
src.sayua 145,6,6,0 * Vicudunuzda Yara Açar *
enddo
[events e_bleed]
On=[url=u-death-9220.html]@death[/url]
findid.i_gorev_bleed1.remove
findid.i_gorev_bleed2.remove
[itemdef i_gorev_bleed1]
name=yaralanir
id=i_gold
type=t_eq_script
weight=0
layer=layer_special
On=@Equip
src.events +e_bleed
timer 5
on=[url=u-death-9220.html]@death[/url]
src.events e_bleed
On=@UnEquip
cont.events -e_bleed
if !(<cont.flags>&statf_dead)
endif
On=@Timer
if (<cont>)
IF (<cont.NPC>==0)
timer 7
cont.sayua 60,6,6,0 * Kan Kaybeder *
cont.skill fail
cont.anim 20
cont.HITS= (<cont.HITS>+(-50))
cont.skill fail
else
timer 5
cont.sayua 60,6,6,0 * [NPC] Kan Kaybeder *
cont.skill fail
cont.anim 20
cont.HITS= (<cont.HITS>+(-125))
cont.skill fail
endif
return 1
[itemdef i_gorev_bleed2]
name=yaraniz kapanir
id=i_gold
type=t_eq_script
weight=0
layer=layer_special
On=@Equip
src.events +e_bleed
timer 42
On=@UnEquip
cont.events -e_bleed
if !(<cont.flags>&statf_dead)
endif
On=@Timer
if (<cont>)
cont.sayua 075f,6,6,0 * Yarasi Kapanir *
cont.findid.i_gorev_bleed1.remove
attr attr_decay
remove
return 1
endif
////////////////////////////////////////////////////////
[ITEMDEF i_stunblow_upgrade]
Id 2075
name Stunblow Upgrade
type t_script
value 20000
on=@Create
attr 00
on=@Click
message @60 [<name>]
return 1
on=@Dclick
IF !(<src.RESTEST i_stunblow_upgrade>)
src.sysmessage @38,,1 Hata: Upgrade Cantanizda Olmasi Gerekiyor.
return 1
else
If (<topobj.uid> != <src.uid>)
src.sysmessage @38,,1 Bu eşyayı sadece cantanizdayken kullanabilirsiniz.
return 1
endif
target Silahi Seciniz ?
return 1
endif
ON=@TARGON_CHAR
RETURN 1
ON=@TARGON_GROUND
RETURN 1
ON=@TARGON_ITEM
if ((<src.targ.isweapon>) && (<src.targ.tag0.stunblowvar>=0) && (<src.targ.tag0.bleedingvar>=0) && (<src.targ.tag0.movebackvar>=0)
SRC.targ.tag.stunblowvar 1
SRC.SYSMESSAGE @1153 Complete.
REMOVE
RETURN 1
ELSE
SRC.SYSMESSAGE @1153 Hata !!
RETURN 1
ENDIF
ELSE
SRC.SYSMESSAGE @1153 Kullanim Hatasi
RETURN 1
ENDIF
/////////////////////stunblow//////////////////////////
[events e_sersemletme]
ON=@Hittry
if !(RAND(18)) && !(<src.findid.i_sersemledin>)
src.damage {20 30}
src.skill fail
var.act <src.act.uid>
src.newitem i_sersemledin
src.act.equip
src.act <var.act>
src.act.timer 1
src.sayua 0800,0,0,0 * Bayılır *
src.anim 24
return 1
endif
[itemdef i_sersemledin]
name=sersem itemi
id=i_memory
type=t_eq_script
layer=layer_special
on=@create
attr=attr_decay | attr_newbie
on=@equip
timer 2
SRC.FLAGS=<SRC.FLAGS>|04
on=@timer
cont.flags=<cont.FLAGS>&~04
cont.sayua 145,6,6,0 * Kendine Gelir *
remove
return 1
///////////////////////////////////////////////
[ITEMDEF i_moveback_upgrade]
Id 2076
name Moveback Upgrade
type t_script
value 20000
on=@Create
attr 00
on=@Click
message @60 [<name>]
return 1
on=@Dclick
IF !(<src.RESTEST i_moveback_upgrade>)
src.sysmessage @38,,1 Hata: Upgrade Cantanizda Olmasi Gerekiyor.
return 1
else
If (<topobj.uid> != <src.uid>)
src.sysmessage @38,,1 Bu eşyayı sadece cantanizdayken kullanabilirsiniz.
return 1
endif
target Silahi Seciniz ?
return 1
endif
ON=@TARGON_CHAR
RETURN 1
ON=@TARGON_GROUND
RETURN 1
ON=@TARGON_ITEM
if ((<src.targ.isweapon>) && (<src.targ.tag0.movebackvar>=0) && (<src.targ.tag0.bleedingvar>=0) && (<src.targ.tag0.stunblowvar>=0)
SRC.targ.tag.movebackvar 1
SRC.SYSMESSAGE @1153 Complete.
REMOVE
RETURN 1
ELSE
SRC.SYSMESSAGE @1153 Hata !!
RETURN 1
ENDIF
ELSE
SRC.SYSMESSAGE @1153 Kullanim Hatasi
RETURN 1
ENDIF
////////////////////MoveBack
[function moveback]
doswitch <src.dir>
begin
if (<src.canmove s>)
src.move s
endif
end
begin
if (<src.canmove sw>)
src.move sw
endif
end
begin
if (<src.canmove w>)
src.move w
endif
end
begin
if (<src.canmove nw>)
src.move nw
endif
end
begin
if (<src.canmove n>)
src.move n
endif
end
begin
if (<src.canmove ne>)
src.move ne
endif
end
begin
if (<src.canmove e>)
src.move e
endif
end
begin
if (<src.canmove se>)
src.move se
endif
end
begin
if (<src.canmove s>)
src.move s
endif
end
enddo
////////////////////Silah Örnek//////////////////////////
[ITEMDEF I_Acid_Kryss]
ID=I_Kryss
NAME=Acid Kryss
DAM=39,49
weight=1
speed 68
REQSTR=350
ON=@Click
src.sysmessage @1153,,1 [Acid Kryss: Gereken Str:350 Damage:39-49]
if (<tag0.bleedingvar>=1)
message @60 [Bleeding Upgrade]
endif
if (<tag0.stunblowvar>=1)
message @60 [Stunblow Upgrade]
endif
if (<tag0.movebackvar>=1)
message @60 [Moveback Upgrade]
endif
ON=@Create
HITPOINTS=50000
COLOR=0806
ON=@DAMAGE
if (<tag0.movebackvar>=1)
src.moveback
endif
ON=@EQUIP
if (<tag0.bleedingvar>=1)
src.events +e_bleeding
return 1
endif
if (<tag0.stunblowvar>=1)
src.events +e_stunblow
return 1
endif
return 1
ON=@UNEQUIP
if (<tag0.bleedingvar>=1)
src.events -e_bleeding
return 1
endif
if (<tag0.stunblowvar>=1)
src.events -e_stunblow
return 1
endif
[EOF]




//*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/
//
// BAŞLANGIÇ
//
//*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/
/////
/// Arrayların çalışması için gerekli komuttur silmeyin.
/////
[function dizi]
local.dizi <argv[<eval <argv> - 1>]> - 1
return <argv[<dlocal.dizi>]>
/////
/// Def. ayarlarını kendinize göre yapabilirsiniz, diğerleri bölümüne bişey eklediginizde ordaki
/// 2. virgüldeki sayıyıda arttırın nekadar eklerseniz okadar arttırın.
/// max. ekleme sınırını arttırmak içinde 1. virgüldeki sayıyı arttırabilirsiniz.
/////
[defname mat_options]
Reg 500,8,i_reag_black_pearl,i_reag_blood_moss,i_reag_garlic,i_reag_ginseng,i_reag_mandrake_root,i_reag_
nightshade,i_reag_sulfur_ash,i_reag_spider_silk // reg sayısı, regler, her regden max kaçtane
Ore 400,12,i_ore_iron,i_ore_dull_copper,i_ore_copper,i_ore_bronze,i_ore_gold,i_ore_shadow,i_ore_agapite,
i_ore_verite,i_ore_valorite,i_ore_mytheril,i_ore_bloodrock,i_ore_blackrock // ore sayısı, orelar, her oredan max kaçtane
Ingot 450,12,i_ingot_iron,i_ingot_dull_copper,i_ingot_copper,i_ingot_bronze,i_ingot_gold,i_ingot_shadow,i_
ingot_agapite,i_ingot_verite,i_ingot_valorite,i_ingot_mytheril,i_ingot_bloodrock,i_ingot_blackrock // ingot sayısı, ingotlar, her ingotdan max kaçtane
Other 750,6,i_bandage,i_potion_Healgreat,i_potion_curegreat,i_cloth,i_log,i_scroll_blank
/////
/// Ana itemimiz.
/////
[itemdef i_matbag]
id i_backpack
name Material Bag
weight 25
type t_eq_script
value 64205
ON=@Create
for 1 <dizi <def.reg>,2>
tag.reg<dlocal._for> 0
endfor
for 1 <dizi <def.ore>,2>
tag.ore<dlocal._for> 0
endfor
for 1 <dizi <def.ingot>,2>
tag.ingot<dlocal._for> 0
endfor
for 1 <dizi <def.other>,2>
tag.other<dlocal._for> 0
endfor
color 0835
attr 06
ON=@Click
message @07a1,1,1 <name>
return 1
on=@Dclick
src.matbag Reg,<uid>
return 1
/////
/// Dialog açma aparatı
/////
[function matbag]
ctag.matmenu <args>
dialogclose d_matbag_cikart
dialogclose d_matbag
dialog d_matbag
/////
/// Malzeme çıkartma ekranı
/////
[dialog d_matbag_cikart]
0,0
nomove
ref2 <dizi <ctag.matopts>,3>
local.materyal <dizi <ctag.matopts>,1>
local.sira <dizi <ctag.matopts>,2>
local.max <dizi <def.<local.materyal>>,1>
local.eklemat <dizi <ctag.matopts>,4>
resizepic 20 20 5120 310 100
resizepic 25 25 3000 300 90
resizepic 90 45 3000 38 30
dtextentry 93 50 30 20 0 0 <ref2.dtag.<local.materyal><dlocal.sira>>
dhtmlgump 35 50 100 20 0 0 <def.bfont_dred>Çantadan
dhtmlgump 135 50 200 20 0 0 <def.bfont_dred>adet <def.bfont_dgreen><serv.itemdef.<local.eklemat>.name> <def.bfont_dred>çıkart.
dhtmlgump 55 85 100 20 0 0 <def.bfont_dred>Tamam
button 35 85 56 56 1 0 1
[dialog d_matbag_cikart button]
on 1
ref2 <dizi <ctag.matopts>,3>
local.materyal <dizi <ctag.matopts>,1>
local.sira <dizi <ctag.matopts>,2>
local.max <dizi <def.<local.materyal>>,1>
local.eklemat <dizi <ctag.matopts>,4>
if !<isnum <argtxt[0]>>
sysmessage @0846,1,1 Sadece sayıları kullanabilirsiniz.
dialog d_matbag_cikart
return 1
endif
if <argtxt[0]> > <ref2.dtag.<local.materyal><dlocal.sira>>
sysmessage @0846,1,1 Çantada bukadar <serv.itemdef.<local.eklemat>.name> bulunmuyor.
dialog d_matbag_cikart
return 1
endif
timerf 1,sysmessage @0846,1,1 Material çantanızdan <dargtxt[0]> adet <serv.itemdef.<local.eklemat>.name> çıkartıldı.
serv.newitem <local.eklemat>
new.amount <argtxt[0]>
new.bounce
new.fix
ref2.tag.<local.materyal><dlocal.sira> -=<argtxt[0]>
src.matbag <local.materyal>,<ref2>
/////
/// Ana dialog'umuz zaten bundan başka dialog yok çıkartma dışında.
/////
[dialog d_matbag]
0,0
nomove
resizepic 20 20 5120 750 550
resizepic 25 25 3000 740 540
resizepic 35 55 3000 720 2
dhtmlgump 305 35 200 20 0 0 <def.bfont_size7><def.bfont_dred><serv.servname> Material Bag Sistemi
ref1 <dizi <ctag.matmenu>,2>
local.page <def.<dizi <ctag.matmenu>,1>>
local.carp 35
local.ekle 40
// bu istisnalar dialog dizaynının görüntü güzelliği için.
//istisna 1
if strmatch('<dizi <ctag.matmenu>,1>','Ore')
local.ore 1
endif
//istisna 2
if strmatch('<dizi <ctag.matmenu>,1>','Ingot')
local.ingot 1
endif
if strmatch('<dizi <ctag.matmenu>,1>','Other')
local.other 1
endif
resizepic 35 488 3000 720 2
dhtmlgump 125 518 200 20 0 0 <def.bfont_dred>Aktif Bölüm : <def.bfont_dgreen><qval (<local.other> = 1)? Diğer:<dizi <ctag.matmenu>,1>>
if strmatch('<dizi <ctag.matmenu>,1>','reg')
dhtmlgump 400 505 200 20 0 0 <def.bfont_dgray>Reg Bölümü Seçili
else
dhtmlgump 400 505 200 20 0 0 <def.bfont_dred>Reg Bölümüne Geç
button 380 505 55 55 1 0 31001
endif
if strmatch('<dizi <ctag.matmenu>,1>','Ore')
dhtmlgump 600 505 200 20 0 0 <def.bfont_dgray>Ore Bölümü Seçili
else
dhtmlgump 600 505 200 20 0 0 <def.bfont_dred>Ore Bölümüne Geç
button 580 505 55 55 1 0 31002
endif
if strmatch('<dizi <ctag.matmenu>,1>','other')
dhtmlgump 400 530 200 20 0 0 <def.bfont_dgray>Diğerleri Bölümü Seçili
else
dhtmlgump 400 530 200 20 0 0 <def.bfont_dred>Diğerleri Bölümüne Geç
button 380 530 55 55 1 0 31003
endif
if strmatch('<dizi <ctag.matmenu>,1>','ingot')
dhtmlgump 600 530 200 20 0 0 <def.bfont_dgray>Ingot Bölümü Seçili
else
dhtmlgump 600 530 200 20 0 0 <def.bfont_dred>Ingot Bölümüne Geç
button 580 530 55 55 1 0 31004
endif
for x 1 <dizi <local.page>,2>
tilepic <qval (<local.ingot> = 1)? 20:30> <eval (<dlocal.x>*<dlocal.carp>)+<dlocal.ekle>> <qval (<local.ore> = 1)? 019b8:<serv.itemdef.<dizi <local.page>,<eval <dlocal.x>+2>>.id>>
dhtmlgump 75 <eval (<dlocal.x>*<dlocal.carp>)+<eval <dlocal.ekle>+3>> 500 20 0 0 <def.bfont_dred>Materyal çantanızda <def.bfont_dgreen><ref1.dtag.<dizi <ctag.matmenu>,1><dlocal.x>> <def.bfont_dred>adet <def.bfont_dblue><serv.itemdef.<dizi <local.page>,<eval <dlocal.x>+2>>.name><def.bfont_dred> bulunmaktadır. (<def.bfont_dgreen><ref1.dtag.<dizi <ctag.matmenu>,1><dlocal.x>><def.bfont_dred>/<def.bfont_red><dizi <local.page>,1><def.bfont_dred>)
resizepic 35 <eval (<dlocal.x>*<dlocal.carp>)+<eval <dlocal.ekle>+28>> 3000 720 2
local.olan <ref1.dtag.<dizi <ctag.matmenu>,1><dlocal.x>>
local.max <dizi <local.page>,1>
local.yuzde <eval <eval <local.olan>*100> / <local.max>>
resizepic 610 <eval (<dlocal.x>*<dlocal.carp>)+<eval <dlocal.ekle>+9>> 3000 102 12
resizepic 610 <eval (<dlocal.x>*<dlocal.carp>)+<eval <dlocal.ekle>+11>> 5120 <dlocal.yuzde> 8
dhtmlgump 540 <eval (<dlocal.x>*<dlocal.carp>)+<eval <dlocal.ekle>+5>> 400 20 0 0 <def.bfont_dred> %<def.bfont_dgreen><dlocal.yuzde> <def.bfont_dred>dolu
if <local.olan> != <local.max>
button 720 <eval (<dlocal.x>*<dlocal.carp>)+<eval <dlocal.ekle>+7>> 55 55 1 0 <dlocal.x>
endif
if <local.olan> > 0
button 740 <eval (<dlocal.x>*<dlocal.carp>)+<eval <dlocal.ekle>+7>> 56 56 1 0 <eval <dlocal.x>+100>
endif
endfor
[dialog d_matbag button]
on 1 100
sysmessage @0846,1,1 Eklemek istediğiniz <serv.itemdef.<dizi <def.<dizi <ctag.matmenu>,1>>,<eval <dargn>+2>>.name> isimli materyali seçiniz.
targetf eklemat <dizi <ctag.matmenu>,1>,<dargn>,<dizi <ctag.matmenu>,2>,<dizi <def.<dizi <ctag.matmenu>,1>>,<eval <dargn>+2>>
on 101 5000
sysmessage @0846,1,1 <serv.itemdef.<dizi <def.<dizi <ctag.matmenu>,1>>,<eval <eval <dargn>-100>>+2>.name> isimli materyalden nekadar çıkartmak istediğinizi yazınız.
ctag.matopts <dizi <ctag.matmenu>,1>,<eval <dargn>-100>,<dizi <ctag.matmenu>,2>,<dizi <def.<dizi <ctag.matmenu>,1>>,<eval <eval <dargn>-100>>+2>
dialogclose d_matbag_cikart
dialog d_matbag_cikart
on 31001
matbag Reg,<dizi <ctag.matmenu>,2>
on 31002
matbag Ore,<dizi <ctag.matmenu>,2>
on 31003
matbag Other,<dizi <ctag.matmenu>,2>
on 31004
matbag Ingot,<dizi <ctag.matmenu>,2>
/////
/// burasıda malzeme ekleme olayı, bütün bölümler ve malzemeler tek bi komutta ekleniyor.
/////
[function eklemat]
ref2 <dizi <args>,3>
local.materyal <dizi <args>,1>
local.sira <dizi <args>,2>
local.max <dizi <def.<local.materyal>>,1>
local.eklemat <dizi <args>,4>
if <argo.baseid> != <local.eklemat>
src.sysmessage @0846,1,1 Bu seçtiğiniz bir <serv.itemdef.<local.eklemat>.name> değil.
targetf eklemat <dizi <args>,1>,<dizi <args>,2>,<dizi <args>,3>,<dizi <args>,4>
return 1
endif
if <argo.cont> != <src.findlayer.21.uid>
src.sysmessage @0846,1,1 Sadece çantanızdaki <serv.itemdef.<local.eklemat>.name> isimli materyalleri ekleyebilirsiniz.
targetf eklemat <dizi <args>,1>,<dizi <args>,2>,<dizi <args>,3>,<dizi <args>,4>
return 1
endif
local.eklencek <argo.amount>
if <eval <argo.amount> + <ref2.tag.<local.materyal><dlocal.sira>>> >= <dlocal.max>
local.eklencek <eval <dlocal.max>-<ref2.tag.<local.materyal><dlocal.sira>>>
timerf 1,src.sysmessage @0846,1,1 Seçtiğiniz <serv.itemdef.<local.eklemat>.name> materyalinin <eval <argo.amount>-<local.eklencek>> adet kadarı sığmadı.
endif
src.consume <local.eklemat> <local.eklencek>
timerf 1,src.sysmessage @0846,1,1 <dlocal.eklencek> adet <serv.itemdef.<local.eklemat>.name> materyali çantaya eklendi.
ref2.tag.<local.materyal><dlocal.sira> +=<dlocal.eklencek>
src.matbag <local.materyal>,<ref2>
[EOF]


[DEFNAME SETTINGS_LOTTERY]
TICKET_PRICE "20000"
TICKETS_4SALE "400" // toplam sat??a ç?kar?lan bilet miktar?
TICKET_ODUL_1 büyük ödül
TICKET_ODUL_2 normal ödül
TICKET_ODUL_3 teselli ödülü
amorti 10 // amorti yüzdesi
check_id = i_makbuz
[CHARDEF C_H_PIYANGO]
ID C_MAN
NAME #NAMES_HUMANMALE
CAN MT_wALK
ON=@CREATE
f_install_lottery
NPC=BRAIN_VENDOR
STR {25 67}
DEX {12 18}
COLOR COLORS_SKIN
ITEM=i_hair_long
COLOR 07a1
ITEM=I_ROBE
COLOR 0455
ATTR 04
ITEM=I_BOOTS_cALF
COLOR 0455
ATTR 04
ITEM=I_STAFF_BLACK
ITEM=I_APRON_HALF
COLOR 0455
ATTR 04
ON=@gethit
return 1
ON=@spelleffect
return 1
ON=[url=u-death-9220.html]@death[/url]
hits = <str>
return 1
ON=@CLICK
message @1153,,1 [Piyango Görevlisi]
MESSAGE @1153,,1 <NAME>
RETURN 1
on=@dclick
SDIALOG D_buy_ticket
RETURN 1
ON=@NPCSEENEWPLAYER
dorand 3
sayu Hey <src.name>!
say_trk <src.name> şansını denemek istemezmisin?
say_trk kolay yoldan para kazanmak istiyorsan beni arıyorsun ?
ENDDO
[DIALOG d_buy_ticket]
0,0
page 0
resizepic 31 53 2550 281 211
if !(<db.connected>)
db.connect
endif
db.query "SELECT COUNT(TicketUid) FROM game_cekilis "
db.close
dhtmlgump 90 70 200 25 0 0 <DEF.BFONT_red><serv.servname> Piyango Çekilişi
if (<var0.devreden>)
local.a (<db.row.0>*<def.ticket_price>)
local.b (<var.devreden>*<def.ticket_price>)
local.c <eval (<local.a>+<local.b>)>
else
local.c (<db.row.0>*<def.ticket_price>)
endif
dhtmlgump 75 100 200 200 0 0 <def.small><DEF.BFONT_RED><EVAL <SERV.AGE>/7>. hafta<DEF.BFONT_BLACK> çekilişinde toplam <DEF.BFONT_RED><ddef.tickets_4sale><DEF.BFONT_BLACK> bilet satışa çıkarılmıştır. Şuana kadar <DEF.BFONT_RED><ddb.row.0><DEF.BFONT_BLACK> bilet satılmış olup, şuan için büyük ödül <def.bfont_red><f_bolukayir <eval <dlocal.c>/2>><def.bfont_black>gp'ye ulaşmıştır. Bir bilet <def.bfont_Red><f_bolukayir <ddef.ticket_price>> <def.bfont_black>altındır.
dhtmlgump 80 200 200 23 0 0 <DEF.BFONT_BLACK>bir bilet satın almak istiyorum.
button 55 200 5550 5551 1 0 1
resizepic 31 280 2550 281 100
dhtmlgump 50 300 240 70 0 0 <def.small>Şuana kadar buradan alınan <def.bfont_red><REGION.DTAG0.TICKET> kupondan <def.black>toplam <def.bfont_red><region.dtag0.BigPrize> adet büyük ödül, <region.dtag0.normalprize> adet normal ödül, <region.dtag0.amortiprize><def.bfont_black> adet amorti ödülü çıkmıştır.
[DIALOG D_BUY_TICKET BUTTON]
ON=1
if <src.account.tag0.aldiklarim> == 3
src.sysh_trk Her hafta en fazla 3 adet kupon alabilirsiniz.
return 1
endif
if !(<db.connected>)
db.connect
endif
db.query "SELECT COUNT(TicketUid) as bilet FROM game_cekilis "
sysmessage @977a,,1 <db.row.0>
IF (<SRC.GOLD> < <DEF.TICKET_PRICE>)
SRC.sysh_trk yeterli paranız yok.
RETURN 1
ENDIF
IF (<DB.ROW.0.bilet> >= <DEF.TICKETS_4SALE>)
SRC.sysh_trk kuponlar tükenmiş.
RETURN 1
ENDIF
SERV.NEWITEM I_TICKET_LOTTERY,1,<SRC.UID>
DB.EXECUTE "INSERT INTO `game_cekilis` (`TicketUid` ,`ODUL`, `TicketRegion`) VALUES ('<NEW.UID>',0,'<SRC.P>');"
SRC.GOLD -=<DEF.TICKET_PRICE>
REGION.TAG0.TICKET ++
src.account.tag0.aldiklarim ++
db.close
[FUNCTION Cekilisbaslat]
if !(<db.connected>)
db.connect
endif
db.query "SELECT COUNT(TicketUid) as bilet FROM game_cekilis "
if (<db.row.0.bilet> < 10)
sysmessage @,,1 Yeterli katılım olmamış çekilişi daha sonra yapın.
return 1
endif
local.amorti = <db.row.0.bilet>
LOCAL.GREATPRIZE <qval (<var0.devreden>)?<eval <db.row.0.bilet>+<var0.devreden>>:<db.row.0.bilet>>
IF (<R1,3> = 1)
if (<var0.devreden>)
var.devreden +=<eval <db.row.0.bilet>/2>
else
var.devreden <eval <db.row.0.bilet>/2>
endif
serv.newitem i_gold
LOCAL.SERIAL <EVAL STRLEN(<NEW.UID>)>
serv.allclients sound 247
serv.allclients sysmessage @07a0,,1 Nimloth <eval <serv.age>/7>.hafta çekilişinde büyük ödül <STRSUB <EVAL (<LOCAL.SERIAL>-4)> <DLOCAL.SERIAL> <NEW.UID>> nolu bilete çıkmıştır. Bu bilet satın alınmadığı için çekiliş haftaya devretmiştir.
serv.allclients sysmessage @07a0,,1 Amorti ödüllü kazananlar ödüllerini bayilerimizden alabilirler
new.remove
else
DB.query "select * from game_cekilis WHERE ODUl= 0 order by rand() limit 1"
SERV.NEWITEM I_GOLD
NEW.P <DB.ROW.0.TicketRegion>
LOCAL.SERIAL <EVAL STRLEN(<db.row.0.TicketUid>)>
serv.allclients sound 247
serv.allclients sysmessage @07a0,,1 Bu haftaki buyuk ikramiyeyi kazanan kupon <new.region.name> şehrinden alınan <STRSUB <EVAL (<LOCAL.SERIAL>-4)> <DLOCAL.SERIAL> <db.row.0.TicketUid>> numaralı kupon olmuştur. Kazanan oyuncuyu tebrik ediyoruz.
DB.EXECUTE "UPDATE game_cekilis SET ODUL=1 WHERE TicketUid='<DB.ROW.0.TicketUid>'"
UID.<DB.ROW.0.TicketUid>.COLOR 07AD
UID.<DB.ROW.0.TicketUid>.MOREY (<LOCAL.GREATPRIZE>/2)
NEW.REGION.TAG0.BigPrize ++
NEW.REMOVE
var.devreden
endif
/////////////////////////////////////////////////////////////////////////////////////
DB.query "select * from game_cekilis WHERE ODUl= 0 order by rand() limit 2"
UID.<DB.ROW.0.TicketUid>.COLOR 0810
UID.<DB.ROW.1.TicketUid>.COLOR 0810
DB.EXECUTE "UPDATE game_cekilis SET ODUL=2 WHERE TicketUid='<DB.ROW.0.TicketUid>'"
DB.EXECUTE "UPDATE game_cekilis SET ODUL=2 WHERE TicketUid='<DB.ROW.1.TicketUid>'"
UID.<DB.ROW.0.TicketUid>.MOREY (<LOCAL.GREATPRIZE>/5)
UID.<DB.ROW.1.TicketUid>.MOREY (<LOCAL.GREATPRIZE>/5)
SERV.NEWITEM I_GOLD
NEW.P <DB.ROW.0.TicketRegion>
NEW.REGION.TAG0.NormalPrize ++
NEW.P <DB.ROW.1.TicketRegion>
NEW.REGION.TAG0.NormalPrize ++
NEW.REMOVE
/////////////////////////////////////////////////////////////////////////////////////////
DB.query "select * from game_cekilis WHERE ODUl= 0 order by rand() limit <f_yuzde <def.amorti>,<dlocal.amorti>>"
FOR 0 <EVAL <DB.ROW.NUMROWS>-1>
UID.<DB.ROW.<DLOCAL._FOR>.TicketUid>.COLOR 080A
UID.<DB.ROW.<DLOCAL._FOR>.TicketUid>.morey = 1
DB.EXECUTE "UPDATE game_cekilis SET ODUL=3 WHERE TicketUid='<DB.ROW.<DLOCAL._fOR>.TicketUid>'"
SERV.NEWITEM I_GOLD
NEW.P <DB.ROW.<DLOCAL._FOR>.TicketRegion>
NEW.REGION.TAG0.AmortiPrize ++
NEW.REMOVE
ENDFOR
////////////////////////////////////////////////////////////////////////////////////////////////////
DB.QUERY "SELECT TicketUid FROM game_cekilis WHERE ODUL= 0 "
FOR 0 <eval <DB.ROW.NUMROWS>-1>
UID.<DB.ROW.<DLOCAL._FOR>.TicketUid>.REMOVE
ENDFOR
db.close
cleandatabase game_cekilis
for 0 <eval <serv.accounts>-1>
serv.account.<dlocal._for>.tag0.aldiklarim =
endfor
endif
[ITEMDEF I_TICKET_LOTTERY]
ID I_DEED
NAME piyango kuponu
WEIGHT 12
TYPE T_SCRIPT
ON=@CREATE
ATTR ATTR_NEWBIE
COLOR 02e2
ON=@CLICK
LOCAL.SERIAL <EVAL STRLEN(<UID>)>
IF (<MOREY>)
MESSAGE @,,1 [<f_bolukayir <EVAL <MOREY>*<DEF.TICKET_PRICE>>>]
endif
MESSAGE @63 [Bilet No :<STRSUB <EVAL (<LOCAL.SERIAL>-4)> <DLOCAL.SERIAL> <UID>>]
message piyango kuponu
return 1
ON=@DCLICK
IF !(<color>=02e2)
TARGET @,,1 biletinizi bozdurmak istediginiz görevliyi seçin ?
return 1
endif
src.sysh_trk Haftalık çekilişler Pazar günü saat 19:30'da yapılır.
return 1
ON=@TARGON_CHAR
IF (<SRC.TARG.BASEID>==C_H_PIYANGO)
IF (<MOREY>)
serv.newitem <def.check_id>,1,<src.uid>
new.more1 = <EVAL <MOREY>*<DEF.TICKET_PRICE>>
new.more2 = <src.targ.uid>
SRC.SYSMESSAGE @,,1 <EVAL <MOREY>*<DEF.TICKET_PRICE>> altın bankanıza aktarılmıştır.
REMOVE
ENDIF
ELSE
SRC.SYSMESSAGE @,,1 biletinizi herhangi bir piyango bayisinden bozdurabilirsiniz.
RETURN 1
ENDIF
return 1
ON=[url=u-destroy-527.html]@destroy[/url]
if !(<db.connected>)
db.connect
endif
db.execute "delete from game_cekilis Where TicketUid = '<uid>';"
db.close
[function f_cekilis_recover]
db.query "select TicketUid from game_cekilis where Odul=0"
for 0 <eval <db.row.numrows>-1>
ref1=<db.row.<dlocal._for>.ticket_uid>
if !(<uid.<ref1.uid>>)
db.execute "delete from game_cekilis Where TicketUid = '<ref1.uid>';"
endif
endfor
[function cleandatabase]
if !(<db.connected>)
db.connect
endif
db.execute TRUNCATE TABLE `<args>`
db.close
sysh_trk <args> adlı veritabanı temizlenmiştir.
[function kazananbul]
forinstances i_ticket_lottery
if <color> == 0810
src.go <topobj.p>
endif
endfor
[eof]


// SON GUNCELLEME : Pazar, Mart 29, 2010
// TIP : Sıfırdan Hazırlama
VERSION=0.56b
//###################################################//
//####### Zindan sistemi değişken tanımları #########//
//###################################################//
[DEFNAME PARTY_SYSTEM]
DUNGEONPLACE = 5364,1767,-116
SAFEALAN = 5546,1648,0
RESTOCKERP = 5319,1587
//###################################################//
//####### Zindan sistemi alan tanımlaması ###########//
//###################################################//
[AREADEF A_INISTANCE_ROOM]
NAME=Zindan
RECT=5377,1780,5125,1523
P=5364,1767,-116
EVENTS=R_INISTANCE_EVENT
FLAGS=REGION_ANTIMAGIC_RECALL_IN|REGION_ANTIMAGIC_RECALL_OUT|REGION_ANTIMAGIC_GATE|REGION_ANTIMAGIC_
TELEPORT|REGION_FLAG_NOBUILDING
//###################################################//
//######### Zindan sistemi genel işlemler ###########//
//###################################################//
[FUNCTION F_DUNGEON_RESTOCK]
REF1 = <VAR.RESTOCKERID>
IF (<REF1> == 0)
SERV.NEWITEM I_DUNGEON_RESTOCKER
NEW.P <DEF.RESTOCKERP>
REF1 = <NEW.UID>
ENDIF
REF1.ATTR ATTR_STATIC|ATTR_INVIS
REF1.REGION.RESTOCK
[FUNCTION F_PARTY_CONTROL]
IF (<SRC.ISINPARTY> == 1)
IF ((<SRC.PARTY.MEMBERS> == 5)
IF (<SRC.PARTY.MEMBER.0.UID> == <VAR.INISTANCELEADER>)
RETURN 1
ELSE
RETURN 0
ENDIF
ELSE
RETURN 0
ENDIF
ELSE
RETURN 0
ENDIF
[FUNCTION F_PARTY_CHECKER]
IF (<SRC.F_PARTY_CONTROL> == 0)
SRC.DUNGEONEXIT <VAR.INISTANCELEADER>
ELSE
SRC.TIMERF 5,F_PARTY_CHECKER
ENDIF
[ITEMDEF I_DUNGEON_RESTOCKER]
ID=01E9
NAME=Zindan Yenileyici
TYPE=T_NORMAL
ON=@CLICK
MESSAGE @39,0,1 [ Zindan Sistemi ]
MESSAGE @50,0,1 [ Zindan Yenileyicisi ]
SRC.SYSMESSAGE @39,0,1 Zindan Sistemi yenilenmesi için gerekli bir objedir lütfen bu obje ile oynamayınız aski halinde sorgusuz bloke edilirsiniz..
RETURN 1
ON=@CREATE
ATTR=ATTR_INVIS|ATTR_MOVE_NEVER|ATTR_STATIC|ATTR_DECAY
VAR.RESTOCKERID = <UID>
TIMER = 1
ON=@PICKUP_GROUND
RETURN 1
ON=@DCLICK
RETURN 1
ON=[url=u-destroy-527.html]@destroy[/url]
RETURN 1
ON=@TIMER
IF !(<DVAR.INISTANCETIMER> == -1)
VAR.INISTANCETIMER -= 1
ENDIF
IF (<DVAR.INISTANCETIMER> == 3300)
SERV.ALLCLIENTS SYSMESSAGE @39,0,1 Zindan Sistemi :
SERV.ALLCLIENTS SYSMESSAGE @50,0,1 <UID.<VAR.INISTANCELEADER>.NAME> ve partisi 55 dakika içerisinde zindanı bitiremezlerse zindandan atılacaktırlar..
ELSEIF (<DVAR.INISTANCETIMER> == 3000)
SERV.ALLCLIENTS SYSMESSAGE @39,0,1 Zindan Sistemi :
SERV.ALLCLIENTS SYSMESSAGE @50,0,1 <UID.<VAR.INISTANCELEADER>.NAME> ve partisi 50 dakika içerisinde zindanı bitiremezlerse zindandan atılacaktırlar..
ELSEIF (<DVAR.INISTANCETIMER> == 2700)
SERV.ALLCLIENTS SYSMESSAGE @39,0,1 Zindan Sistemi :
SERV.ALLCLIENTS SYSMESSAGE @50,0,1 <UID.<VAR.INISTANCELEADER>.NAME> ve partisi 45 dakika içerisinde zindanı bitiremezlerse zindandan atılacaktırlar..
ELSEIF (<DVAR.INISTANCETIMER> == 1800)
SERV.ALLCLIENTS SYSMESSAGE @39,0,1 Zindan Sistemi :
SERV.ALLCLIENTS SYSMESSAGE @50,0,1 <UID.<VAR.INISTANCELEADER>.NAME> ve partisi 30 dakika içerisinde zindanı bitiremezlerse zindandan atılacaktırlar..
ELSEIF (<DVAR.INISTANCETIMER> == 900)
SERV.ALLCLIENTS SYSMESSAGE @39,0,1 Zindan Sistemi :
SERV.ALLCLIENTS SYSMESSAGE @50,0,1 <UID.<VAR.INISTANCELEADER>.NAME> ve partisi 15 dakika içerisinde zindanı bitiremezlerse zindandan atılacaktırlar..
ELSEIF (<DVAR.INISTANCETIMER> == 450)
SERV.ALLCLIENTS SYSMESSAGE @39,0,1 Zindan Sistemi :
SERV.ALLCLIENTS SYSMESSAGE @50,0,1 <UID.<VAR.INISTANCELEADER>.NAME> ve partisi 7.5 dakika içerisinde zindanı bitiremezlerse zindandan atılacaktırlar..
ELSEIF (<DVAR.INISTANCETIMER> == 225)
SERV.ALLCLIENTS SYSMESSAGE @39,0,1 Zindan Sistemi :
SERV.ALLCLIENTS SYSMESSAGE @50,0,1 <UID.<VAR.INISTANCELEADER>.NAME> ve partisi 3.5 dakika içerisinde zindanı bitiremezlerse zindandan atılacaktırlar..
ELSEIF (<DVAR.INISTANCETIMER> == 60)
SERV.ALLCLIENTS SYSMESSAGE @39,0,1 Zindan Sistemi :
SERV.ALLCLIENTS SYSMESSAGE @50,0,1 <UID.<VAR.INISTANCELEADER>.NAME> ve partisi 1 dakika içerisinde zindanı bitiremezlerse zindandan atılacaktırlar..
ELSEIF (<DVAR.INISTANCETIMER> == 10)
SERV.ALLCLIENTS SYSMESSAGE @39,0,1 Zindan Sistemi :
SERV.ALLCLIENTS SYSMESSAGE @50,0,1 <UID.<VAR.INISTANCELEADER>.NAME> ve partisi 10 saniye içerisinde zindanı bitiremezlerse zindandan atılacaktırlar..
ENDIF
IF (<DVAR.INISTANCETIMER> == 0)
DUNGEONEXIT <VAR.INISTANCELEADER>
VAR.INISTANCETIMER = -1
ENDIF
TIMER 1
RETURN 1
[REGIONTYPE R_INISTANCE_EVENT]
ON=@ENTER
IF (<SRC.ISPLAYER>) && !(<SRC.ISGM>)
IF (<SRC.ISEVENT.E_DUNGEONACTIVE> == 0)
SRC.TIMERF 5,SRC.GO <DEF.SAFEALAN>
ENDIF
ENDIF
ON=@EXIT
IF (<SRC.ISPLAYER>) && !(<SRC.ISGM>)
IF (<SRC.ISINPARTY> == 1)
SRC.DUNGEONEXIT <SRC.UID>
ENDIF
ENDIF
[ITEMDEF I_DUNGEON_STONE]
ID = 10901
NAME = Dungeon Stone
TYPE = T_DUNGEONSTONE
VALUE = 1
ON=@CREATE
COLOR = 07C4
ATTR = ATTR_STATIC
[TYPEDEF T_DUNGEONSTONE]
ON=@CLICK
MESSAGE @39,0,1 [ <SERV.NAME> ]
MESSAGE @07A1,0,1 Zindan Girişi
IF (<DVAR.ISPARTYACTIVE> == 1)
MESSAGE @39,0,1 Şu anda dolu
ELSEIF (<DVAR.ISPARTYACTIVE> == 0)
MESSAGE @50,0,1 Boş
ENDIF
RETURN 1
ON=@DCLICK
IF (<DISTANCE <SRC.UID>> > 5)
SRC.SYSMESSAGE @39,0,1 Bu sistemi kullanabilmek için taşa 5 kare yakın olmanız gerekmektedir..
ELSEIF (<SRC.ISINPARTY> == 0)
SRC.SYSMESSAGE @39,0,1 Bu sistemi sadece parti sahibi kullanabilir..
ELSEIF (<SRC.DCTAG.DUNGEONNOFLOOD> == 1)
SRC.SYSMESSAGE @39,0,1 Bu sistemi sadece 10 saniyede bir kullanabilirsiniz..
ELSEIF (<VAR.ISPARTYACTIVE> == 1)
SRC.SYSMESSAGE @39,0,1 Şu anda bir parti zindanı kullanmaktadır..
ELSEIF !(<SRC.PARTY.MEMBER.0.UID> == <SRC.UID>)
SRC.SYSMESSAGE @39,0,1 Bu sistemi sadece parti sahibi kullanabilir..
ELSEIF !(<SRC.PARTY.MEMBERS> == 5) && (<SRC.ACCOUNT.PLEVEL> == 1)
SRC.SYSMESSAGE @39,0,1 Bu sistemi kullanabilmek için partinizde 5 kişi olması gerekmektedir..
ELSEIF (<SRC.PARTYMEMBERCHECK <UID>,<SRC.UID>>)
SRC.SYSMESSAGE @39,0,1 Lütfen zindana girecek olan parti oyuncularınızı toplayıp tekrar deneyiniz..
ELSE
SRC.PARTY_TELEPORT <SRC.UID>
ENDIF
SRC.F_PARTYWAIT
RETURN 1
[FUNCTION DUNGEONEXIT]
REF1 = <ARGV[0]>
IF (<REF1> == 0)
RETURN 1
ENDIF
FOR PARTY_PLAYERS 0 4
REF2 = <VAR.INISTANCEMEMBER<DLOCAL.PARTY_PLAYERS>>
REF2.EVENTS -E_DUNGEONACTIVE
REF2.STONE 1
REF2.TIMERF 10,STONE 0
REF2.HITS = <REF2.STR>
REF2.TIMERF 10,GO <DEF.SAFEALAN>
REF2.FINDID.I_DUNGEON_QUITTER.REMOVE
REF2.SYSMESSAGE @39,0,1 <REF1.NAME> isimli oyuncu zindandan ayrıldığı için zindandan atıldınız..
REF2.SYSMESSAGE @39,0,1 10 saniye içerisinde safe alana ışınlanıcaksınız..
ENDFOR
VAR.ISPARTYACTIVE = 0
REF1.PARTY.DISBAND
SERV.ALLCLIENTS SYSMESSAGE @07A1,0,1 Zindan Sistemi :
SERV.ALLCLIENTS SYSMESSAGE @50,0,1 Zindan şu anda kullanılabilir durumdadır..
VAR.INISTANCETIMER = -1
VAR.INISTANCELEADER = 0
RETURN 1
[FUNCTION F_PARTYWAIT]
SRC.CTAG.DUNGEONNOFLOOD = 1
SRC.TIMERF 10,SRC.CTAG.DUNGEONNOFLOOD = 0
[FUNCTION PARTYMEMBERCHECK]
REF1 = <ARGV[0]>
REF2 = <ARGV[1]>
LOCAL.PARTYNOTALLOWED = 0
FOR PARTY_PLAYERS 0 <EVAL <REF2.PARTY.MEMBERS> - 1>
REF3 = <REF2.PARTY.MEMBER.<DLOCAL.PARTY_PLAYERS>.UID>
IF (<REF1.DISTANCE <REF3.UID>> > 5)
LOCAL.PARTYNOTALLOWED = 1
REF2.PARTY.MEMBER.0.SYSMESSAGE @39,0,1 <REF3.NAME> isimli oyuncu taştan 5 kare uzakta olduğu için işleminiz iptal edildi..
ENDIF
IF !(<REF3.FINDLAYER.25.UID> == 0)
LOCAL.PARTYNOTALLOWED = 1
REF2.PARTY.MEMBER.0.SYSMESSAGE @39,0,1 <REF3.NAME> isimli oyuncunun altında bineği olduğu için işleminiz iptal edildi..
ENDIF
ENDFOR
RETURN <DLOCAL.PARTYNOTALLOWED>
[FUNCTION PARTY_TELEPORT]
F_DUNGEON_RESTOCK
REF1 = <ARGV[0]>
FOR PARTY_PLAYERS 0 <EVAL <REF1.PARTY.MEMBERS> - 1>
REF2 = <REF1.PARTY.MEMBER.<DLOCAL.PARTY_PLAYERS>.UID>
REF2.EVENTS +E_DUNGEONACTIVE
REF2.GO <DEF.DUNGEONPLACE>
REF2.HITS = <REF2.STR>
REF2.MANA = <REF2.INT>
REF2.STAM = <REF2.DEX>
VAR.INISTANCEMEMBER<DLOCAL.PARTY_PLAYERS> = <REF2.UID>
ENDFOR
SERV.NEWITEM I_DUNGEON_QUITTER
NEW.CONT <REF1.UID>
REF1.TIMERF 5,F_PARTY_CHECKER
VAR.INISTANCELEADER = <REF1.PARTY.MEMBER.0.UID>
VAR.INISTANCETIMER = 3600
VAR.INISTANCELOOTSTART = 0
VAR.ISPARTYACTIVE = 1
SERV.ALLCLIENTS SYSMESSAGE @07A1,0,1 Zindan Sistemi :
SERV.ALLCLIENTS SYSMESSAGE @50,0,1 Zindana şu anda <REF1.NAME> ve partisi girmiş bulunmaktadır..
[EVENTS E_DUNGEONACTIVE]
ON=@CLICK
MESSAGE @39,0,1 [ Zindan Takımı ]
MESSAGE @50,0,1 <NAME>
RETURN 1
ON=@LOGOUT
SRC.DUNGEONEXIT <SRC.UID>
ON=[url=u-death-9220.html]@death[/url]
BEYAZ 30 Saniye Donar
STONE 1
HITS = <STR>
TIMERF 30,STONE 0
RETURN 1
ON=@SPELLSELECT
IF (<ARGN1> == 45) || (<ARGN1> == 32) || (<ARGN1> == 52) || (<ARGN1> == 22)
SRC.SYSMESSAGE @39,0,1 Büyünüz zindanın kudretli güçleri tarafından bloke edilmiştir..
RETURN 1
ENDIF
ON=@HITTRY
IF !(<UID> == <SRC.UID>)
IF (<INSAMEPARTY <SRC.UID>>)
ACTION - 1
RETURN 1
ENDIF
ENDIF
ON=@ATTACK
TRIGGER=@HITTRY
ON=@SPELLEFFECT
IF !(<UID> == <SRC.UID>) && !(<ARGN> == 59) && !(<ARGN> == 4) && !(<ARGN> == 29)
IF (<INSAMEPARTY <UID>>)
SRC.ACTION - 1
RETURN 1
ENDIF
ENDIF
ON=@HIT
TRIGGER=@HITTRY
ON=@ITEMDCLICK
IF (<ACT.BASEID> == I_RUNEBOOK)
SRC.SYSMESSAGE @39,0,1 Zindanın kudretli güçleri eşyanın kullanılmasını engelliyor..
RETURN 1
ENDIF
IF (<ACT.LINK> != <SRC.UID>)
IF (<ACT.ID> == 02006) && !(<ACT.LINK> == 04FFFFFFF)
RETURN 1
ENDIF
ENDIF
ON=@MOUNT
SRC.SYSMESSAGE @39,0,1 Bu alanda bineğe binemezsiniz..
RETURN 1
ON=@ITEMTARGON_ITEM
IF (<ARGO.LINK> != <UID>)
IF (<ARGO.ID> == 02006) && !(<ARGO.LINK> == 04FFFFFFF)
RETURN 1
ENDIF
ENDIF
[FUNCTION INSAMEPARTY]
IF ((<UID.<ARGV[0]>.ISINPARTY>) && (<ISINPARTY>))
IF <UID.<ARGV[0]>.PARTY.MEMBER.0.UID>==<PARTY.MEMBER.0.UID>
RETURN 1
ELSE
RETURN 0
ENDIF
ELSE
RETURN 0
ENDIF
[ITEMDEF I_DUNGEON_QUITTER]
ID=01F19
NAME=Zindan Bitirici
TYPE=T_NORMAL
VALUE=1
ON=@CREATE
COLOR 07B5
ATTR ATTR_NEWBIE
ON=@CLICK
MESSAGE @50,0,1 [ Zindan ]
MESSAGE @07A1,0,1 [ Zindan bitirici ]
RETURN 1
ON=@DCLICK
IF (<SRC.ISEVENT.E_DUNGEONACTIVE> == 1)
SRC.BEYAZ Zindan bitirici kullanır
SRC.DUNGEONEXIT <SRC.UID>
ENDIF
REMOVE
RETURN 1
//###################################################//
//########### Inistance Boss Eşyaları ###############//
//###################################################//
[ITEMDEF I_INISTANCE_POINT]
ID=9909
NAME=Zindan Puanı
TYPE=T_NORMAL
VALUE=1
ON=@CREATE
COLOR 07C5
ON=@DCLICK
SRC.SYSMESSAGE @39,0,1 Bu eşya zindan sistemindeki yaratıklardan çıkmaktadır.. Bu eşya ile zindan sisteminin özel olarak size sunduğu eşyaları satın alabilirsiniz..
RETURN 1
ON=@CLICK
MESSAGE @50,0,1 [ <AMOUNT> Adet ]
MESSAGE @07A1,0,1 <NAME>
RETURN 1
[ITEMDEF I_INISTANCE_RESURRECT]
ID=I_MOONGATE_BLACK
NAME=Diriltme Gatesi
TYPE=T_NORMAL
ON=@CREATE
COLOR 07C4
ATTR ATTR_STATIC
ON=@CLICK
MESSAGE @39,0,1 [ Zindan ]
MESSAGE @07A1,0,1 Diriltme Taşı
RETURN 1
ON=@STEP
IF (<SRC.HITS> == 0)
SRC.RESURRECT
SRC.BEYAZ Zindan gücü diriltir
RETURN 1
ENDIF
ON=@DCLICK
TRIGGER=@STEP
//###################################################//
//########### Inistance Boss Eventleri ##############//
//###################################################//
[EVENTS E_INISTANCE_EVENT]
ON=@CLICK
MESSAGE @07a1,0,1 [ Zindan ]
MESSAGE @39,0,1 <NAME>
RETURN 1
ON=@DCLICK
IF (!(<SRC.ACCOUNT.PLEVEL> == 1) && !(<SRC.DTAG.HIGHTERSTAFF> == 1))
RETURN 1
ENDIF
ON=@SPELLEFFECT
IF (<MANA> >= 40)
IF (<ARGN> == 20) || (<ARGN> == 38) || (<ARGN> == 43)
BEYAZ Resist
ATTACK
MANA -= 40
RETURN 1
ENDIF
ENDIF
ON=@DEATHCORPSE
ARGO.TAG.INISTANCELOOT = 1
ARGO.TAG.INISTANCELOOTER = <VAR.INISTANCEMEMBER<DVAR.INISTANCELOOTSTART>>
IF (<DVAR.INISTANCELOOTSTART> == 4)
VAR.INISTANCELOOTSTART = 0
ELSE
VAR.INISTANCELOOTSTART += 1
ENDIF
ON=@GETHIT
IF (<SRC.ISEVENT.E_DUNGEONACTIVE> == 0)
SRC.HITS -= 200
RETURN 1
ENDIF
IF (<MANA> >= 500)
IF (<HITS> <= <EVAL <STR>/4>)
HITS += <EVAL <STR> / 8>
MANA -= 500
BEYAZ Heal
EFFECT 3,0376A,1,30,1
SOUND SND_SPELL_HEAL
ENDIF
ENDIF
IF (<MANA> >= 25)
IF (<FINDID.I_RUNE_POISON>) || (<FINDID.I_RUNE_POISON_FIELD>)
IF (RAND(3) == 1)
FACE
ANIM 17
EFFECT 3,0376A,1,30,1
SOUND SND_SPELL_CURE
FINDID.I_RUNE_POISON.REMOVE
FINDID.I_RUNE_POISON_FIELD.REMOVE
MANA -= 25
BEYAZ Resist
ENDIF
ELSEIF (<SRC.FINDID.I_RUNE_SUMMON_CREATURE>) && (<MANA> > 20)
FACE
ANIM 17
SOUND SND_SPELL_DISPEL
SRC.HITS 0
MANA -= 25
MANA (<MANA> - 20)
BEYAZ Dispel
ENDIF
ENDIF
[EVENTS E_BOSS_EVENT]
ON=@CLICK
MESSAGE @50,0,1 [ Şampıyon ]
MESSAGE @39,0,1 <NAME>
RETURN 1
ON=@DCLICK
IF (!(<SRC.ACCOUNT.PLEVEL> == 1) && !(<SRC.DTAG.HIGHTERSTAFF> == 1))
RETURN 1
ENDIF
ON=@SPELLEFFECT
IF (<MANA> >= 40)
IF (<ARGN> == 20) || (<ARGN> == 38) || (<ARGN> == 43)
BEYAZ Resist
ATTACK
MANA -= 40
RETURN 1
ENDIF
ENDIF
IF (<ARGN> == 31) || (<ARGN> == 53)|| (<ARGN> == 20)
BEYAZ Resist
RETURN 1
ELSEIF (<ARGN> == 47) || (<ARGN> == 39)
FORITEMS 10
IF (<ATTR>&ATTR_MAGIC)
IF (<TYPE> == T_SPELL)
REMOVE
ENDIF
ENDIF
ENDFOR
BEYAZ Resist
RETURN 1
ENDIF
ON=@GETHIT
IF (<SRC.ISEVENT.E_DUNGEONACTIVE> == 0)
SRC.HITS -= 200
RETURN 1
ENDIF
IF (<MANA> >= 400)
IF (<HITS> <= <EVAL <STR>/4>)
HITS += <EVAL <STR> / 8>
MANA -= 400
BEYAZ Heal
EFFECT 3,0376A,1,30,1
SOUND SND_SPELL_HEAL
ENDIF
ENDIF
IF (<MANA> >= 25)
IF (<FINDID.I_RUNE_POISON>) || (<FINDID.I_RUNE_POISON_FIELD>)
IF (RAND(3) == 1)
FACE
ANIM 17
EFFECT 3,0376A,1,30,1
SOUND SND_SPELL_CURE
FINDID.I_RUNE_POISON.REMOVE
FINDID.I_RUNE_POISON_FIELD.REMOVE
MANA -= 25
BEYAZ Resist
ENDIF
ELSEIF (<SRC.FINDID.I_RUNE_SUMMON_CREATURE>) && (<MANA> > 20)
FACE
ANIM 17
SOUND SND_SPELL_DISPEL
SRC.HITS 0
MANA -= 25
MANA (<MANA> - 20)
BEYAZ Dispel
ENDIF
ENDIF
//###################################################//
//########## Inistance LowLevel Npcleri #############//
//###################################################//
[CHARDEF C_INISTANCE_LORD]
ID=C_ORC
NAME=Zindan Lordu
DAM=20,50
ARMOR={10 100}
TEVENTS=E_INISTANCE_EVENT
ON=@CREATE
COLOR=0455
NPC=BRAIN_MONSTER
STR={10 200}
DEX={100 500}
INT={100 300}
WRESTLING={1000 2500}
TACTICS={1000 5000}
FAME={1000 5999}
KARMA={-9998 -9999}
ON=[url=u-death-9220.html]@death[/url]
F_INISTANCE_LOOT
[CHARDEF C_INISTANCE_WARRIOR]
ID=C_ORC_W_CLUB
NAME=Zindan Sovalyesi
DAM=20,50
ARMOR={50 150}
TEVENTS=E_INISTANCE_EVENT
ON=@CREATE
COLOR=50
NPC=BRAIN_MONSTER
STR={10 200}
DEX={100 500}
INT={100 300}
SWORDSMANSHIP={1000 2500}
TACTICS={1000 5000}
WRESTLING={1000 2500}
ANATOMY={1000 5000}
ARMSLORE={1000 5000}
PARRYING={1000 5000}
FAME={1000 5999}
KARMA={-9998 -9999}
ITEMNEWBIE=I_KATANA_VANQ
ITEMNEWBIE=I_BLACKROCK_HEATER_SHIELD
ON=[url=u-death-9220.html]@death[/url]
F_INISTANCE_LOOT
[CHARDEF C_INISTANCE_MAGE]
ID=C_ORC
NAME=Zindan Buyucusu
DAM=20,50
ARMOR={10 50}
TEVENTS=E_INISTANCE_EVENT
ON=@CREATE
COLOR=025
NPC=BRAIN_MONSTER
STR={10 200}
DEX={100 300}
INT={100 500}
MAGERY={1000 2500}
MEDITATION={1000 5000}
EVALUATINGINTEL={1000 5000}
POISONING={1000 5000}
FAME={1000 5999}
KARMA={-9998 -9999}
ITEMNEWBIE=i_spellbook
ADDSPELL=s_fireball
ADDSPELL=s_energy_bolt
ADDSPELL=s_poison
ADDSPELL=s_flamestrike
ADDSPELL=s_explosion
ADDSPELL=s_curse
ADDSPELL=s_clumsy
ADDSPELL=s_paralyze
ADDSPELL=s_lightning
ON=[url=u-death-9220.html]@death[/url]
F_INISTANCE_LOOT
//###################################################//
//############ Inistance Boss Npcleri ###############//
//###################################################//
[CHARDEF C_BOSS_COLOR]
DEFNAME=C_BOSS_COLOR
NAME=Gülyabani
CAN=MT_RUN|MT_WALK
ID=73
DAM=200,400
ARMOR=150
TEVENTS=E_BOSS_EVENT
ON=@CREATE
COLOR=07A1
NPC=BRAIN_MONSTER
STR={8000 10000}
DEX={30000 32000}
INT={3000 3200}
WRESTLING={1000 2500}
TACTICS={1000 5000}
FAME={7000 9999}
KARMA={-9998 -9999}
ON=[url=u-death-9220.html]@death[/url]
F_BOSS_LOOT
[CHARDEF C_BOSS_ORUMCEK2]
DEFNAME=C_BOSS_ORUMCEK2
NAME=Örümcek
CAN=MT_RUN|MT_WALK
ID=C_SPIDER_GIANT_2
DAM=200,400
ARMOR=150
TEVENTS=E_BOSS_EVENT
ON=@CREATE
COLOR=07A1
NPC=BRAIN_MONSTER
STR={8000 10000}
DEX={30000 32000}
INT={3000 3200}
WRESTLING={1000 2500}
TACTICS={1000 5000}
FAME={7000 9999}
KARMA={-9998 -9999}
ON=[url=u-death-9220.html]@death[/url]
F_BOSS_LOOT
[CHARDEF C_BOSS_ORUMCEK]
DEFNAME=C_BOSS_ORUMCEK
NAME=Karadul
CAN=MT_RUN|MT_WALK
ID=c_spider_lord
DAM=200,400
ARMOR=150
TEVENTS=E_BOSS_EVENT
ON=@CREATE
COLOR=07A1
NPC=BRAIN_MONSTER
STR={8000 10000}
DEX={30000 32000}
INT={3000 3200}
WRESTLING={1000 2500}
TACTICS={1000 5000}
FAME={7000 9999}
KARMA={-9998 -9999}
ON=[url=u-death-9220.html]@death[/url]
F_BOSS_LOOT
[CHARDEF C_BOSS_GORIL]
DEFNAME=C_BOSS_GORIL
NAME=Godzilla
CAN=MT_RUN|MT_WALK
ID=C_GORIL
DAM=200,400
ARMOR=150
TEVENTS=E_BOSS_EVENT
ON=@CREATE
COLOR=07A1
NPC=BRAIN_MONSTER
STR={8000 10000}
DEX={30000 32000}
INT={3000 3200}
WRESTLING={1000 2500}
TACTICS={1000 5000}
FAME={7000 9999}
KARMA={-9998 -9999}
ON=[url=u-death-9220.html]@death[/url]
F_BOSS_LOOT
[CHARDEF C_BOSS_CRYSTAL]
DEFNAME=C_BOSS_CRYSTAL
NAME=Kristalistik
CAN=MT_RUN|MT_WALK
ID=C_CRYSTAL_GOLEM
DAM=200,400
ARMOR=150
TEVENTS=E_BOSS_EVENT
ON=@CREATE
COLOR=07A1
NPC=BRAIN_MONSTER
STR={8000 10000}
DEX={30000 32000}
INT={3000 3200}
WRESTLING={1000 2500}
TACTICS={1000 5000}
FAME={7000 9999}
KARMA={-9998 -9999}
ON=[url=u-death-9220.html]@death[/url]
F_BOSS_LOOT
[CHARDEF C_BOSS_DRAGON]
DEFNAME=C_BOSS_DRAGON
NAME=Dragolan
CAN=MT_RUN|MT_WALK
ID=C_DRAGON_SERPENTINE
DAM=200,400
ARMOR=150
TEVENTS=E_BOSS_EVENT
ON=@CREATE
COLOR=07A1
NPC=BRAIN_MONSTER
STR={8000 10000}
DEX={30000 32000}
INT={3000 3200}
MAGERY={1000 2500}
MEDITATION={1000 5000}
EVALUATINGINTEL={1000 5000}
POISONING={1000 5000}
FAME={1000 5999}
KARMA={-9998 -9999}
ITEMNEWBIE=i_spellbook
ADDSPELL=s_fireball
ADDSPELL=s_energy_bolt
ADDSPELL=s_poison
ADDSPELL=s_flamestrike
ADDSPELL=s_explosion
ADDSPELL=s_curse
ADDSPELL=s_clumsy
ADDSPELL=s_paralyze
ADDSPELL=s_lightning
FAME={7000 9999}
KARMA={-9998 -9999}
ON=[url=u-death-9220.html]@death[/url]
F_BOSS_LOOT
//###################################################//
//########## Inistance Loot Fonksyonları ############//
[TEMPLATE T_LOOT_INISTANCE_GOLD]
CONTAINER=i_bag
ITEM=I_GOLD,{1000 15000}
[TEMPLATE T_LOOT_INISTANCE_POINT]
CONTAINER=i_bag
ITEM=I_INISTANCE_POINT,{1 5}
//###################################################//
[FUNCTION F_INISTANCE_LOOT]
SERV.NEWITEM T_LOOT_INISTANCE_GOLD
NEW.BOUNCE
SERV.NEWITEM T_LOOT_INISTANCE_GOLD
NEW.BOUNCE
SERV.NEWITEM T_LOOT_INISTANCE_POINT
NEW.BOUNCE
SERV.NEWITEM T_LOOT_INISTANCE_POINT
NEW.BOUNCE
SERV.NEWITEM BACKPACK_MEAGER
NEW.BOUNCE
SERV.NEWITEM LOOT_ORCISH_LORD
NEW.BOUNCE
[FUNCTION F_BOSS_LOOT]
SERV.NEWITEM { I_ELVEN_MACHETE 2 I_DAISHO 2 I_STAFF_BLADED 2 I_PIKE 2 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
SERV.NEWITEM { RANDOM_RICH_MAGIC_LOOT 1 I_ELVEN_COMPOSITE_LONGBOW 2 I_MAGICAL_SHORTBOW 2 I_LANCE 2 I_BONE_HARVESTER 2 I_RADIANT_SCIMITAR 2 I_ORNATE_AXE 2 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
SERV.NEWITEM { I_CRESCENT_BLADE 2 I_NUNCHAKU 2 I_MACE_DIAMOND 2 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 I_RUNE_BLADE 2 I_MACE_WILDSTAFF 2 I_SCEPTER 2 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
SERV.NEWITEM { RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 I_TESSEN 2 I_SAI 2 I_TEKAGI 2 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 I_SWORD_WARCLEAVER 2 I_STAFF_BLADED_DOUBLE 2 I_SCYTHE 2 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
FOR X 1 7
SERV.NEWITEM I_GOLD
NEW.AMOUNT {4000 65000}
NEW.BOUNCE
ENDFOR
SERV.NEWITEM I_BERSERK_CRYSTAL
NEW.BOUNCE
SERV.NEWITEM { I_PURE_MAGE_ROBE 1 I_PURE_WARRIOR_ROBE 1 I_WARLOCK_ROBE 1 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
SERV.NEWITEM { I_PURE_MAGE_ROBE 1 I_PURE_WARRIOR_ROBE 1 I_WARLOCK_ROBE 1 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
SERV.NEWITEM { I_MANA_BOOTS 1 I_STAM_BOOTS 1 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
SERV.NEWITEM { I_MANA_BOOTS 1 I_STAM_BOOTS 1 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
SERV.NEWITEM { I_EGG_OSTARD 1 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
SERV.NEWITEM { I_EGG_OSTARD 1 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
SERV.NEWITEM { RANDOM_WEAPON_VANQ 1 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
SERV.NEWITEM { RANDOM_WEAPON_POWER 1 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
SERV.NEWITEM { RANDOM_WEAPON_VANQ 1 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
SERV.NEWITEM { RANDOM_WEAPON_POWER 1 RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
SERV.NEWITEM { RANDOM_FILTHY_RICH_MAGIC_LOOT 1 RANDOM_RICH_MAGIC_LOOT 1 }
NEW.BOUNCE
SERV.NEWITEM I_INISTANCE_POINT
NEW.AMOUNT {400 1000}
NEW.BOUNCE
//###################################################//
//############# NPC Drop Fonksyonları ###############//
//###################################################//
[FUNCTION F_INISTANCE_MAGE]
SERV.NEWITEM 01EA7
NEW.BOUNCE
NEW.DROP
NEW.TYPE 34
NEW.ATTR 00B0
NEW.AMOUNT 1
NEW.MORE1 C_INISTANCE_MAGE
NEW.MOREP 9999 9999 5
NEW.TIMER 1
[FUNCTION F_INISTANCE_WARRIOR]
SERV.NEWITEM 01EA7
NEW.BOUNCE
NEW.DROP
NEW.TYPE 34
NEW.ATTR 00B0
NEW.AMOUNT 1
NEW.MORE1 C_INISTANCE_WARRIOR
NEW.MOREP 9999 9999 5
NEW.TIMER 1
[FUNCTION F_INISTANCE_LORD]
SERV.NEWITEM 01EA7
NEW.BOUNCE
NEW.DROP
NEW.TYPE 34
NEW.ATTR 00B0
NEW.AMOUNT 1
NEW.MORE1 C_INISTANCE_LORD
NEW.MOREP 9999 9999 5
NEW.TIMER 1
[EOF]


[COMMENT al_vendor_sistem]
Script adı:Ev vendor sistemi
Scriptin işlevi:"e_vendor_item" eventini oyunculara verin.
Vendor komutları:"bilgi,satin al,esya kaldir,fiyat,kasa,hasilat,kaldir"
[DEFNAME player_vendor_system]
PLAYER_VENDOR_SETUP_GOLD "5000"
PLAYER_VENDOR_ITEM_VALUE "5000000,250"
PLAYER_VENDOR_REVENUE_DEFEND "1"
[ITEMDEF i_deed_player_vendor]
ID=I_DEED
NAME=Player Vendor Deed
ON=@Create
ATTR = ATTR_NEWBIE
COLOR = 0470
ON=@Dclick
IF (<CONT>)
SRC.SYS_HATA Bunu evinize sabitlemelisiniz.
ELSEIF (<UID.<REGION.UID>.TYPE>==T_MULTI) && !(<ATTR>&ATTR_MOVE_NEVER)
SRC.SYS_HATA Bunu evinize sabitlemelisiniz.
ELSEIF !(<UID.<REGION.UID>.TYPE>==T_MULTI)
SRC.SYS_HATA Bunu evinize,tabelanın altına sabitlemelisiniz.
ELSEIF (<SRC.GOLD> < <DEF.PLAYER_VENDOR_SETUP_GOLD>)
SRC.SYS_HATA <DDEF.PLAYER_VENDOR_SE TUP_GOLD> kadar altınınız bulunmuyor.
ELSEIF (<FIND_HOUSE_VENDOR <REGION.UID>>)
SRC.SYS_HATA Bu evde zaten player vendoru bulunuyor.
ELSEIF (<UID.<REGION.UID>.MORE1>!=<SRC>)
SRC.SYS_HATA Bunu sadece kendi evinizde kullanabilirsiniz.
ELSEIF !(<UID.<UID.<REGION.UID>.MORE2>.TAG0.PUBLIC>)
SRC.SYS_HATA Vendoru halka açık evlere kurabilirsiniz.
ELSE
SERV.NEWNPC c_player_vendor
REF5 = <NEW>
REF5.P = <P>
REF5.TAG0.OWNER = <SRC>
REF5.F_MakePetOf = <SRC>
REF5.GOLD += <DDEF.PLAYER_VENDOR_SETUP_GOLD>
SERV.NEWITEM i_player_vendor
NEW.CONT = <REF5>
NEW.TIMER = 3600
SRC.GOLD -= <DDEF.PLAYER_VENDOR_SETUP_GOLD>
SERV.NEWITEM = i_torch
NEW.CONT = <REF5.FINDLAYER(21)>
REMOVE
SRC.UPDATE
ENDIF
RETURN 1
ON=@Click
MSG_NORMAL <NAME>
RETURN 1
[ITEMDEF i_player_vendor]
ID=I_MEMORY
NAME=Pl ayer Vendor System
TYPE=T_EQ_SCRIPT
ON=@Create
ATTR=ATTR_NEWBIE|ATTR_INVIS|ATTR_DECAY
More2=0
TAG0.LAST_SELL_ITEM=
ON=@TIMER
REF5=<CONT.TAG0.OWNER>
IF (<CONT.GOLD> > 250)
CONT.GOLD -= 250
TIMER = 3600
MORE2=
TAG0.LAST_SELL_ITEM=
ENDIF
ELSE
IF (<REF5>)
REF5.NOTICE Ev vendorunuzun parasını ödemediğiniz için,vendorunuz sizi terketti...
CONT.F_UNEQUIP_PACK
CONT.F_BACKPACK_CONT <REF5>
CONT.REMOVE
REMOVE
ELSE
REMOVE
ENDIF
RETURN 1
[CHARDEF c_player_vendor]
ID = C_MAN
NAME=#NAMES_HUMANMALE
CAN=MT_NONMOVER|MT_USEHANDS|MT_EQUIP|MT_FIRE_IMMUNE
TSPEECH=player_vendor
ON=@Create
ALLSKILLS=0
STR=30
DEX=0
INT=0
MODMAXWEIGHT=100000
FLAGS |= Statf_Invul
FOOD=999
ITEMNEWBIE=i_backpack
ITEMNEWBIE=i_lantern
ITEMNEWBIE=i_robe
COLOR=0460
ITEMNEWBIE=i_cap
COLOR=0460
ITEMNEWBIE=i_bankbox
MORE1=-1
MORE2=-1
ON=@ Click
MSG_NORMAL [Sahibi:<UID.<OWNER>.NAME>]
IF (<OWNER>==<SRC>) && !(<GOLD>)
MSG_NORMAL [Kalan süresi:<F_LOOK_TIME <FINDID.I_PLAYER_VENDOR.TIMER>>]
ENDIF
MSG_OK <NAME>
RETURN 1
ON=@Dclick
IF (<SRC.F_FLAGS_CHECK>)
SRC.SYS_HATA Bu durumda iken kullanamazsınız.
ELSEIF !(<dRESCOUNT>)
SRC.SYS_HATA Bu vendorun satılık malı bulunmuyor.
ELSEIF (<SRC.F_CanSeeLos <UID>>)
SRC.SYS_HATA Vendora çok uzaktasınız.
ELSE
FINDLAYER.21.OPEN
FACE <SRC>
ENDIF
RETURN 1
ON=@NpcSeeNewPlayer
IF (<OWNER>==<SRC>)
SAY_OK Merhaba Patron !
ELSEIF (<FINDLAYER(21).RESCOUNT> >0) && <EVAL (<F_SELLING_ITEM>> > 0)
SAY_OK Satılık mallarım bulunuyor...
ELSE
SAY_OK Satılık malım yok <SRC.NAME>...
ENDIF
ON=@EnvironChange
IF !(<OWNER>) && (<UID.<TAG0.OWNER>&g t;)
F_MakePetOf <TAG0.OWNER>
ENDIF
ON=@GetHit
RETURN 1
ON=@Attack
RETURN 1
ON=@Damage
RETURN 1
ON=@SpellEffect
RETURN 1
ON=@NpcFollow
RETURN 1
ON=@HitTry
RETURN 1
ON=@RecieveItem
IF (<OWNER>!=<SRC>)
RETURN 1
ENDIF
[SPEECH player_vendor]
ON=satin al
IF !(<dRESCOUNT>)
SRC.SYS_HATA Bu vendorun satılık malı bulunmuyor.
ELSEIF (<SRC.F_FLAGS_CHECK>)
SRC.SYS_HATA Bu durumda iken kullanamazsınız.
ELSEIF (<SRC.F_CanSeeLos <UID>>)
SRC.SYS_HATA Vendora çok uzaktasınız.
ELSEIF (<TAG0.OWNER>==<SRC>)
SRC.SYS_HATA Sizin eşyayı satın almanıza gerek yok.
ELSE
SRC.TARGETF F_BUY_ITEM_VENDOR <UID>
ENDIF
ON=fiyat
IF (<TAG0.OWNER>!=<SRC>)
SRC.SYS_HATA Bu vendorun sahibi siz değilsiniz.
ELSEIF !(<dRescount>)
SRC.SYS_HATA Vendorunuzda satılık mal bulunmuyor.
ELSEIF (< SRC.F_FLAGS_CHECK>)
SRC.SYS_HATA Bu durumda iken kullanamazsınız.
ELSEIF (<SRC.F_CanSeeLos <UID>>)
SRC.SYS_HATA Vendora çok uzaktasınız.
ELSE
SRC.TARGETF F_ITEM_VALUE_VENDOR <UID>
ENDIF
ON=esya kaldir
IF (<TAG0.OWNER>!=<SRC>)
SRC.SYS_HATA Bu vendorun sahibi siz değilsiniz.
ELSEIF !(<dRescount>)
SRC.SYS_HATA Vendorunuzda zaten satılık mal bulunmuyor.
ELSEIF (<SRC.F_FLAGS_CHECK>)
SRC.SYS_HATA Bu durumda iken kullanamazsınız.
ELSEIF (<SRC.F_CanSeeLos <UID>>)
SRC.SYS_HATA Vendora çok uzaktasınız.
ELSE
SRC.TARGETF F_ITEM_RELEASE_VENDOR <UID>
ENDIF
ON=kasa
IF (<TAG0.OWNER>!=<SRC>)
SRC.SYS_HATA Bu vendorun sahibi siz değilsiniz.
ELSEIF (<SRC.F_CanSeeLos <UID>>)
SRC.SYS_HATA Vendora çok uzaktasınız.
ELSEIF (<SRC.F_FLAGS_CHECK>)
SRC.SYS_HATA Bu durumda iken kullanamazsınız.
ELSE
F_RESENDIALOG D_VENDOR_ADD_GOLD
ENDIF
ON=hasilat
IF (<TAG0.OWNER>!=<SRC>)
SRC.SYS_HATA Bu vendorun sahibi siz değilsiniz.
ELSEIF (<SRC.F_CanSeeLos <UID>>)
SRC.SYS_HATA Vendora çok uzaktasınız.
ELSEIF (<SRC.F_FLAGS_CHECK>)
SRC.SYS_HATA Bu durumda iken kullanamazsınız.
ELSEIF (<DEF.PLAYER_VENDOR_REVENUE_DEFEND>) && (<GOLD> < 1000)
SRC.SYS_HATA Vendorunuzda çok az para var !
ELSE
F_RESENDIALOG D_VENDOR_REVENUE
ENDIF
ON=bilgi
IF (<SRC.F_CanSeeLos <UID>>)
SRC.SYS_HATA Vendora çok uzaktasınız.
ELSEIF (<SRC.F_FLAGS_CHECK>)
SRC.SYS_HATA Bu durumda iken kullanamazsınız.
ELSEIF !(<FINDID.I_PLAYER_VENDOR.MORE2>)
SRC.SYS_HATA Bu vendor hiçbir şey satmamış.
ELSE
F_RESENDIALOG D_VENDOR_INFO
ENDIF
ON=kaldir
IF (<TAG0.OWNER>!=<SRC>)
SRC.SYS_HATA Bu vendorun sahibi siz değilsiniz.
ELSEIF (<SRC.F_CanSeeLos <UID& gt;>)
SRC.SYS_HATA Vendora çok uzaktasınız.
ELSEIF (<SRC.F_FLAGS_CHECK>)
SRC.SYS_HATA Bu durumda iken kullanamazsınız.
ELSE
F_RESENDIALOG D_VENDOR_REMOVE
ENDIF
[FUNCTION f_buy_item_vendor]
REF3=<ARGS>
REF4=<ARGO>
IF !(<REF4.ISITEM>)
SRC.SYS_HATA Hatalı seçim yaptınız.
ELSEIF !(<REF3>)
SRC.SYS_HATA Hatalı bir durum oluştu.
ELSEIF (<REF3.TAG0.OWNER>==<SRC>)
SRC.SYS_HATA Siz zaten bu vendorun sahibisiniz.
ELSEIF (<SRC.F_CANSEELOS <REF3>>)
SRC.SYS_HATA Vendora çok uzaktasınız.
ELSEIF (<SRC.F_CANSEELOS <UID>>)
SRC.SYS_HATA Bu durumda iken kullanamazsınız.
ELSEIF !(<dRESCOUNT>)
SRC.SYS_HATA Vendorda satılık eşya bulunmuyor.
ELSEIF (<REF4.TOPOBJ>!=<REF3>)
SRC.SYS_HATA Bu eşya vendorda bulunmuyor.
ELSEIF !(<REF4.dTAG0.VALUE>)
SRC.SYS_HATA Bu eşya satılık değil.
ELSEIF (<REF4.dTAG0.VALUE> &g t; <SRC.GOLD>)
SRC.SYS_HATA Bu eşyayı satın alacak kadar paranız bulunmuyor.
ELSE
SRC.GOLD -=<REF4.dTAG0.VALUE>
REF4.CONT=<SRC.FINDLAYER(29)>
REF3.GOLD +=<REF4.dTAG0.VALUE>
REF4.TAG0.VALUE=
REF3.Findid.I_Player_Vendor.More2 +=1
REF3.Findid.I_Player_Vendor.Tag0.Last_Sell_Item .= ,<REF4>
SRC.SYS_OK <REF4.NAME> isimli eşya bankanıza aktarıldı.
REF3.FINDLAYER.21.UPDATE
SRC.UPDATE
ENDIF
[FUNCTION f_item_value_vendor]
REF3=<ARGS>
REF4=<ARGO>
IF !(<REF4.ISITEM>)
SRC.SYS_HATA Hatalı seçim yaptınız.
ELSEIF !(<REF3>)
SRC.SYS_HATA Hatalı bir durum oluştu.
ELSEIF (<REF3.TAG0.OWNER>!=<SRC>)
SRC.SYS_HATA Bunu siz yapamazsınız.
ELSEIF (<SRC.F_CanSeeLos <REF3>>)
SRC.SYS_HATA Vendora çok uzaktasınız.
ELSEIF (<SRC.F_FLAGS_CHECK>)
SRC.SYS_HATA Bu durumda iken kullanamazsınız.
ELSEIF !(<dRESCOUNT>)< BR> SRC.SYS_HATA Vendorda satılık eşya bulunmuyor.
ELSEIF (<REF4.TOPOBJ>!=<REF3>)
SRC.SYS_HATA Bu eşya vendorda bulunmuyor.
ELSE
SRC.F_RESENDIALOG D_ITEM_VALUE,0,<REF3>,<REF4>
ENDIF
[FUNCTION f_item_release_vendor]
REF3=<ARGS>
REF4=<ARGO>
IF !(<REF4.ISITEM>)
SRC.SYS_HATA Hatalı seçim yaptınız.
ELSEIF !(<REF3>)
SRC.SYS_HATA Hatalı bir durum oluştu.
ELSEIF (<REF3.TAG0.OWNER>!=<SRC>)
SRC.SYS_HATA Bunu siz yapamazsınız.
ELSEIF (<SRC.F_CanSeeLos <REF3>>)
SRC.SYS_HATA Vendora çok uzaktasınız.
ELSEIF (<SRC.F_FLAGS_CHECK>)
SRC.SYS_HATA Bu durumda iken kullanamazsınız.
ELSEIF (<REF4.TOPOBJ>!=<REF3>)
SRC.SYS_HATA Bu eşya vendorda bulunmuyor.
ELSE
REF4.TAG0.VALUE=
REF4.CONT = <SRC.FINDLAYER(21)>
SRC.SYS_OK <REF4.NAME> isimli eşya çantanıza aktarıldı.
ENDIF
[FUNCTION f_vendor_item_name]< BR>IF (STRLEN(<ARGS>) > 16)
LOCAL.NAME=<STRSUB 0 16 <ARGS>>...
ELSE
LOCAL.NAME=<ARGS>
ENDIF
RETURN <LOCAL.NAME>
[FUNCTION find_house_vendor]
LOCAL.REGION=<ARGS>
FORCHARS 50
IF (<BASEID>==C_PLAYER_VENDOR) && (<REGION.UID>==<LOCAL.REGION>)
RETURN 1
ENDIF
ENDFOR
RETURN 0
[FUNCTION f_selling_item]
FORCONT <FINDLAYER(LAYER_PACK)> 99
IF (<TAG0.VALUE>)
LOCAL.SELLING_ITEM +=1
ENDIF
ENDFOR
RETURN=<DLOCAL.SELLING_ITEM>
[FUNCTION f_backpack_cont]
TRY UID.<UID.<UID>.FINDLAYER(21)>.CONT=<UID.<ARGS>.FINDLAYER(21)>
[DIALOG D_ITEM_VALUE]
100,100
NOMOVE
REF5=<ARGV[1]>
RESIZEPIC 0 0 9390 300 190
DHTMLGUMP 80 6 999 20 0 0 <Def.Bfont_Blue><SERV.NAME> Vendor Menüsü
DHTMLGUMP 50 40 200 50 0 0 Sayın <SRC.NAME>,<DEF.BR><F_VENDOR_ITEM_NAME <REF5.NAME>&g t; isimli eşyayı ne kadar altına satıcaksınız ?
RESIZEPIC 90 125 3000 150 30
DTEXTENTRY 106 130 600 20 1152 1 <QVAL (<REF5.TAG0.VALUE>)?<REF5.DTAG0.VALUE>:Fiyatı giriniz>
BUTTON 50 130 <DEF.BUTTONID_1> 1 0 1
SRC.CTAG0.PLAYER_VENDOR=<ARGV[0]>,<REF5>
[DIALOG D_ITEM_VALUE BUTTON]
ON=0
SRC.CTAG0.PLAYER_VENDOR=
ON=1
REF1=<STRARG <SRC.CTAG0.PLAYER_VENDOR>>
REF2=<STREAT <SRC.CTAG0.PLAYER_VENDOR>>
LOCAL.MAX_VALUE=<STRARG <DEF.PLAYER_VENDOR_ITEM_VALUE>>
LOCAL.MIN_VALUE=<STREAT <DEF.PLAYER_VENDOR_ITEM_VALUE>>
IF !(<REF1>) || !(<REF2>)
SRC.SYS_HATA Hatalı bir durum oluştu.
ELSEIF (<ISEMPTY <ARGTXT[1]>>)
SRC.SYS_HATA Bu kısmı boş bırakamazsınız.
ELSEIF !(<ISNUMBER <ARGTXT[1]>>)
SRC.SYS_HATA Sadece rakam girebilirsiniz.
ELSEIF (<REF2.TOPOBJ>!=<REF1>)
SRC.SYS_HATA Bu item vendorun çan tasında bulunmuyor.
ELSEIF (<SRC.F_CanSeeLos <REF1>>)
SRC.SYS_HATA Vendora ulaşamıyorsunuz.
ELSEIF (<ARGTXT[1]> > <dLOCAL.MAX_VALUE>) || (<ARGTXT[1]> < <dLOCAL.MIN_VALUE>)
SRC.SYS_HATA En yüksek fiyat olarak <dLOCAL.MAX_VALUE> altın,en düşük fiyat olarak <dLOCAL.MIN_VALUE> altın girebilirsiniz.
ELSE
REF2.TAG0.VALUE = <dARGTXT[1]>
SRC.SYS_OK <REF2.NAME> isimli eşyanın değeri <dARGTXT[1]> olarak ayarlandı.
ENDIF
SRC.CTAG0.PLAYER_VENDOR=
[DIALOG D_VENDOR_ADD_GOLD]
100,100
NOMOVE
RESIZEPIC 0 0 9390 300 200
DHTMLGUMP 80 6 999 20 0 0 <Def.Bfont_Blue><SERV.NAME> Vendor Menüsü
DHTMLGUMP 50 40 200 80 0 0 Sayın <SRC.NAME>,<DEF.BR>Vendorunuzun kasasına ne kadar altın ekleceksiniz ?<DEF.BR>Şuanki altın miktari:<GOLD>
RESIZEPIC 90 135 3000 150 30
DTEXTENTRY 106 140 600 20 1152 1 Buraya yazın
BUTTON 50 140 <DEF.BUTTON ID_1> 1 0 1
[DIALOG D_VENDOR_ADD_GOLD BUTTON]
ON=1
IF !(<UID.<UID>>)
SRC.SYS_HATA Hatalı bir durum oluştı.
ELSEIF (<SRC.F_CanSeeLos <UID>>)
SRC.SYS_HATA Vendora ulaşamıyorsunuz.
ELSEIF (<REF1.GOLD> > 2000000)
SRC.SYS_HATA Vendorunuzda zaten çok fazla para bulunuyor.
ELSEIF (<SRC.GOLD> < <DARGTXT[1]>)
SRC.SYS_HATA Yazdığınız miktarda paranız bulunmuyor.
ELSE
GOLD +=<dARGTXT[1]>
Findid.I_Player_Vendor.Timer=3600
SRC.GOLD -=<dARGTXT[1]>
SRC.SYS_OK Vendorunuzun çalışma süresini,<EVAL (<ARGTXT[1]>/250)> saat arttırdınız.
ENDIF
[DIALOG D_VENDOR_REVENUE]
100,100
NOMOVE
RESIZEPIC 0 0 9390 300 190
DHTMLGUMP 80 6 999 20 0 0 <Def.Bfont_Blue><SERV.NAME> Vendor Menüsü
DHTMLGUMP 50 40 200 50 0 0 Sayın <SRC.NAME>,<DEF.BR>Vendorunuzun kasasında <GOLD> altın bulunuyor.
RESIZEPIC 90 125 3000 150 30
DTEX TENTRY 106 130 600 20 1152 1 <GOLD>
BUTTON 50 130 <DEF.BUTTONID_1> 1 0 1
[DIALOG D_VENDOR_REVENUE BUTTON]
ON=1
IF (<TAG0.OWNER>!=<SRC>)
SRC.SYS_HATA Bunu siz yapamazsınız.
ELSEIF (<GOLD> < 1000)
SRC.SYS_HATA Vendorunuzda az para varken bunu yapamazsınız.
ELSEIF (<GOLD> < <DARGTXT[1]>)
SRC.SYS_HATA Vendorunuzda <DARGTXT[1]> altın bulunmuyor.
ELSEIF (<SRC.F_CanSeeLos <UID>>)
SRC.SYS_HATA Vendorunuza ulaşamıyorsunuz.
ELSEIF (<SRC.F_FLAGS_CHECK>)
SRC.SYS_HATA Bu durumda iken yapamazsınız.
ELSEIF (<ISEMPTY <ARGTXT[1]>>)
SRC.SYS_HATA Boş bırakamazsınız.
ELSEIF !(<ISNUMBER <ARGTXT[1]>>)
SRC.SYS_HATA Sadece rakam girmelisiniz.
ELSE
LOCAL.TIMER=<EVAL (<Argtxt[1]> / 250)>
GOLD -=<ARGTXT[1]>
Findid.I_Player_Vendor.Timer=120
SRC.GOLD +=<dARGTXT[1]>
SRC.SYS_OK <dARGTXT[1]> hasilat aldınız.SRC.SYS_OK Vendorunuzun çalışma süresi <dLOCAL.TIMER> saat azaldı.
ENDIF
[DIALOG D_VENDOR_REMOVE]
100,100
NOMOVE
RESIZEPIC 0 0 9390 300 190
DHTMLGUMP 80 6 999 20 0 0 <DEF.BFONT_BLUE><SERV.NAME> Vendor Menüsü
DHTMLGUMP 50 40 200 50 0 0 Sayın <SRC.NAME>,<DEF.BR>Vendorunuzun işine son vermekten eminmisiniz ?
DHTMLGUMP 70 110 200 20 0 0 Evet,işine son vereceğim.
DHTMLGUMP 70 130 200 20 0 0 Hayır,işine devam etsin.
BUTTON 50 110 <DEF.BUTTONID_1> 1 0 1
BUTTON 50 130 <DEF.BUTTONID_1> 1 0 2
[DIALOG D_VENDOR_REMOVE BUTTON]
ON=1
IF !(<UID.<UID>>)
SRC.SYS_HATA Bir hata oluştu.
ELSEIF (<TAG0.OWNER>!=<SRC>)
SRC.SYS_HATA Bu vendorun sahibi siz değilsiniz.
ELSEIF (<SRC.F_CanSeeLos <UID>>)
SRC.SYS_HATA Vendora ulaşamıyorsunuz.
ELSEIF (<SRC.F_FLAGS_CHECK>)
SRC.SYS_HATA Bu durumda iken yapamazsınız.
ELSE
F_UNEQUIP_PACK
F_B ACKPACK_CONT <SRC>
SRC.GOLD +=<GOLD>
SERV.NEWITEM I_DEED_PLAYER_VENDOR,1,<SRC>
SRC.SYS_OK <GOLD> altın size aktarıldı.
REMOVE
ENDIF
[DIALOG D_VENDOR_INFO]
200,50
NOMOVE
RESIZEPIC 0 0 9390 300 280
DHTMLGUMP 80 6 999 20 0 0 <Def.Bfont_Blue><SERV.NAME> Vendor Sistemi
LOCAL.PAGE=1
LOCAL.ITEM=0
PAGE 1
FOR <EVAL <Findid.I_Player_Vendor.More2> + 1>
REF3=<F_SELECT <dLOCAL._FOR>,<Findid.I_Player_Vendor.Tag0.Last_Sell_Item>>
IF (<dLOCAL.ITEM> >8)
LOCAL.ITEM=0
BUTTON 150 260 <DEF.BUTTONID_1> 0 <EVAL (<Local.Page>)+1> 1
DHTMLGUMP 187 260 999 20 0 0 İleri
LOCAL.PAGE ++
PAGE <dLOCAL.PAGE>
BUTTON 150 260 <DEF.BUTTONID_2> 0 <EVAL (<Local.Page>)-1> 1
DHTMLGUMP 187 260 999 20 0 0 Geri
ENDIF
IF (<REF3>)
DHTMLGUMP 80 <EVAL (<LOCAL.ITEM>*20)+50> 999 20 0 0 <REF3.NAME>< BR>LOCAL.ITEM ++
ENDIF
ENDFOR
[EVENTS e_vendor_item]
ON=@ItemClick
IF (<ACT.TOPOBJ.ID>==C_PLAYER_VENDOR)
ACT.MSG_NORMAL [Fiyatı:<QVAL (<ACT.TAG0.VALUE>)?<ACT.DTAG0.VALUE> gold]:Satılık değil]>
IF (<ACT.ISARMOR>) || (<ACT.ISWEAPON>)
ACT.MSG_NORMAL [Sağlamlık:%<ACT.HITPOINTS>]
ENDIF
ACT.MSG_OK <F_VENDOR_ITEM_NAME <ACT.NAME>>
RETURN 1
ENDIF
ON=@ItemDclick
IF (<ACT.TOPOBJ.ID>==C_PLAYER_VENDOR)
IF (<ACT.TYPE>==T_CONTAINER)
ACT.OPEN
RETURN 1
ENDIF
ENDIF
ON=@ItemPickup_Pack
IF (<ACT.TOPOBJ.ID>==C_PLAYER_VENDOR) && (<ACT.TOPOBJ.OWNER>!=<SRC>)
SRC.SYS_HATA Bunu siz yapamazsınız.
RETURN 1
ENDIF
IF (<ACT.TAG0.VALUE>)
ACT.TAG0.VALUE=
ENDIF
[EOF]
///////////////////////////
///Diğer Fonskiyonlar///
/////////////////////////
[FUNCTION f_select]
RETURN=<ARG V[<ARGV[0]>]>
[FUNCTION isnumber]
FOR 0 <EVAL STRLEN(<ARGS>) -1>
IF !STRMATCH('[0-9]','<StrSub <dLOCAL._FOR> 1 <ARGS>>')
RETURN 0
ENDIF
ENDFOR
RETURN 1
[FUNCTION f_MakePetOf]
SERV.NEWITEM i_memory
NEW.COLOR=memory_ipet
NEW.MORE1=04
NEW.MORE2=<SERV.TIME>
NEW.MOREP=<P>
NEW.LINK=<ARGS>
NEW.CONT=<UID>eRobert :diyer yarışmaya artık berk
Benim yok :P
|
|
| Konu | Kategori | Son cevap | Son yazan | Mesaj | Görüntüleme | |
|---|---|---|---|---|---|---|
|
|
Tek dialogta anket açtırmak
Son cevap: 01-09 23:01 · Son yazan: Pinke · Mesaj: 1 · Görüntü: 2800
|
Script Yardımı | 01-09 23:01 | 1 | 2800 | |
|
|
Sunucunuza özel web tasarım, hosting ve scripting
Son cevap: 03-04 15:02 · Son yazan: riot · Mesaj: 1 · Görüntü: 3181
|
Garbage | 03-04 15:02 | 1 | 3181 | |
|
|
Scripting için yardımcı arıyorum
Son cevap: 02-09 22:53 · Son yazan: asaga0909 · Mesaj: 1 · Görüntü: 3433
|
Sarı Sayfalar | 02-09 22:53 | 1 | 3433 | |
|
|
Anket sistemi
Son cevap: 30-12 01:21 · Son yazan: Epihaltes · Mesaj: 1 · Görüntü: 3522
|
Derleme Scriptler | 30-12 01:21 | 1 | 3522 | |
|
|
Scripting öğrenmek istiyorum
Son cevap: 27-04 13:32 · Son yazan: Readher · Mesaj: 9 · Görüntü: 9126
|
Sarı Sayfalar | 27-04 13:32 | 9 | 9126 |
Üye girişi ile forum, içerikler ve profil özelliklerine erişin.
Zorunlu Çerezler: Her zaman aktiftir. Site düzgün çalışması için gereklidir.