private static void RemoveForceFieldForPrivateArea(PrivateArea pa) { Plugin.Log("RemoveForceFieldForPrivateArea called"); List <SphereCollider> forceFields = GetForceFieldsInRange(pa.transform.position, 2); foreach (SphereCollider forceField in forceFields) { EffectArea noMonstersArea = forceField.GetComponent <EffectArea>(); if (null != noMonstersArea) { // destroy the colliders SphereCollider[] colliders = noMonstersArea.GetComponents <SphereCollider>(); for (int i = 0; i < colliders.Length; i++) { Plugin.Log("RemoveForceFieldForPrivateArea - Destroying SphereCollider"); GameObject.Destroy(colliders[i]); } // destroy the object Plugin.Log("RemoveForceFieldForPrivateArea - Destroying EffectArea"); GameObject.Destroy(noMonstersArea); } Plugin.Log("RemoveForceFieldForPrivateArea - Destroying forceField"); GameObject.Destroy(forceField); } }