Arkadaşlar benim sphere versiyonu 55r idi ama 56b ye geçirdiğimde bazı hatalar meydana geldi.Şimdi bandaj sisteminde bir hata var,hata player in bandaj atarken frozen kalmaması yani koşarak atabilmesi 55r versiyonunda boyle bir sorun yoktu bunu nasıl duzeltebilirim şimdiden tşkler...


[Function heal_say_norm] 
sayua 0481,6,0,enu <args> 

[Function heal_say_hata] 
sayua 0020,6,0,enu <args> 

[ITEMDEF 0ee9] 
DUPEITEM=0e21 

[ITEMDEF 0e22] 
DUPEITEM=0e20 

[ITEMDEF 0e21] 
DEFNAME=i_bandage 
RESOURCES=i_cloth 
TYPE=T_BANDAGE 
WEIGHT=0.2 
DUPELIST=0ee9 
CATEGORY=Items by Professions 
SUBSECTION=Healer 
DESCRIPTION=clean bandages 

On=@DClick 
if !(<topobj.uid> == <src.uid>) 
src.sysmessage Bandajlar cantanizda olmali. 
return 1 
elseif (<src.findid.i_mem_healing.timer> < 0) 
src.findid.i_mem_healing.remove 
return 0 
elseif (<src.findid.i_mem_healing>) 
src.sysmessage Bandajlari su an kullanamazsiniz. 
return 1 
else 
return 0 
endif 

On=@Targon_Char 
src.skill fail 
if !(<src.restest 1 i_bandage>) 
src.sysmessage Bandajiniz yok. 
return 1 
elseif (<src.targ.distance> > 3) 
src.sysmessage Hedefe ulasamiyorsunuz.
return 1
elseif !(<src.targ.canseelos>)
src.sysmessage Hedefe ulasamiyorsunuz.
return 1
elseif (<src.flags>&statf_dead)
src.sysmessage olu iken bandajlarinizi kullanamazsiniz.
return 1
elseif (<src.targ.npc> == 10) ||(<src.targ.npc> == 11) || (<src.targ.npc> == 12) || (<src.targ.npc> == 13) 
src.sysmessage Bunu iyilestiremezsiniz. 
return 1 
elseif (<src.targ.npc> == 1) 
if (<src.targ.id> == c_m_golem_tinker1) || (<src.targ.id> == c_m_golem_tinker2) || (<src.targ.id> == c_m_golem) 
src.sysmessage Golem'leri bandajla iyilestiremezsiniz. 
elseif !((<src.targ.hits> < <src.targ.str>) || (<src.targ.findid.i_bleeding>) || (<src.targ.findid.i_rune_poison>)) 
src.sysmessage <src.targ.name> tedaviye ihtiyac duymuyor. 
return 1 
elseif (<src.targ.findid.i_bleeding>) 
if ((<src.veterinary> < 60.0) || (<src.animallore> < 60.0)) 
src.sysmessage Hayvan uzerindeki yarayi tedavi edecek kadar yetenekli degilsiniz. 
return 1 
endif 
elseif (<src.targ.findid.i_rune_poison>) 
if ((<src.veterinary> < 60.0) || (<src.animallore> < 60.0)) 
src.sysmessage Hayvan uzerindeki zehiri tedavi edecek kadar yetenekli degilsiniz. 
return 1 
endif 
else 
var.nx1 (<src.veterinary> / {20 50}) 
var.nx2 (<src.animallore> / 50) 
var.nx3 <eval (<var.nx1> + <var.nx2> + {3 10})> 
endif 
src.sd 1 
src.anim 17 
src.newitem i_mem_healing 
src.act.morey <eval <var.nx3>> 
src.act.morex 3 
src.act.link <src.targ.uid> 
src.act.equip 
src.face 
return 1 
elseif (<src.targ.flags>&statf_dead) 
if ((<src.healing> < 80.0) || (<src.anatomy> < 80.0)) 
src.sysmessage Henuz oluleri diriltecek kudrete sahip degilsiniz. 
elseif !(<src.restest 5 i_bandage>) 
src.sysmessage Diriltme islemi icin 5 bandaja ihtiyaciniz var. 
else 
if (<src.targ.kills> > 5) 
src.heal_say_norm * <src.targ.name> isimli katili diriltir * 
elseif (<src.targ.flags>&statf_criminal) 
src.heal_say_norm * <src.targ.name> isimli sucluyu diriltir * 
elseif (<src.memoryfindtype.memory_town>) && (<src.targ.memoryfindtype.memory_town>) && (<src.memoryfindtype.memory_town.link> != <src.targ.memoryfindtype.memory_town.link>) 
elseif (<src.memoryfindtype.memory_guild.link.align>) && (<src.targ.memoryfindtype.memory_guild.link.align>) && (<src.memoryfindtype.memory_guild.link.align> != <src.targ.memoryfindtype.memory_guild.link.align>) 
endif 
src.sd 2 
src.face 
src.anim 17 
src.consume 5 i_bandage 
src.targ.spelleffect s_resurrection 1000 
src.targ.color 0909 
src.targ.heal_say_norm * <src.name> sayesinde hayata doner * 
src.checkhealing 2 
src.checkanatomy 2 
endif 
return 1 
elseif (<src.targ.memoryfindtype.memory_town>) && !(<src.memoryfindtype.memory_town>) 
src.sysmessage Faction uyelerini iyilestiremezsiniz. 
return 1 
elseif (<src.targ.memoryfindtype.memory_guild.link.align> > 0) && !(<src.memoryfindtype.memory_guild.link.align>) 
src.sysmessage Order/Chaos uyelerini iyilestiremezsiniz. 
return 1 
elseif !((<src.targ.hits> < <src.targ.str>) || (<src.targ.findid.i_bleeding>) || (<src.targ.findid.i_rune_poison>)) 
if !(<src.targ.uid> == <src.uid>) 
src.sysmessage <src.targ.name> tedaviye ihtiyac duymuyor. 
else 
src.sysmessage Tedaviye gereksiniminiz yok. 
endif 
return 1 
elseif (<src.targ.findid.i_bleeding>) 
if ((<src.healing> < 60.0) || (<src.anatomy> < 60.0)) 
src.sysmessage Yarayi tedavi edecek kadar yetenekli degilsiniz. 
return 1 
endif 
elseif (<src.targ.findid.i_rune_poison>) 
if ((<src.healing> < 60.0) || (<src.anatomy> < 60.0)) 
src.sysmessage Zehiri tedavi edecek kadar yetenekli degilsiniz. 
return 1 
endif 
else 
var.nx1 (<src.healing> / {20 50}) 
var.nx2 (<src.anatomy> / 50) 
var.nx3 <eval (<var.nx1> + <var.nx2> + {3 10})> 
endif 

