void main() { object oDoor = GetNearestObjectByTag ("dt_KerakMainGate"); if (GetLocalInt (OBJECT_SELF, "m_bActivated") == TRUE) { SetLocalInt (OBJECT_SELF, "m_bActivated", FALSE); PlayAnimation (ANIMATION_PLACEABLE_DEACTIVATE); AssignCommand (oDoor, ActionCloseDoor (oDoor)); SetLocked (oDoor,TRUE); } else { SetLocalInt (OBJECT_SELF, "m_bActivated", TRUE); PlayAnimation (ANIMATION_PLACEABLE_ACTIVATE); AssignCommand (oDoor, ActionOpenDoor (oDoor)); SetLocked (oDoor,FALSE); } object oTarget; oTarget = GetObjectByTag("murderhole"); //Visual effects can't be applied to waypoints, so if it is a WP //apply to the WP's location instead int nInt; nInt = GetObjectType(oTarget); if (nInt != OBJECT_TYPE_WAYPOINT) ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_FLAME_M), oTarget); else ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_FLAME_M), GetLocation(oTarget)); oTarget = GetObjectByTag("murderhole"); DestroyObject(oTarget, 3.0); }