void main()
{
    object tv_1 = GetObjectByTag("WP_GILES");
    location lDest1 = GetLocation(tv_1);
    object oChest = GetObjectByTag("CRYPT_COF_GILES");
    object oItem = GetItemPossessedBy(oChest,"sirgiles");
    SetLocalInt(OBJECT_SELF, "duration", DURATION_TYPE_TEMPORARY);
    int duration = GetLocalInt(OBJECT_SELF, "duration");
    SetLocalInt(OBJECT_SELF, "vfx", VFX_BEAM_HOLY);
    int vfx = GetLocalInt(OBJECT_SELF, "vfx");
    effect eVis = EffectVisualEffect(vfx);
    if(GetIsObjectValid(oItem) && !(GetLocalInt(OBJECT_SELF, "fired") == 1))
    {
        DestroyObject(oItem);
        SetLocalInt(OBJECT_SELF, "fired", 1);
        ApplyEffectToObject(duration, eVis, tv_1, 2.0);
        CreateObject(OBJECT_TYPE_CREATURE,"giles",lDest1,FALSE);
}
}

