#include "spawner"
#include "prc_x2_itemprop"
void Grestore(object oItem)
{
int oDamage;
itemproperty ipAdd;
ipAdd = ItemPropertyCastSpell
(IP_CONST_CASTSPELL_GREATER_RESTORATION_13,
 IP_CONST_CASTSPELL_NUMUSES_3_USES_PER_DAY);
IPSafeAddItemProperty(oItem, ipAdd);
}


void main()
{
object oTarget;
object oItem;

int oDamage;
SetLocked(OBJECT_SELF, TRUE);
oItem = GetFirstItemInInventory(OBJECT_SELF);
 while(GetIsObjectValid(oItem))
 {
 if (GetTag(oItem)=="pearl")
 {DestroyObject(oItem);}
 oItem = GetNextItemInInventory(OBJECT_SELF);
 }
CastPC(0.0,SPELL_SHAPECHANGE, OBJECT_SELF);
PCEffect(1.0,VFX_IMP_RESTORATION_LESSER, OBJECT_SELF);
PCEffect(1.7,VFX_IMP_RESTORATION, OBJECT_SELF);
PCEffect(2.4,VFX_IMP_RESTORATION_GREATER, OBJECT_SELF);
DelayCommand(1.0, Grestore(GetFirstItemInInventory(OBJECT_SELF)));
DelayCommand(3.0, SetLocked(OBJECT_SELF, FALSE));
}