Marilla wrote:
Umm.. all respect, and all, Firedancer, but the original poster's question was:
kylee wrote:
a .heal me script.. that like clicks the bandies and targets you.. automaticly
Hmm maybe I understood him wrong, but does this not mean, that he wants a .command that does the same as some bandages applied to himself would do? Ahh ok, maybe he wants it to consume bandages from the players backpack then....
Maybe that one is better then?
Code:
use uo;
use os;
include "/scripts/include/attributes";
const BANDAGE_OBJTYPE:=0xe20;
const HP_HEALED_BY_BANDAGES:=25;
program healme(who)
//look for bandages -> search backpack
foreach item in (EnumerateItemsInContainer( who.backpack))
//is it a bandage?
if(item.objtype==BANDAGE_OBJTYPE);
//yes? -> consume one
if(item.amount>1)
SubtractAmount(item,1);
else
destroyitem(item);
endif
//now heal the player
if((GetHP(who)+HP_HEALED_BY_BANDAGES)>GetMaxHp( who ))
SetHp( who,GetMaxHp( who ));
else
SetHP(who,GetHP(who)+HP_HEALED_BY_BANDAGES);
endif
//report success
Sendsysmessage(who,"you've been healed");
return; //healed & done -> abort script
endif
endforeach
//---------------------------------------
//still here? then no bandages were found!
Sendsysmessage(who,"you donot have any bandages");
endprogram
plus this /scripts/include/attributes.inc:
Code:
const VITALID_LIFE := "Life";
function GetMaxHp( who )
return GetVitalMaximumValue( who, VITALID_LIFE ) / 100;
endfunction
function GetHp( who )
return GetVital( who, VITALID_LIFE ) / 100;
endfunction
function SetHp( who, hp )
return SetVital( who, VITALID_LIFE, hp * 100 ) && RecalcVitals( who );
endfunction