//--------------------------------------------------------------------------------------------------------------------------------------------------- // <copyright file="MenuSystem.cs" company="DarkWynter Studios"> // Copyright (C)2007 DarkWynter Studios. All rights reserved. // </copyright> //--------------------------------------------------------------------------------------------------------------------------------------------------- // {Contact : darkwynter.com for licensing information //--------------------------------------------------------------------------------------------------------------------------------------------------- namespace ElementalGame.Menus { #region Using Statements using System; using System.Collections.Generic; using System.Diagnostics; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Audio; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; using Microsoft.Xna.Framework.Storage; using System.Threading; using System.Xml; #endregion using DarkWynterEngine.Audio; using DarkWynterEngine.Globals; using DarkWynterEngine.ObjectLib; using DarkWynterEngine.Controllers; using DarkWynterEngine.Utilities; using DarkWynterEngine.Menus; /// <summary> /// Controls all of the menu screen and menu items /// </summary> public class GameMenuSystem : MenuSystem { /// <summary> /// Constructor /// </summary> public GameMenuSystem() :base() { menuScreens.Add(new SorryScreen(Enums.EngineState.NOT_SUPPORTED)); menuScreens.Add(new TitleScreen(Enums.EngineState.TITLE_SCREEN)); menuScreens.Add(new GameSetup(Enums.EngineState.GAME_SETUP)); menuScreens.Add(new LoadingScreen(Enums.EngineState.LOAD_LEVEL)); menuScreens.Add(new PauseScreen(Enums.EngineState.GAME_PAUSE)); menuScreens.Add(new GameOverScreen(Enums.EngineState.GAME_OVER)); } /// <summary> /// Updates the controller and then the current active screen /// </summary> /// <param name="objectLibrary">Current Object Library</param> public override void Update(ObjectLibrary objectLibrary) { base.Update(objectLibrary); } /// <summary> /// Draws the appropriate screen /// </summary> /// <param name="spriteBatch">SpriteBatch used to draw</param> /// <param name="screenSaver">Current ScreenSaver</param> public override void Draw(SpriteBatch spriteBatch, ScreenSaver screenSaver) { base.Draw(spriteBatch, screenSaver); } } }