Exemplo n.º 1
0
        protected override void OnAfterDelete()
        {
            base.OnAfterDelete();

            Altar  = null;
            Vendor = null;

            BossEarth  = null;
            BossFire   = null;
            BossFrost  = null;
            BossPoison = null;
            BossEnergy = null;

            Bosses.SetAll(i => null);
            Bosses = null;

            TeleportersTo.SetAll(i => null);
            TeleportersTo = null;

            TeleportersFrom.SetAll(i => null);
            TeleportersFrom = null;

            Circles = null;

            Floors.Free(true);
            Floors.SetAll(i => null);
            Floors = null;

            Stage.Free(true);
            Stage = null;
        }
Exemplo n.º 2
0
        protected override void OnDelete()
        {
            base.OnDelete();

            if (Altar != null)
            {
                Altar.Delete();
            }

            if (Vendor != null)
            {
                Vendor.Delete();
            }

            foreach (var b in Bosses.Where(b => b != null))
            {
                b.Delete();
            }

            foreach (var t in TeleportersTo.Union(TeleportersFrom).Where(t => t != null))
            {
                t.Delete();
            }

            foreach (var s in Floors.Where(l => l != null).SelectMany(l => l.Where(s => s != null)))
            {
                s.Delete();
            }

            foreach (var s in Stage.Where(s => s != null))
            {
                s.Delete();
            }
        }