public override void OnExit() { PhysicsManager.RemoveAll(); UpdateManager.RemoveAll(); DrawManager.RemoveAll(); ObstacleManager.RemoveAll(); BombsManager.RemoveAll(); GuiManager.RemoveAll(); AudioManager.RemoveAll(); }
private void CreateFlames(FlameType type, Vector2 startPos, Vector2 offsetPos) { string flameName = ""; string closeFlameName = ""; switch (type) { case FlameType.UP: flameName = "upFlame"; closeFlameName = "closeUpFlame"; break; case FlameType.DOWN: flameName = "downFlame"; closeFlameName = "closeDownFlame"; break; case FlameType.RIGHT: flameName = "leftRightFlame"; closeFlameName = "closeRightFlame"; break; case FlameType.LEFT: flameName = "leftRightFlame"; closeFlameName = "closeLeftFlame"; break; } Vector2 flamePos = startPos + offsetPos; for (int i = 0; i < NUMBER_FLAMES; i++) { if (!ObstacleManager.IsThereObstacle(flamePos)) { if (i == NUMBER_FLAMES - 1 || ObstacleManager.IsThereObstacle(flamePos + offsetPos)) { new Flame(flamePos, closeFlameName, owner); break; } else { new Flame(flamePos, flameName, owner); flamePos += offsetPos; } } else { break; } } }
public IndestructableObstacle(Vector2 spritePosition, string spriteSheetName = "ironWall") : base(spritePosition, spriteSheetName) { ObstacleManager.AddIndestructableObstaclePos(Position); }