예제 #1
0
        public override void OnExit()
        {
            PhysicsManager.RemoveAll();
            UpdateManager.RemoveAll();
            DrawManager.RemoveAll();

            ObstacleManager.RemoveAll();
            BombsManager.RemoveAll();
            GuiManager.RemoveAll();

            AudioManager.RemoveAll();
        }
예제 #2
0
        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;
                }
            }
        }
예제 #3
0
 public IndestructableObstacle(Vector2 spritePosition, string spriteSheetName = "ironWall") : base(spritePosition, spriteSheetName)
 {
     ObstacleManager.AddIndestructableObstaclePos(Position);
 }