public override void Dispose() { if (!IsDisposed) { foreach (var current in DoorList) { current.Dispose(); } DoorList.Clear(); DoorList = null; foreach (var current2 in TerrainObjList) { current2.Dispose(); } TerrainObjList.Clear(); TerrainObjList = null; foreach (var current3 in GameObjList) { current3.Dispose(); } GameObjList.Clear(); GameObjList = null; foreach (var current4 in EnemyList) { current4.Dispose(); } EnemyList.Clear(); EnemyList = null; foreach (var current5 in BorderList) { current5.Dispose(); } BorderList.Clear(); BorderList = null; BGRender = null; LinkedRoom = null; foreach (var current6 in TempEnemyList) { current6.Dispose(); } TempEnemyList.Clear(); TempEnemyList = null; Player = null; m_fairyChestText.Dispose(); m_fairyChestText = null; m_pauseBG.Dispose(); m_pauseBG = null; m_indexText.Dispose(); m_indexText = null; m_roomInfoText.Dispose(); m_roomInfoText = null; base.Dispose(); } }
public override void OnExit() { foreach (var current in TempEnemyList) { current.KillSilently(); current.Dispose(); } TempEnemyList.Clear(); Player.InvincibleToSpikes = false; m_teleportingOut = true; base.OnExit(); }
public override void OnExit() { if (!BossKilled) { foreach (var current in EnemyList) { current.Reset(); } } foreach (var current2 in TempEnemyList) { current2.KillSilently(); current2.Dispose(); } TempEnemyList.Clear(); Player.CanBeKnockedBack = true; base.OnExit(); }
public virtual void Update(GameTime gameTime) { if (Name == "EntranceBoss" && LinkedRoom is ChallengeBossRoomObj) { if (m_doorSparkleDelay <= 0f) { m_doorSparkleDelay = 0.1f; Player.AttachedLevel.ImpactEffectPool.DoorSparkleEffect(new Rectangle((int)X + 590, (int)Y + 140, 190, 150)); } else { m_doorSparkleDelay -= (float)gameTime.ElapsedGameTime.TotalSeconds; } } if (m_roomActivityCounter <= 0f) { foreach (var current in EnemyList) { if (!current.IsKilled) { current.Update(gameTime); } } using (var enumerator2 = TempEnemyList.GetEnumerator()) { while (enumerator2.MoveNext()) { var current2 = enumerator2.Current; if (!current2.IsKilled) { current2.Update(gameTime); } } return; } } m_roomActivityCounter -= (float)gameTime.ElapsedGameTime.TotalSeconds; }