src.sd 1 
src.anim 17 
src.newitem i_mem_healing 
src.act.morey <eval <var.nx3>> 
if !(<src.targ.uid> == <src.uid>) // heal other 
src.act.morex 1 
src.act.link <src.targ.uid> 
src.face 
endif 
src.act.equip 
return 1 

[itemdef i_mem_healing] 
ID=i_memory 
TYPE=t_eq_script 
NAME=healing mem 

On=@Create 
attr attr_decay|attr_newbie 

On=@Equip 
src.events +e_healing 
timer <eval (8 - <eval (<src.dex> / 25)>)>

On=@UnEquip 
cont.events -e_healing 

On=@Timer 
if (<morey>) 
if (<morex> == 3) // veterinary 
if !(<link.hits> < <link.str>) || !(<link.findid.i_bleeding>) || !(<link.findid.i_rune_poison>) 
cont.sysmessage <link.name> tedaviye ihtiyac duymuyor. 
remove 
return 1 
elseif (<link.findid.i_bleeding>) 
if (<cont.veterinary> < 60.0) || (<cont.animallore> < 60.0) 
cont.sysmessage Yarayi tedavi edecek kadar yetenekli degilsiniz. 
remove 
return 1 
endif 
elseif (<link.findid.i_rune_poison>) 
if (<cont.veterinary> < 60.0) || (<cont.animallore> < 60.0) 
cont.sysmessage Zehiri tedavi edecek kadar yetenekli degilsiniz. 
remove 
return 1 
endif 
elseif !(<cont.restest 1 i_bandage>) 
cont.sysmessage Bandajiniz yok. 
remove 
return 1 
endif 
cont.consume 1 i_bandage 
if (<link.findid.i_bleeding>) // cure animal 
if !(rand(5) == 1) 
link.findid.i_bleeding.remove 
link.findid.i_bleeding2.remove 
link.effect 3,0376a,2,10,1 
link.sayu * iyilestirilir * 
else 
cont.heal_say_hata * <link.name> uzerindeki yarayi kapatamaz * 
endif 
elseif (<link.findid.i_rune_poison>) // cure animal 
if !(rand(5) == 1) 
link.findid.i_rune_poison.remove 
link.effect 3,0376a,2,10,1 
link.sayu * iyilestirilir * 
else 
cont.heal_say_hata * <link.name> uzerindeki zehiri iyilestiremez * 
endif 
else // heal animal 
link.hits <eval (<link.hits> + <morey>)> 
link.effect 3,0376a,2,10,1 
if (<link.hits> > <link.str>) 
link.hits <link.str> 
endif 
link.sayu * tedavi gorur * 
link.update 
endif 
cont.checkveterinary 
cont.checkanimallore 
if (<cont.dex> < 35) 
timer 6 
else 
timer 4 
endif 
elseif (<morex>) // others 
if !(<link.hits> < <link.str>) && !(<link.findid.i_bleeding>) && !(<link.findid.i_rune_poison>) 
cont.sysmessage <link.name> tedaviye ihtiyac duymuyor. 
remove 
return 1 
elseif (<link.hits> < 1) 
cont.sysmessage <link.name> tedavi esnasinda hayatini kaybetti. 
remove 
return 1
////////////////////burdan kestim

else // heal other 
link.hits (<link.hits> + <morey>) 
link.effect 3,0376a,2,10,1 

////////////////////buraya pastledim
////başı bura

