// Philosopher's stone usage script - transform metallic bars/rings/necklaces to gold // Jeremy Greene #include "rtsh_multiplay" string fnTransformToResref(object oTarget) { string sObjResRef=GetResRef(oTarget); if(sObjResRef=="bar_admant") return "nw_it_gold001"; if(sObjResRef=="bar_iron") return "nw_it_gold001"; if(sObjResRef=="bar_mith") return "nw_it_gold001"; if(sObjResRef=="x2_it_cmat_adam") return "nw_it_gold001"; if(sObjResRef=="x2_it_cmat_iron") return "nw_it_gold001"; if(sObjResRef=="x2_it_cmat_mith") return "nw_it_gold001"; if(sObjResRef=="x2_it_cmat_steel") return "nw_it_gold001"; if(sObjResRef=="nw_it_mneck020") return "nw_it_mneck022"; if(sObjResRef=="nw_it_mneck021") return "nw_it_mneck022"; if(sObjResRef=="nw_it_mring021") return "nw_it_mring023"; if(sObjResRef=="nw_it_mring022") return "nw_it_mring023"; return ""; } void main() { object oUser=GetItemActivator(); object oTarget=GetItemActivatedTarget(); object oNew; string sTransform=fnTransformToResref(oTarget); int nMana=fnGetTeamMana(oUser); if (nMana>9) { // sufficient mana if(GetItemPossessor(oTarget)==oUser&&sTransform!="") // Item in user's possession { if(sTransform=="nw_it_gold001") GiveGoldToCreature(oUser,200); else oNew=CreateItemOnObject(sTransform,oUser); DestroyObject(oTarget); nMana=nMana-10; fnSetTeamMana(oUser,nMana); } else if(sTransform!="") // item on ground { oNew=CreateObject(OBJECT_TYPE_ITEM,sTransform,GetLocation(oTarget)); if(sTransform=="nw_it_gold001") SetItemStackSize(oNew,200); DestroyObject(oTarget); nMana=nMana-10; fnSetTeamMana(oUser,nMana); } } // sufficient mana else { SendMessageToPC(oUser,"You need 10 mana to use that item.");} }