public override void Destroy()
        {
            DeathParticles();

            if (InstancerCommit())
            {
                InstanceManager.RemoveChild(this);
                ShieldInstancer.Remove(this);
            }
            if (UnitAdded)
            {
                FactionManager.RemoveUnit(this);
                UnitAdded = false;
            }

            base.Destroy();
        }
        public override void Destroy()
        {
            if (SoundInstance != null && !SoundInstance.IsDisposed)
            {
                SoundInstance.Dispose();
                SoundInstance = null;
            }

            if (UnitCommited)
            {
                UnitCommited = false;
                FactionManager.RemoveUnit(this);
            }

            base.Destroy();

            Dead = true;
            PathFindingManager.Rebuild();
        }