elseif (<link.findid.i_bleeding>) 
if (<cont.healing> < 60.0) || (<cont.anatomy> < 60.0) 
cont.sysmessage Yarayi tedavi edecek kadar yetenekli degilsiniz. 
remove 
return 1 
endif 
elseif (<link.findid.i_rune_poison>) 
if (<cont.healing> < 60.0) || (<cont.anatomy> < 60.0) 
cont.sysmessage Zehiri tedavi edecek kadar yetenekli degilsiniz. 
remove 
return 1 
endif 
elseif !(<cont.restest 1 i_bandage>) 
cont.sysmessage Bandajiniz yok. 
remove 
return 1 
endif 
cont.consume 1 i_bandage 
if (<link.findid.i_bleeding>) // cure other 
if !(rand(3) == 1) 
link.findid.i_bleeding.remove 
link.findid.i_bleeding2.remove 
link.effect 3,0376a,2,10,1 
if (<link.kills> > 5) 
//cont.heal_say_norm * <link.name> isimli katilin yarasini kapatir * 
elseif (<link.flags>&statf_criminal) 
//cont.heal_say_norm * <link.name> isimli suclunun yarasini kapatir * 
else 
link.heal_say_norm * <cont.name> tarafindan yarasi kapatilir * 
if (<link.memoryfindtype.memory_town>) && (<cont.memoryfindtype.memory_town>) && (<cont.memoryfindtype.memory_town.link> != <link.memoryfindtype.memory_town.link>) 
elseif (<link.memoryfindtype.memory_guild.link.align>) && (<cont.memoryfindtype.memory_guild.link.align>) && (<cont.memoryfindtype.memory_guild.link.align> != <link.memoryfindtype.memory_guild.link.align>) 
endif 
endif 
else 
cont.heal_say_hata * <link.name> uzerindeki yarayi kapatamaz * 
endif 
elseif (<link.findid.i_rune_poison>) // cure other 
if !(rand(3) == 1) 
link.findid.i_rune_poison.remove 
link.effect 3,0376a,2,10,1 
if (<link.kills> > 5) 
//cont.heal_say_norm * <link.name> isimli katili iyilestirir *
elseif (<link.flags>&statf_criminal) 
//cont.heal_say_norm * <link.name> isimli sucluyu iyilestirir *
else 
link.heal_say_norm * <cont.name> tarafindan iyilestirilir * 
if (<link.memoryfindtype.memory_town>) && (<cont.memoryfindtype.memory_town>) && (<cont.memoryfindtype.memory_town.link> != <link.memoryfindtype.memory_town.link>) 
elseif (<link.memoryfindtype.memory_guild.link.align>) && (<cont.memoryfindtype.memory_guild.link.align>) && (<cont.memoryfindtype.memory_guild.link.align> != <link.memoryfindtype.memory_guild.link.align>) 
endif 
endif 
else 
cont.heal_say_hata * <link.name> uzerindeki zehiri iyilestiremez *
endif
///////////////////burda bitti

if (<link.hits> > <link.str>) 
link.hits <link.str> 
endif 
if (<link.kills> > 5) 
cont.heal_say_norm * <link.name> isimli katili tedavi eder * 
cont.criminal 1
elseif (<link.flags>&statf_criminal) 
cont.heal_say_norm * <link.name> isimli sucluyu tedavi eder * 
cont.criminal 1
else 
link.heal_say_norm * <cont.name> tarafindan tedavi edilir * 
if (<link.memoryfindtype.memory_town>) && (<cont.memoryfindtype.memory_town>) && (<cont.memoryfindtype.memory_town.link> != <link.memoryfindtype.memory_town.link>) 
elseif (<link.memoryfindtype.memory_guild.link.align>) && (<cont.memoryfindtype.memory_guild.link.align>) && (<cont.memoryfindtype.memory_guild.link.align> != <link.memoryfindtype.memory_guild.link.align>) 
endif 
endif 
endif 
cont.checkhealing 1 
cont.checkanatomy 1 
if (<cont.dex> < 35) 
timer 6 
else 
timer 4 
endif 
else 
if !(<cont.hits> < <cont.str>) && !(<cont.findid.i_bleeding>) && !(<cont.findid.i_rune_poison>) 
cont.sysmessage Tedaviye ihtiyac duymuyorsunuz. 
remove 
return 1 
elseif (<cont.hits> < 1) 
remove 
return 1 

/////////////burdan aldim 2 "II"

else // heal self 
cont.hits (<cont.hits> + <morey>) 
cont.effect 3,0376a,2,10,1 

