Bu taming scripti ama ? distance check nedir
[ITEMDEF i_deed_animal]
DEFNAME=i_deed_animal
NAME=pet trading contract
ID=i_deed
WEIGHT=5.0
TYPE=t_script
VALUE=50
CATEGORY=Custom Items
SUBSECTION=Deeds
DESCRIPTION=Animal Trading Contract
On=@Create
color 08ac
On=@Click
if (<more2>)
message @56,,1 [<tag.trade>]
endif
message <name>
return 1
On=@DClick
if (<topobj.uid> != <src.uid>)
src.sysmessage @95,,1 Bunu kullanabilmeniz icin cantanizda olmali.
elseif (<more2>)
if (<src.flags>&statf_hidden) || (<src.flags>&statf_invisible)
src.sysmessage @95,,1 Gizlenmis durumdayken bunu kullanamazsiniz.
return 1
endif
try src.newnpc <tag.trade_id>
link <src.act.uid>
link.name <tag.trade_name>
link.karma <tag.trade_karma>
link.fame <tag.trade_fame>
link.str <tag.trade_str>
link.hits <tag.trade_str>
link.dex <tag.trade_dex>
link.int <tag.trade_int>
link.food <tag.trade_food>
link.color <color>
if (<link.color> == 0835)
link.color 0481
endif
link.oskin <link.color>
link.memorydel <src.uid>
link.newitem i_memory
link.act.attr 04
link.act.more1 04
link.act.more2 <serv.time>
link.act.morep <link.p>
link.act.color memory_ipet
link.act.timer -1
link.act.link <src.uid>
link.act.cont <link.uid>
link.flags <link.flags>&statf_pet
link.update
link.anim 5
link.bark 3
remove
else
target
src.sysmessage @0790 Kucultulecek hayvani secin.
endif
return 1
On=@TargOn_Item
src.sysmessage @1100 Esyalari kucultemezsiniz
target @0790 Kucultulecek hayvani secin.
return 1
On=@TargOn_Char
if !(<src.targ.npc>)
src.sysmessage @95 Oyunculari kucultemezsiniz.
elseif !(<src.targ.ismypet>)
src.sysmessage @95 Bu hayvan size ait degil.
elseif (<src.targ.flags>&statf_stone) || (<src.targ.flags>&statf_freeze)
src.sysmessage @95 Hayvani su anki durumunda kucultemezsiniz.
elseif ((<src.targ.body> == c_man) || (<src.targ.body> == c_woman))
src.sysmessage @95 Sadece hayvanlari kucultebilirsiniz.
elseif (<src.targ.flags>&statf_invul) || (<src.targ.color> == 07fff)
src.sysmessage @95 Bu hayvani kucultemezsiniz.
elseif (<src.targ.memoryfindtype.memory_war_targ>)
src.sysmessage @95 Hayvan su anda cok kizgin.
elseif (<src.targ.findid.i_rune_summon_creature>)
src.sysmessage @95 Buyu ile yaratilmis hayvanlari kucultemezsiniz.
elseif ((<src.targ.id> == c_llama_pack) || (<src.targ.id> == c_horse_pack))
src.sysmessage @95 Pack hayvanlari kucultemezsiniz.
elseif (<src.targ.food> < 6)
src.sysmessage @95 Bu hayvan acikmis.
elseif (<src.targ.findid.i_rune_bless>) || (<src.targ.findid.i_rune_protection>) || (<src.targ.findid.i_rune_reactive_armor>) || (<src.targ.findid.i_rune_agility>) || (<src.targ.findid.i_rune_strength>)
src.sysmessage @95 Bu Hayvanin Uzerinde Buyu Var Yada Potion Icmis.
elseif (<src.targ.hits> < <src.targ.str>)
src.sysmessage @95 Bu hayvan yaralanmis.
elseif (<src.targ.findid.i_rune_poison>)
src.sysmessage @95 Bu hayvan zehirlenmis.
elseif !(<src.targ.canseelos>)
src.sysmessage @95 Hayvana ulasamiyorsunuz.
elseif (<src.targ.distance> > 3)
src.sysmessage @95 Hayvana yeterince yakin degilsiniz.
elseif (<src.targ.id> == c_m_golem_tinker1)
src.newitem i_pet_golem1
src.act.name <src.targ.name>
src.act.bounce
src.targ.remove
remove
elseif (<src.targ.id> == c_m_golem_tinker2)
src.newitem i_pet_golem2
src.act.name <src.targ.name>
src.act.bounce
src.targ.remove
remove
else
name Filled pet trading contract
attr 00
more2 1
color <src.targ.color>
if (<color> == 0481)
color 0835
endif
tag.trade <src.targ.job>
tag.trade_id <src.targ.id>
tag.trade_name <src.targ.name>
tag.trade_str <src.targ.str>
tag.trade_dex <src.targ.dex>
tag.trade_int <src.targ.int>
tag.trade_karma <src.targ.karma>
tag.trade_fame <src.targ.fame>
tag.trade_food <src.targ.food>
src.targ.bark 2
src.targ.remove
src.sysmessage @95,,1 <tag.trade>: kontrat haline getirildi.
endif
return 1
[function distcheck]
if (<tag.hayvanx> > <p.x>)
if (<eval <tag.hayvanx> - 5> > <p.x>)
sysmessage @021,,1 Hayvandan uzaklastiniz.
tag.animalaway=1
return 1
endif
else
if (<eval <tag.hayvanx> + 5> < <p.x>)
sysmessage @021,,1 Hayvandan uzaklastiniz.
tag.animalaway=1
return 1
endif
endif
if (<tag.hayvany> > <p.y>)
if (<eval <tag.hayvany> - 5> > <p.y>)
sysmessage @021,,1 Hayvandan uzaklastiniz.
tag.animalaway=1
return 1
endif
else
if (<eval <tag.hayvany> + 5> < <p.y>)
sysmessage @021,,1 Hayvandan uzaklastiniz.
tag.animalaway=1
return 1
endif
endif
[ITEMDEF i_staff_taming]
ID=i_staff_gnarled
NAME=taming staff
TYPE=t_weapon_mace_staff
VALUE=290
TWOHANDS=Y
LAYER=2
WEIGHT=10
DAM=5,10
On=@Create
color 08ac
more2 0
timer -1
hitpoints 5
On=@DClick
if (<topobj.uid> != <src.uid>)
src.sysmessage @95 Bunu kullanabilmeniz icin uzerinizde olmali.
elseif (<src.flags>&statf_hidden) || (<src.flags>&statf_invisible)
src.sysmessage @95 Gizlenmis durumdayken bunu kullanamazsiniz.
elseif (<src.targ.region.defname> == a_townZoo)
src.sysmessage @95 Bu bolgede taming yasaktir.
elseif (<timer> == -1)
equip
target @95 Hangi hayvani evcillestirmek istiyorsunuz?
endif
return 1
On=@UnEquip
more2 0
timer -1
link -1
src.events -e_taming_f
On=@Timer
cont.tag.animalaway=0
cont.tag.hayvanx=<link.p.x>
cont.tag.hayvany=<link.p.y>
cont.distcheck
if (0<cont.tag.animalaway>)
cont.events -e_taming_f
more2 0
//cont.say taz ownz!
return 1
endif
if (<more2> < 6)
dorand 10
cont.sayu Gel <link.name>, gel..
cont.sayu Sana zarar vermeyecegim <link.name>..
cont.sayu Sakin ol, <link.name>.
cont.sayu Her zaman senin gibi bir <link.name> sahibi olmak istemistim..
cont.sayu Cok tatlisin, <link.name>.
cont.sayu Gel bir tanem, gel canim..
cont.sayu Seni incitmeyecegim, <link.name>.
cont.sayu Arkadasin olmak istiyorum.
cont.sayu Gel <cont.sex babana/annene>, <link.name>.
cont.sayu Gel <link.name>, gel <cont.sex babana/annene>.
enddo
dorand 2
cont.anim 17
cont.anim 19
enddo
timer 2
more2 (<more2> + 1)
return 1
endif
more2 0
if !(<link.npc> == 1)
cont.sysmessage @95,,1 Bunu evcillestiremezsiniz.
return 1
endif
if (rand(100) < 75)
if (<link.memoryfindtype.memory_ispawned>)
link.memoryfindtype.memory_ispawned.remove
endif
link.karma -50
link.memorydel <cont.uid>
link.newitem i_memory
link.act.attr 04
link.act.more1 04
link.act.more2 <serv.time>
link.act.morep <link.p>
link.act.color memory_ipet
link.act.timer -1
link.act.link <cont.uid>
link.act.cont <link.uid>
link.flags <link.flags>&statf_pet
CONT.events -e_taming_f
cont.sysmessage @100 <link.name> sizi sahibi olarak kabul etti.
if ((<cont.skilllock[35]> == 0) && (<cont.skilltotal> < 800.0))
if (<cont.taming> < 30.0)
if (rand(2) == 1)
cont.taming (<cont.taming> + 1)
endif
elseif (<cont.taming> < 50.0)
if (rand(4) == 1)
cont.taming (<cont.taming> + 1)
endif
elseif (<cont.taming> < 60.0)
if (rand(6) == 1)
cont.taming (<cont.taming> + 1)
endif
elseif (<cont.taming> < 75.0)
if (rand(6) == 1)
cont.taming (<cont.taming> + 1)
endif
elseif (<cont.taming> < 87.0)
if (rand(6) == 1)
cont.taming (<cont.taming> + 1)
endif
elseif (<cont.taming> < 100.0)
if (rand(8) == 1)
cont.taming (<cont.taming> + 1)
endif
endif
endif
if ((<cont.skilllock[2]> == 0) && (<cont.skilltotal> < 800.0))
if (<cont.animallore> < 30.0)
if (rand(2) == 1)
cont.animallore (<cont.animallore> + 1)
endif
elseif (<cont.animallore> < 50.0)
if (rand(4) == 1)
cont.animallore (<cont.taming> + 1)
endif
elseif (<cont.animallore> < 60.0)
if (rand(8) == 2)
cont.animallore (<cont.animallore> + 1)
endif
elseif (<cont.animallore> < 75.0)
if (rand(12) == 1)
cont.animallore (<cont.animallore> + 1)
endif
elseif (<cont.animallore> < 87.0)
if (rand(24) == 1)
cont.animallore (<cont.animallore> + 1)
endif
elseif (<cont.animallore> < 100.0)
if (rand(28) == 1)
cont.animallore (<cont.animallore> + 1)
endif
endif
endif
link.tag.tamer <cont.uid>
link -1
else
cont.sysmessage @39,,1 Hayvani evcillestirmeyi basaramadiniz.
link -1
endif
return 1
On=@TargOn_Char
if !(<src.targ.region.defname> == a_townZoo)
if ((<src.targ.npc> == 1) && (<src.targ.id> != c_pv))
if !(<src.targ.canseelos>)
src.sysmessage @95 Hayvana ulasamiyorsunuz.
elseif (<src.targ.distance> > 3)
src.sysmessage @95 Hayvana yeterince yakin degilsiniz.
elseif (<src.targ.memoryfindtype.MEMORY_ISPAWNED.link.distance> > 4)
src.sysmessage @32 Hayvan yuvasindan uzak.
elseif (<src.targ.memoryfindtype.memory_ipet>)
if (<src.targ.memoryfindtype.(memory_ipet|memory_guard).link> == <src.uid>)
src.sysmessage @95 <src.targ.name> zaten size ait.
src.targ.flags <src.targ.flags>&statf_pet
else
src.sysmessage @95 <src.targ.name> bir baskasina ait.
endif
elseif (<src.targ.memoryfindtype.memory_fight>)
src.sysmessage @95,,1 Hayvan su an musait degil.
elseif (<src.targ.memoryfindtype.memory_war_targ.link> == <src.uid>)
src.sysmessage @95,,1 Hayvan su an size cok kizgin.
elseif (<src.targ.findid.i_rune_summon_creature>)
src.sysmessage @95,,1 Buyu ile yaratilmis hayvanlari evcillestirmezsiniz
elseif (0<src.targ.tag.tamer> == 0<src.uid>) // tamerlar elele bug-free dunyaya
src.sysmessage @95,,1 Hayvan artik sizi umursamiyor.
elseif (<src.taming> < <src.targ.taming>)
src.anim 19
src.sysmessage @95,,1 <src.targ.name> icin taming skilliniz yeterli degil. (gerekli skill: <src.targ.taming>)
elseif (<src.animallore> < <src.targ.animallore>)
src.anim 19
src.sysmessage @95,,1 <src.targ.name> icin animal lore skilliniz yeterli degil. (gerekli skill: <src.targ.animallore>)
else // tame etmeye ba$la...
link <src.targ.uid>
src.anim 19
timer 2
src.events +e_taming_f
endif
else
src.sysmessage @95,,1 Bunu evcillestiremezsiniz.
endif
else
src.sysmessage @95,,1 Bu bolgede taming yasaktir.
endif
return 1
On=@TargOn_Item
return 1
[function memorydel]
if (0<args>)
if (<findid.i_memory.link> == <args>)
findid.i_memory.remove
memorydel <args>
endif
endif
[EVENTS e_taming_f]
ON=@Hittry
IF (rand(2) =1)
SYSMESSAGE @95,,1 Konsantrasyonunuzu kaybettiniz, evcillestiremiyorsunuz.
//findlayer(2).skill fail
//findlayer(2).action - 1
EVENTS= -e_taming_f
findlayer(2).more2 0
findlayer(2).timer -1
findlayer(2).link -1
ENDIF
ON=@Death
findlayer(2).unequip
EVENTS= -e_taming_f
ON=@spelleffect
IF (rand(2) =1)
IF (<argn> == 1) || (<argn> == 3) || (<argn> == 5) || (<argn> == 8) || (<argn> == 12) || (<argn> == 18) || (<argn> == 20) || (<argn> == 27) || (<argn> == 30) || (<argn> == 31) || (<argn> == 37) || (<argn> == 38) || (<argn> == 39) || (<argn> == 42) || (<argn> == 43) || (<argn> == 46) || (<argn> == 47) || (<argn> == 49) || (<argn> == 51) || (<argn> == 53) || (<argn> == 55) || (<argn> == 57)
SYSMESSAGE @95,,1 Konsantrasyonunuzu kaybettiniz, evcillestiremiyorsunuz.
//src.findlayer(2).skill fail
//src.findlayer(2).action - 1
EVENTS= -e_taming_f
src.findlayer(2).more2 0
src.findlayer(2).timer -1
src.findlayer(2).link -1
ENDIF
ENDIF
[EOF]