//Put this script OnClick or OnFailToOpen void main() { object oPC = GetClickingObject(); if (!GetIsPC(oPC)) return; if (GetItemPossessedBy(oPC, "gaurdianskey")!= OBJECT_INVALID) return; effect eEffect; eEffect = EffectDamage(3000, DAMAGE_TYPE_DIVINE, DAMAGE_POWER_ENERGY); ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oPC); object oTarget; oTarget = oPC; //Visual effects can't be applied to waypoints, so if it is a WP //the VFX will be applied to the WP's location instead int nInt; nInt = GetObjectType(oTarget); if (nInt != OBJECT_TYPE_WAYPOINT) ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_DESTRUCTION), oTarget); else ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_DESTRUCTION), GetLocation(oTarget)); }