/////////////buraya koydum 2 "II"
/////burdabaşlıyor
elseif (<cont.findid.i_bleeding>) 
if (<cont.healing> < 60.0) || (<cont.anatomy> < 60.0) 
cont.sysmessage Yarayi tedavi edecek kadar yetenekli degilsiniz. 
remove 
return 1 
endif 
elseif (<cont.findid.i_rune_poison>) 
if (<cont.healing> < 60.0) || (<cont.anatomy> < 60.0) 
cont.sysmessage Zehiri tedavi edecek kadar yetenekli degilsiniz. 
remove 
return 1 
endif 
elseif !(<cont.restest 1 i_bandage>) 
cont.sysmessage Bandajiniz yok. 
remove 
return 1 
endif 
cont.consume 1 i_bandage 
if (<cont.findid.i_bleeding>) // cure self 
if !(rand(3) == 1) 
cont.findid.i_bleeding.remove 
cont.findid.i_bleeding2.remove 
cont.effect 3,0376a,2,10,1 
cont.heal_say_norm * yarasini kapatir * 
else
cont.heal_say_hata * yarasini kapatamaz * 
endif
elseif (<cont.findid.i_rune_poison>) // cure self 
if !(rand(3) == 1) 
cont.findid.i_rune_poison.remove 
cont.effect 3,0376a,2,10,1 
cont.heal_say_norm * zehiri iyilestirir * 
else 
cont.heal_say_hata * zehiri iyilestiremez * 
endif 
endif
///////////burda bitiyor

cont.heal_say_norm * kendini tedavi eder * 
if (<cont.hits> > <cont.str>) 
cont.hits <cont.str> 
endif 
endif 
cont.checkhealing 1 
cont.checkanatomy 1 
if (<cont.dex> < 35) 
timer 14 
else 
timer 8 
endif 
endif 
morey 0 // memory'yi etkisiz hale getir 
cont.events -e_healing // eventi kaldir artik gerek yok 
return 1 
endif 
remove 
return 1 

[events e_healing] 
On=@GetHit 
if (rand(2) == 1) 
heal_say_hata * bandajlari yirtilir * 
findid.i_mem_healing.remove 
endif 

On=@Death 
findid.i_mem_healing.remove 

On=@Logout 
findid.i_mem_healing.remove 

[function checkhealing] 
if (<args> == 1) && (<healing> >= 80.0) && (rand(3) == 1) 
return 0 
endif 

if ((<skilllock[17]> == 0) && (<skilltotal> < 700.0)) 
if (<healing> < 30.0) 
if (rand(4) == 1)    // 4
healing (<healing> + 1) 
endif 
elseif (<healing> < 50.0) 
if (rand(6) == 1)    // 6
healing (<healing> + 1) 
endif 
elseif (<healing> < 75.0) 
if (rand(10) == 1)     // 10
healing (<healing> + 1) 
endif 
elseif (<healing> < 100.0) 
if (rand(14) == 1)    // 14
healing (<healing> + 1) 
endif 
endif 
endif 

[function checkveterinary] 
if ((<skilllock[39]> == 0) && (<skilltotal> < 700.0)) 
if (<veterinary> < 30.0) 
if (rand(3) == 1) 
veterinary (<veterinary> + 1)
endif 
elseif (<veterinary> < 50.0) 
if (rand(7) == 1) 
veterinary (<veterinary> + 1) 
endif 
elseif (<veterinary> < 75.0) 
if (rand(9) == 1) 
veterinary (<veterinary> + 1) 
endif 
elseif (<veterinary> < 100.0) 
if (rand(13) == 1) 
veterinary (<veterinary> + 1) 
endif 
endif 
endif 

[function checkanatomy] 
if (<args> == 1) && (<anatomy> >= 80.0) && (rand(3) == 1) 
return 0 
endif 

if ((<skilllock[1]> == 0) && (<skilltotal> < 700.0)) 
if (<anatomy> < 30.0) 
if (rand(2) == 1) 
anatomy (<anatomy> + 1) 
endif 
elseif (<anatomy> < 50.0) 
if (rand(6) == 1) 
anatomy (<anatomy> + 1) 
endif 
elseif (<anatomy> < 75.0) 
if (rand(8) == 1) 
anatomy (<anatomy> + 1) 
endif 
elseif (<anatomy> < 100.0) 
if (rand(12) == 1) 
anatomy (<anatomy> + 1) 
endif 
endif 
endif 

