public MapEditorConfigMenuScreen()
            : base("Map Editor Config")
        {
            verticalNodeCount = 3;
            horizontalNodeCount = 3;

            // Configure Increase/Decrease count actions
            increaseCountAction = new InputAction(new Keys[] { Keys.Right }, true);
            decreaseCountAction = new InputAction(new Keys[] { Keys.Left }, true);

            // Add Menu Items
            MenuItem verticalNodesMenuItem = new MenuItem("Vertical Nodes: 3");
            MenuItem horizontalNodesMenuItem = new MenuItem("Horizontal Nodes: 3");
            MenuItem confirmMenuItem = new MenuItem("Confirm");
            MenuItem cancelMenuItem = new MenuItem("Cancel");

            // Hook up events
            confirmMenuItem.Selected += confirmMenuItem_Selected;
            cancelMenuItem.Selected += cancelMenuItem_Selected;

            // Add menu Items
            MenuItems.Add(verticalNodesMenuItem);
            MenuItems.Add(horizontalNodesMenuItem);
            MenuItems.Add(confirmMenuItem);
            MenuItems.Add(cancelMenuItem);
        }
        public OptionsMenuScreen()
            : base("Options")
        {
            MenuItem cancelMenuItem = new MenuItem("Cancel");

            // Hook up menu items to selection event
            // TODO: Create menu items for the options menu
            cancelMenuItem.Selected += cancelMenuItem_Selected;

            MenuItems.Add(cancelMenuItem);
        }
        public PreLevelScreen()
            : base("Select A Level")
        {
            MenuItem level1MenuItem = new MenuItem("Level 1");
            MenuItem cancelMenuItem = new MenuItem("Return To Main Menu");

            // Hook up menu items to selection event
            // TODO: Create menu items for towers and levels
            level1MenuItem.Selected += level1MenuItem_Selected;
            cancelMenuItem.Selected += cancelMenuItem_Selected;

            MenuItems.Add(level1MenuItem);
            MenuItems.Add(cancelMenuItem);
        }
        public PauseMenuScreen()
            : base("Pause Menu")
        {
            // Add Menu Items
            MenuItem resumeMenuItem = new MenuItem("Resume Game");
            MenuItem exitMenuItem = new MenuItem("Exit To Main Menu");

            // Hook up events
            resumeMenuItem.Selected += resumeMenuItem_Selected;
            exitMenuItem.Selected += exitMenuItem_Selected;

            // Add menu Items
            MenuItems.Add(resumeMenuItem);
            MenuItems.Add(exitMenuItem);
        }
        public MapEditorMenuScreen()
            : base("Map Options")
        {
            // Add Menu Items
            MenuItem saveMenuItem = new MenuItem("Save Map");
            MenuItem resumeMenuItem = new MenuItem("Resume");
            MenuItem exitMenuItem = new MenuItem("Exit To Main Menu");

            // Hook up events
            saveMenuItem.Selected += saveMenuItem_Selected;
            resumeMenuItem.Selected += resumeMenuItem_Selected;
            exitMenuItem.Selected += exitMenuItem_Selected;

            // Add menu Items
            MenuItems.Add(saveMenuItem);
            MenuItems.Add(resumeMenuItem);
            MenuItems.Add(exitMenuItem);
        }
        public MainMenuScreen()
            : base("Main Menu")
        {
            MenuItem playGameMenuItem = new MenuItem("Play Game");
            MenuItem editorMenuItem = new MenuItem("Map Editor");
            MenuItem optionsMenuItem = new MenuItem("Options");
            MenuItem exitGameMenuItem = new MenuItem("Exit");

            // Hook up menu items to selection event
            playGameMenuItem.Selected += playGameMenuItem_Selected;
            editorMenuItem.Selected += editorMenuItem_Selected;
            optionsMenuItem.Selected += optionsMenuItem_Selected;
            exitGameMenuItem.Selected += exitGameMenuItem_Selected;

            MenuItems.Add(playGameMenuItem);
            MenuItems.Add(editorMenuItem);
            MenuItems.Add(optionsMenuItem);
            MenuItems.Add(exitGameMenuItem);
        }