electroworld - 20-07-2010 01:45 GMT -
Merhaba arkadaslar, bir olta scripti düzenledim fakat anlıyamadığım bir bug oluştu, sizlere danışmak istedim.
oltayı eline aldığında oltanın üzerine başka bir item daha tutabiliyor. Yani olta elindeyken aynı anda daggerıda tutabiliyor.her 2 side elinde gözüküyor. Ben birini alınca diğerinin çantaya düşmesini nasıl sağlayabilirim?
Merhaba arkadaslar, bir olta scripti düzenledim fakat anlıyamadığım bir bug oluştu, sizlere danışmak istedim.
oltayı eline aldığında oltanın üzerine başka bir item daha tutabiliyor. Yani olta elindeyken aynı anda daggerıda tutabiliyor.her 2 side elinde gözüküyor. Ben birini alınca diğerinin çantaya düşmesini nasıl sağlayabilirim?
Rowall - 20-07-2010 02:04 GMT -
Olta scriptini koyar mısın? Ne eksikmiş bakalım
Olta scriptini koyar mısın? Ne eksikmiş bakalım
electroworld - 20-07-2010 02:23 GMT -
Tabi ekleyeyim.
Yardımcı olabilecek var mı?
Son güncelleme: electroworld tarafından 20-07-2010 15:32 GMT tarihinde, önce.
Tabi ekleyeyim.
Kod:
[itemdef i_olta]
id = i_fishing_pole
type = t_fish_pole
value = 3000
name = Balik Oltasi
on=@create
color = 0
on=@equip
targetfg f_fishing
return 1
[itemdef i_fishing_timer]
id = i_gold
type = t_eq_script
value = 0
weight =
name = fishing timer
on=@create
color = 0
more1 = 0
attr = attr_newbie|attr_static|attr_decay
on=@equip
timer = 1
on=@timer
if (<more2> > 0)
more1 ++
more2 --
trysrc <cont> dialogclose d_fishing_timer
trysrc <cont> dialog d_fishing_timer
timer = 1
return 1
else
trysrc <cont> dialogclose d_fishing_timer
remove
return 1
endif
////////////////////////////////STARTING FISHING SYSTEM
[typedef t_fishing]
on=@dclick
if (<src.findid.i_fishing>)
src.sysmessage @08a Oltanizi zaten kullaniyorsunuz.
else
src.sysmessage @07a1 Balik tutacaginiz yeri secin...
targetfg f_fishing
endif
equip
return 1
[function f_fishing]
if !(<serv.map(<targp>).type> == t_water)
src.sysmessage @08a Sadece acik sularda balik tutabilirsiniz.
else
anim 9
timerf 1,f_su <targp>
timerf 1,emote fishing
endif
[function f_su]
////Movement Control
newitem i_gold
new.attr attr_decay | attr_invis
new.type t_controlfish
new.more1 <uid>
new.p <p>
new.move s
newitem i_gold
new.attr attr_decay | attr_invis
new.type t_controlfish
new.more1 <uid>
new.p <p>
new.move e
newitem i_gold
new.attr attr_decay | attr_invis
new.type t_controlfish
new.more1 <uid>
new.p <p>
new.move n
newitem i_gold
new.attr attr_decay | attr_invis
new.type t_controlfish
new.more1 <uid>
new.p <p>
new.move w
newitem i_gold
new.attr attr_decay | attr_invis
new.type t_controlfish
new.more1 <uid>
new.p <p>
new.move sw
newitem i_gold
new.attr attr_decay | attr_invis
new.type t_controlfish
new.more1 <uid>
new.p <p>
new.move se
newitem i_gold
new.attr attr_decay | attr_invis
new.type t_controlfish
new.more1 <uid>
new.p <p>
new.move ne
newitem i_gold
new.attr attr_decay | attr_invis
new.type t_controlfish
new.more1 <uid>
new.p <p>
new.move nw
///Control Ends
events e_fishing
serv.newitem 0352d
new.p <args>
new.more1 <uid>
face <new>
ref2 <new.uid>
//serv.newitem i_fishing_timer,1,<src>,1
//new.more2 <ref2.distance <uid>>
//dialog d_fishing_timer
for 1 <ref2.distance <uid>>
timerf <dlocal._for>,f_rp
endfor
timerf <ref2.distance <uid>>,f_finish
serv.newitem i_fishing,1,<src>,1
new.more1 <ref2>
[typedef t_controlfish]
[itemdef i_fishing]
id i_gold
name Fishing
type t_eq_script
layer layer_special
[function f_abort]
f_temizle
try uid.<findid.i_fishing.more1>.remove
findid.i_fishing.remove
src.sysmessage @08a Oltayi hareket ettirdiniz. Balik kacti...
events -e_fishing
[function f_finish]
if (<findid.i_fishing>)
if (<fishing> < 200)
local.rand <R1,2>
else
local.rand <R1,<eval <fishing>/100>>
endif
if (<local.rand> == 1)
f_nofish
else
f_temizle
if (<fishing> < 100)
basicskillgain 18,0.1
else (rand(<eval <fishing>/100>) == 1)
basicskillgain 18,0.1
endif
try uid.<findid.i_fishing.more1>.remove
findid.i_fishing.remove
if (<fishing> < 300)
local.amount <R1,5>
else
local.amount (<eval <fishing>/100>)
endif
newitem i_fish_big_<R1,4>,<dlocal.amount>,<src>
events -e_fishing
endif
endif
[function f_nofish]
f_temizle
try uid.<findid.i_fishing.more1>.remove
findid.i_fishing.remove
events -e_fishing
src.sysmessage @08a Oltaniza balik gelmemis.
[function f_rp]
ref1=<src.findid.i_fishing.more1>
face <ref1>
if (<dir> == 6)
ref1.move e
elif (<dir> == 5)
ref1.move ne
elif (<dir> == 4)
ref1.move n
elif (<dir> == 3)
ref1.move nw
elif (<dir> == 2)
ref1.move w
elif (<dir> == 1)
ref1.move sw
elif (<dir> == 0)
ref1.move s
elif (<dir> == 7)
ref1.move se
endif
[events e_fishing]
on=@itemstep
if <act.type> == t_controlfish
if <act.more1> == <SRC>
f_abort
endif
endif
on=@spellcast
f_abort
on=@attack
f_abort
on=@gethit
f_abort
on=@hit
f_abort
on=@skillstart
f_abort
on=@itemunequip
if (<act.type> == t_fishing)
f_abort
endif
[function f_temizle]
foritems 2
if (<type> == t_controlfish)
if (<more1> == <src>)
remove
endif
endif
endfor
[function basicskillgain]
if (<skilltotal> < 7000)
if (<skilllock[<argv[0]>]> == 0) && (<eval <serv.skill.<argv[0]>.key>+<argv[1]>> < <src.skillclass.<argv[0]>>)
src.<argv[0]> +=<argv[1]>
src.sysmessage @88 <serv.skill.<argv[0]>.name>'iniz <argv[1]> artarak <src.<argv[0]>> duzeyine gelmistir.
endif
endif
[EOF]
Yardımcı olabilecek var mı?
Son güncelleme: electroworld tarafından 20-07-2010 15:32 GMT tarihinde, önce.