[function checkanimallore] 
if ((<skilllock[2]> == 0) && (<skilltotal> < 700.0)) 
if (<animallore> < 30.0) 
if (rand(2) == 1) 
animallore (<animallore> + 1) 
endif 
elseif (<animallore> < 50.0) 
if (rand(6) == 1) 
animallore (<animallore> + 1) 
endif 
elseif (<animallore> < 75.0) 
if (rand( == 1) 
animallore (<animallore> + 1) 
endif 
elseif (<animallore> < 100.0) 
if (rand(12) == 1) 
animallore (<animallore> + 1) 
endif 
endif 
endif 

[DIALOG d_rescon] 
0,375 

nomove 
page 0 
resizepic 30 10 5054 145 75 
text 45 15 600 0 
text 60 35 0 1 
text 60 55 0 2 
button 40 35 210 211 1 0 1 
button 40 55 210 211 1 0 0 

[DIALOG d_rescon TEXT] 
Resurrect?
yeah, sure.
no, thanks.

[DIALOG d_rescon BUTTON] 
ONBUTTON=0 

ONBUTTON=1 
SRC.RESURRECT 


[EOF]



Script'lerin hala 55i ise Daha çok sorun verir.Magery ile fix'i degiştir.2'sindende Kaynaklanabilir.Bildigim Kadarıyla.
Arkadasin Dedigi Gibi Magery İle Fix.scp Degistir Ve Healing.scp Fizzle Yok Bide Sunu Denermisin ;

// bled ekli sey :d
[ITEMDEF 0ee9]
DUPEITEM=0e21

[ITEMDEF 0e22]
DUPEITEM=0e20

[ITEMDEF 0e21]
DEFNAME=i_bandage 
RESOURCES=i_cloth 
TYPE=T_BANDAGE 
WEIGHT=0.2 
DUPELIST=0ee9 
CATEGORY=Items by Professions 
SUBSECTION=Healer 
DESCRIPTION=clean bandages 

On=@DClick
if !(<topobj.uid> == <src.uid>)
	src.sysmessage  Bandajlar cantanizda olmali.
	return 1
elif (<src.findid.i_mem_healing.timer> < 0)
	src.findid.i_mem_healing.remove
	return 0
elif (<src.findid.i_mem_healing>)
	src.sysmessage  Buyu atarken bandaj attiginiz ıcin buyu iptal oldu.
	src.findid.i_mem_healing.remove
	return 1

On=@Targon_Char
src.skill fail
if !(<src.restest 1 i_bandage>)
	src.sysmessage  Bandajiniz yok.
	return 1
elif (<src.targ.distance> > 3)
	src.sysmessage  Hedefe ulasamiyorsunuz.
	return 1
elif !(<src.targ.canseelos>)
src.sysmessage @38,,1 Hata : Hedefi goremiyorsunuz.
return 1
elif (<eval <src.p.z>+8> < <src.targ.p.z>) || (<eval <src.p.z>-8> > <src.targ.p.z>)
src.sysmessage @38,,1 Hata : Bu kisinin yukseklik seviyesi sizden daha fazla yada alcak!
return 1
elif (<src.targ.npc> == 10) ||(<src.targ.npc> == 11) || (<src.targ.npc> == 12) || (<src.targ.npc> == 13)
	src.sysmessage  Bunu iyilestiremezsiniz.
	return 1
elif (<src.targ.npc> == 1)
	if (<src.targ.id> == c_m_golem_tinker1) || (<src.targ.id> == c_m_golem_tinker2) || (<src.targ.id> == c_m_golem)
		src.sysmessage  Golem'leri bandajla iyilestiremezsiniz.
	elif !((<src.targ.hits> < <src.targ.str>) || (<src.targ.findid.i_rune_poison>))
		src.sysmessage  <src.targ.name> tedaviye ihtiyac duymuyor.
		return 1
	elif (<src.targ.findid.i_rune_poison>)
		if ((<src.veterinary> < 60.0) || (<src.animallore> < 60.0))
			src.sysmessage  Hayvan uzerindeki zehiri tedavi edecek kadar yetenekli degilsiniz.
			return 1
		endif
	else
		var.nx1 (<src.veterinary> / {20 50})
		var.nx2 (<src.animallore> / 50)
		var.nx3 <eval (<var.nx1> + <var.nx2> + {3 10})>
	endif
	src.sd 1
	src.anim 17
	src.newitem i_mem_healing
	new.morey <eval <var.nx3>>
	new.morex 3
	new.link <src.targ.uid>
	new.equip
	src.face
	return 1
elif (<src.targ.flags>&statf_dead)
	if ((<src.healing> < 80.0) || (<src.anatomy> < 80.0))
		src.sysmessage  Henuz oluleri diriltecek kudrete sahip degilsiniz.
	elif !(<src.restest 5 i_bandage>)
		src.sysmessage  Diriltme islemi icin 5 bandaja ihtiyaciniz var.
	else
		if (<src.targ.kills> > 5)
			src.criminal 1
			src.sayua 048,6,6,0 * <src.targ.name> isimli katili diriltir *
		elif (<src.targ.flags>&statf_criminal)
			src.criminal 1
			src.sayua 048,6,6,0 * <src.targ.name> isimli sucluyu diriltir *
		elif (<src.memoryfindtype.memory_town>) && (<src.targ.memoryfindtype.memory_town>) && (<src.memoryfindtype.memory_town.link> != <src.targ.memoryfindtype.memory_town.link>)
			src.criminal 1
		elif (<src.memoryfindtype.memory_guild.link.align>) && (<src.targ.memoryfindtype.memory_guild.link.align>) && (<src.memoryfindtype.memory_guild.link.align> != <src.targ.memoryfindtype.memory_guild.link.align>)
			src.criminal 1
		endif
		src.sd 2
		src.face
		src.anim 17
		src.consume 5 i_bandage
		src.targ.spelleffect s_resurrection 1000
		src.targ.sayua 048,6,6,0 * <src.name> sayesinde hayata doner *
		//src.checkhealing 2
		//src.checkanatomy 2
	endif
	return 1
elif (<src.targ.memoryfindtype.memory_town>) && !(<src.memoryfindtype.memory_town>)
	src.sysmessage  Faction uyelerini iyilestiremezsiniz.
	return 1
elif (<src.targ.memoryfindtype.memory_guild.link.align> > 0) && !(<src.memoryfindtype.memory_guild.link.align>)
	src.sysmessage  Order/Chaos uyelerini iyilestiremezsiniz.
	return 1
elif !((<src.targ.hits> < <src.targ.str>) || (<src.targ.findid.i_rune_poison>))
	if !(<src.targ.uid> == <src.uid>)
		src.sysmessage  <src.targ.name> tedaviye ihtiyac duymuyor.
	else
		src.sysmessage  Tedaviye ihtiyaciniz yok.
		f_fizzle
	endif
	return 1
elif (<src.targ.findid.i_rune_poison>)
	if ((<src.healing> < 60.0) || (<src.anatomy> < 60.0))
		src.sysmessage  Zehiri tedavi edecek kadar yetenekli degilsiniz.
		return 1
	endif
elif (<src.targ.findid.i_bleeding>) || (<src.targ.findid.i_bleeding2>)         ///Bleeding
	if ((<src.healing> < 70.0) || (<src.anatomy> < 70.0))
		src.sysmessage  Yarayi tedavi edecek kadar yetenekli degilsiniz.
		return 1
	endif
else
	var.nx1 (<src.healing> / {20 50})
	var.nx2 (<src.anatomy> / 50)
	var.nx3 <eval (<var.nx1> + <var.nx2> + {3 10})>
endif

src.sd 1
src.anim 17
src.newitem i_mem_healing
new.morey <eval <var.nx3>>
if !(<src.targ.uid> == <src.uid>) // heal other
	new.morex 1
	new.link <src.targ.uid>
	src.face
endif
new.equip
return 1

[itemdef i_mem_healing]
ID=i_memory
TYPE=t_eq_script
NAME=healing mem

On=@Create
attr attr_decay|attr_newbie

On=@Equip
src.newitem i_bandajvar
new.equip
src.events +e_healing
timer 3

On=@UnEquip
cont.events -e_healing

On=@Timer
if (<morey>)
	if (<morex> == 3) // veterinary
		if !(<link.hits> < <link.str>) && !(<link.findid.i_rune_poison>)
			cont.sysmessage  <link.name> tedaviye ihtiyac duymuyor.
			remove
			return 1
		elif (<link.findid.i_rune_poison>)
			if (<cont.veterinary> < 60.0) || (<cont.animallore> < 60.0)
				cont.sysmessage  Zehiri tedavi edecek kadar yetenekli degilsiniz.
				remove
				return 1
			endif
		elif (<link.findid.i_bleeding>) || (<link.findid.i_bleeding2>)       ///////Hayvanlarda bleeding
			if (<cont.veterinary> < 70.0) || (<cont.animallore> < 70.0)
				cont.sysmessage  Yarayi tedavi edecek kadar yetenekli degilsiniz.
				remove
				return 1
			endif
		elif !(<cont.restest 1 i_bandage>)
			cont.sysmessage  Bandajiniz yok.
			remove
			return 1
		endif
		cont.consume 1 i_bandage
		if (<link.findid.i_rune_poison>) // cure animal
			if !(rand(5) == 1)
				link.findid.i_rune_poison.remove
				link.effect 3,0376a,2,10,1
				link.sayu * iyilestirilir *
			else
				cont.sayua 020,6,6,0 * <link.name> uzerindeki zehiri iyilestiremez *
			endif
		elif (<link.findid.i_bleeding>) || (<link.findid.i_bleeding2>) //hayvanlarda yara iyilestirme poff :D
			if !(rand(5) == 1)
				link.findid.i_bleeding.remove
				link.findid.i_bleeding2.remove
				link.effect 3,0376a,2,10,1
				link.sayu * yarasi iyilestirilir *
			else
				cont.sayua 020,6,6,0 * <link.name> uzerindeki yarayi iyilestiremez *
			endif
		else // heal animal
			link.hits <eval (<link.hits> + <morey>)>
			link.effect 3,0376a,2,10,1
			if (<link.hits> > <link.str>)
				link.hits <link.str>
			endif
			link.sayu * tedavi gorur *
			link.update
		endif
		cont.checkveterinary
		cont.checkanimallore
		if (<cont.dex> < 35)
			timer 6
		else
			timer 4
		endif
	elif (<morex>) // others
		if !(<link.hits> < <link.str>) && !(<link.findid.i_rune_poison>)
			cont.sysmessage  <link.name> tedaviye ihtiyac duymuyor.
			remove
			return 1
		elif (<link.hits> < 1)
			cont.sysmessage  <link.name> tedavi esnasinda hayatini kaybetti.
			remove
			return 1
		elif (<link.findid.i_rune_poison>)
			if (<cont.healing> < 60.0) || (<cont.anatomy> < 60.0)
				cont.sysmessage  Zehiri tedavi edecek kadar yetenekli degilsiniz.
				remove
				return 1
			endif
		elif !(<cont.restest 1 i_bandage>)
			cont.sysmessage  Bandajiniz yok.
			remove
			return 1
		endif
		cont.consume 1 i_bandage
		if (<link.findid.i_rune_poison>) // cure other
			if !(rand(5) == 1)
				link.findid.i_rune_poison.remove
				link.effect 3,0376a,2,10,1
				if (<link.kills> > 5)
					cont.criminal 1
					cont.sayua 048,6,6,0 * <link.name> isimli katili iyilestirir *
				elif (<link.flags>&statf_criminal)
					cont.criminal 1
					cont.sayua 048,6,6,0 * <link.name> isimli sucluyu iyilestirir *
				else
					link.sayua 048,6,6,0 * <cont.name> tarafindan iyilestirilir *
					if (<link.memoryfindtype.memory_town>) && (<cont.memoryfindtype.memory_town>) && (<cont.memoryfindtype.memory_town.link> != <link.memoryfindtype.memory_town.link>)
						cont.criminal 1
					elif (<link.memoryfindtype.memory_guild.link.align>) && (<cont.memoryfindtype.memory_guild.link.align>) && (<cont.memoryfindtype.memory_guild.link.align> != <link.memoryfindtype.memory_guild.link.align>)
						cont.criminal 1
					endif
				endif
			else
				cont.sayua 020,6,6,0 * <link.name> uzerindeki zehiri iyilestiremez *
			endif
		elif (<link.findid.i_bleeding>) || (<link.findid.i_bleeding2>)//Bleeding 
			if !(rand(5) == 1)
				link.findid.i_bleeding.remove
				link.findid.i_bleeding2.remove
				link.effect 3,0376a,2,10,1
				if (<link.kills> > 5)
					cont.criminal 1
					cont.sayua 048,6,6,0 * <link.name> yarasini iyilestirir.*
				elif (<link.flags>&statf_criminal)
					cont.criminal 1
					cont.sayua 048,6,6,0 * <link.name> isimli suclunun yarasini iyilestirir. *
				else
					link.sayua 048,6,6,0 * <cont.name> tarafindan yarasi iyilestirilir. *
					if (<link.memoryfindtype.memory_town>) && (<cont.memoryfindtype.memory_town>) && (<cont.memoryfindtype.memory_town.link> != <link.memoryfindtype.memory_town.link>)
						cont.criminal 1
					elif (<link.memoryfindtype.memory_guild.link.align>) && (<cont.memoryfindtype.memory_guild.link.align>) && (<cont.memoryfindtype.memory_guild.link.align> != <link.memoryfindtype.memory_guild.link.align>)
						cont.criminal 1
					endif
				endif
			else
				cont.sayua 020,6,6,0 * <link.name> uzerindeki yarayi tedavi edemez *
			endif        ////////////////////////////////////////////////////////////
		else // heal other
			link.hits (<link.hits> + <morey>)
			link.effect 3,0376a,2,10,1
			if (<link.hits> > <link.str>)
				link.hits <link.str>
			endif
			if (<link.kills> > 5)
				cont.criminal 1
				cont.sayua 048,6,6,0 * <link.name> isimli katili tedavi eder *
			elif (<link.flags>&statf_criminal)
				cont.criminal 1
				cont.sayua 048,6,6,0 * <link.name> isimli sucluyu tedavi eder *
			else
				link.sayua 048,6,6,0 * <cont.name> tarafindan tedavi edilir *
				if (<link.memoryfindtype.memory_town>) && (<cont.memoryfindtype.memory_town>) && (<cont.memoryfindtype.memory_town.link> != <link.memoryfindtype.memory_town.link>)
					cont.criminal 1
				elif (<link.memoryfindtype.memory_guild.link.align>) && (<cont.memoryfindtype.memory_guild.link.align>) && (<cont.memoryfindtype.memory_guild.link.align> != <link.memoryfindtype.memory_guild.link.align>)
					cont.criminal 1
				endif
			endif
		endif
		cont.checkhealing 1
		cont.checkanatomy 1
		if (<cont.dex> < 35)
			timer 6
		else
			timer 4
		endif
	else
		if !(<cont.hits> < <cont.str>) && !(<cont.findid.i_rune_poison>)
			cont.sysmessage  Tedaviye ihtiyac duymuyorsunuz.
			remove
			return 1
		elif (<cont.hits> < 1)
			remove
			return 1
		elif (<cont.findid.i_rune_poison>)
			if (<cont.healing> < 60.0) || (<cont.anatomy> < 60.0)
				cont.sysmessage  Zehiri tedavi edecek kadar yetenekli degilsiniz.
				remove
				return 1
			endif 
   		elif !(<cont.restest 1 i_bandage>)
			cont.sysmessage  Bandajiniz yok.
			remove
			return 1
		endif
		cont.consume 1 i_bandage
		if (<cont.findid.i_rune_poison>) // cure self
			if !(rand(5) == 1)
				cont.findid.i_rune_poison.remove
				cont.effect 3,0376a,2,10,1
				cont.sayua 048,6,6,0 * zehir etkisini iyilestirir *
			else
				cont.sayua 020,6,6,0 * zehiri iyilestiremez *
			endif
		elif (<cont.findid.i_bleeding>) || (<cont.findid.i_bleeding2>)/////////Bleeding bana bleed
			if !(rand(5) == 1)
				cont.findid.i_bleeding.remove
				cont.findid.i_bleeding2.remove
				cont.effect 3,0376a,2,10,1
				cont.sayua 048,6,6,0 *yarayi tedavi eder*
			else
				cont.sayua 020,6,6,0  *yarayi tedavi edemez*
			endif
		else // heal self
			cont.hits (<cont.hits> + <morey>)
			cont.effect 3,0376a,2,10,1
			cont.sayua 048,6,6,0 * kendini tedavi eder *
			if (<cont.hits> > <cont.str>)
				cont.hits <cont.str>
			endif
		endif
		cont.checkhealing 1
		cont.checkanatomy 1
		if (<cont.dex> < 35)
			timer 14
		else
			timer 8
		endif
	endif
	morey 0 // memory'yi etkisiz hale getir
	cont.events -e_healing // eventi kaldir artik gerek yok
	return 1
endif
remove
return 1

[itemdef i_bandajvar]
ID=i_memory
TYPE=t_eq_script
NAME=bandajvar

On=@Create
attr attr_decay|attr_newbie

On=@Equip
timer 2

On=@Timer
remove
return 1

	
[events e_healing]
On=@GetHit
if (rand(2) == 1)
	sayua 020,6,6,0 * bandajlari yirtilir *
	findid.i_mem_healing.remove
	src.frozenbandaj
endif

On=@Death
findid.i_mem_healing.remove

On=@Logout
findid.i_mem_healing.remove

[function checkhealing]
if (<args> == 1) && (<healing> >= 80.0) && (rand(2) == 1)
	return 0
endif

if ((<skilllock[17]> == 0) && (<skilltotal> < 800.0))
if (<tag0.override.skillcap_17> < 100.1)
if (<healing> < 100.0)
healing (<healing> +1)
else
if (<healing> < <tag0.override.skillcap_17>)
healing (<healing> +1)
endif
endif
endif

[comment asd]
if (<healing> < 30.0)
		if (rand(2) == 1)
			healing (<healing> + 1)
		endif
	elif (<healing> < 50.0)
		if (rand(2) == 1)
			healing (<healing> + 1)
		endif
	elif (<healing> < 75.0)
		if (rand(3) == 1)
			healing (<healing> + 1)
		endif
	elif (<healing> < 100.0)
		if (rand(4) == 1)
			healing (<healing> + 1)
		endif
	endif
endif

[function checkveterinary]
if ((<skilllock[39]> == 0) && (<skilltotal> < 800.0))
if (<tag0.override.skillcap_39> < 100.1)
if (<veterinary> < 100.0)
veterinary (<veterinary> +1)
else
if (<veterinary> < <tag0.override.skillcap_39>)
veterinary (<veterinary> +1)
endif
endif
endif
[comment vet]
	if (<veterinary> < 30.0)
		if (rand(1) == 1)
			veterinary (<veterinary> + 1)
		endif
	elif (<veterinary> < 50.0)
		if (rand(2) == 1)
			veterinary (<veterinary> + 1)
		endif
	elif (<veterinary> < 75.0)
		if (rand(3) == 1)
			veterinary (<veterinary> + 1)
		endif
	elif (<veterinary> < 100.0)
		if (rand(3) == 1)
			veterinary (<veterinary> + 1)
		endif
	endif
endif

[function checkanatomy]
if (<args> == 1) && (<anatomy> >= 80.0) && (rand(3) == 1)
	return 0
endif

if ((<skilllock[1]> == 0) && (<skilltotal> < 800.0))
if (<tag0.override.skillcap_1> < 100.1)
if (<anatomy> < 100.0)
anatomy (<anatomy> +1)
else
if (<anatomy> < <tag0.override.skillcap_1>)
anatomy (<anatomy> +1)
endif
endif
endif
[comment fda]
	if (<anatomy> < 30.0)
		if (rand(1) == 1)
			anatomy (<anatomy> + 1)
		endif
	elif (<anatomy> < 50.0)
		if (rand(2) == 1)
			anatomy (<anatomy> + 1)
		endif
	elif (<anatomy> < 75.0)
		if (rand(3) == 1)
			anatomy (<anatomy> + 1)
		endif
	elif (<anatomy> < 100.0)
		if (rand(4) == 1)
			anatomy (<anatomy> + 1)
		endif
	endif
endif

[function checkanimallore]
if ((<skilllock[2]> == 0) && (<skilltotal> < 800.0))
if (<tag0.override.skillcap_2> < 100.1)
if (<animallore> < 100.0)
animallore (<animallore> +1)
else
if (<animallore> < <tag0.override.skillcap_2>)
animallore (<animallore> +1)
endif
endif
endif

[comment lfgf]
	if (<animallore> < 30.0)
		if (rand(1) == 1)
			animallore (<animallore> + 1)
		endif
	elif (<animallore> < 50.0)
		if (rand(2) == 1)
			animallore (<animallore> + 1)
		endif
	elif (<animallore> < 75.0)
		if (rand(3) == 1)
			animallore (<animallore> + 1)
		endif
	elif (<animallore> < 100.0)
		if (rand(4) == 1)
			animallore (<animallore> + 1)
		endif
	endif
endif

[EOF]
Tşkürler arkadaşlar sorun düzeldi.Hata verecek başka şeyler varsa yazarsanız sevinirim...

Üye Ol veya Giriş Yap

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