/// <summary> /// Dessiner sur scène /// </summary> /// <param name="menu"></param> public virtual void Draw(GameTime gameTime, VO_SelectableMenu menu) { if (menu != null) { menu.Draw(gameTime); } }
/// <summary> /// Load Screen /// </summary> public override void LoadScreen() { base.LoadScreen(); _LoadMenuEnabled = false; //Musique _Music = PathTools.GetProjectPath(Enums.ProjectPath.Musics) + _ProjectData.MainMenuMusic.Filename; //Configuration de l'image manager ImageManager.SetCurrentStage(Guid.Empty); //Création des sprites if (_MenuData.MainMenuAnimation != Guid.Empty) { _Background = new VO_AnimatedSprite(_MenuData.MainMenuAnimation, Enums.AnimationType.Menu, 0, 0); } //Préparation du menu List <string> listChoices = new List <string>(); listChoices.Add(_TerminologyData.NewGame); if (_MenuData.ActivateLoadingMenu) { listChoices.Add(_TerminologyData.LoadGame); } //listChoices.Add(_TerminologyData.Options); listChoices.Add(_TerminologyData.LeaveGame); //Création du menu if (_Menu != null) { _Menu.Dispose(); } _Menu = new VO_SelectableMenu(_SpriteBatch, this.Game, listChoices, 25); _Menu.FontSize = 20; _Menu.OnClick += new VO_SelectableMenu.OnClickEventHandler(OnClick); _Menu.SelectedValueChanged += new VO_SelectableMenu.SelectedValueChangedEventHandler(Menu_SelectedValueChanged); _Menu.Position = new Vector2(_ProjectData.Resolution.Width / 2 - _Menu.Width / 2, _ProjectData.Resolution.Height / 2 - _Menu.Height / 2); //Save/Load menu if (GameCore.Instance.Game.Menu.ActivateLoadingMenu) { List <string> saveMenu = new List <string>(); for (int i = 1; i <= 9; i++) { saveMenu.Add(GameCore.Instance.Game.Terminology.SaveState + i); } _GameStatesMenu = new VO_SelectableMenu(_SpriteBatch, this.Game, saveMenu, 10); _GameStatesMenu.FontSize = 16; _GameStatesMenu.Position = new Vector2(GameCore.Instance.Game.Project.Resolution.Width / 2 - _GameStatesMenu.Width / 2, GameCore.Instance.Game.Project.Resolution.Height / 2 - _GameStatesMenu.Height / 2); _GameStatesMenu.OnClick += new VO_SelectableMenu.OnClickEventHandler(_GameStatesMenu_OnClick); _GameStatesMenu.SelectedValueChanged += new VO_SelectableMenu.SelectedValueChangedEventHandler(Menu_SelectedValueChanged); } this.DrawOrder = 0; //Donner la main ScriptManager.ScriptUserControls = true; }
public Interface(SpriteBatch spriteBatch, Game game) { _SpriteBatch = spriteBatch; //Inventaire Inventory = new Inventory(spriteBatch, game); LifeBarVisible = true; //Background //Charger console background RenderTarget2D texture = new RenderTarget2D(game.GraphicsDevice, game.GraphicsDevice.PresentationParameters.BackBufferWidth, game.GraphicsDevice.PresentationParameters.BackBufferHeight); game.GraphicsDevice.SetRenderTarget(texture); game.GraphicsDevice.Clear(Color.Black); game.GraphicsDevice.SetRenderTarget(null); _EscapeMenuBackground = (Texture2D)texture; //Escape Menu List <string> menu = new List <string>(); if (GameCore.Instance.Game.Menu.ActivateSaveMenu) { menu.Add(GameCore.Instance.Game.Terminology.SaveGame); SaveActive = true; } if (GameCore.Instance.Game.Menu.ActivateLoadingMenu) { menu.Add(GameCore.Instance.Game.Terminology.LoadGame); LoadActive = true; } if (GameCore.Instance.Game.Menu.ActivateMainMenu) { menu.Add(GameCore.Instance.Game.Terminology.ReturnTitle); } //menu.Add(GameCore.Instance.Game.Terminology.Options); menu.Add(GameCore.Instance.Game.Terminology.LeaveGame); _EscapeMenu = new VO_SelectableMenu(spriteBatch, game, menu, 10); _EscapeMenu.FontSize = 20; _EscapeMenu.Position = new Vector2(GameCore.Instance.Game.Project.Resolution.Width / 2 - _EscapeMenu.Width / 2, GameCore.Instance.Game.Project.Resolution.Height / 2 - _EscapeMenu.Height / 2); _EscapeMenu.OnClick += new VO_SelectableMenu.OnClickEventHandler(_EscapeMenu_OnClick); _EscapeMenu.SelectedValueChanged += new VO_SelectableMenu.SelectedValueChangedEventHandler(Menu_SelectedValueChanged); //Save/Load menu if (GameCore.Instance.Game.Menu.ActivateSaveMenu || GameCore.Instance.Game.Menu.ActivateLoadingMenu) { List <string> saveMenu = new List <string>(); for (int i = 1; i <= 9; i++) { saveMenu.Add(GameCore.Instance.Game.Terminology.SaveState + i); } _GameStatesMenu = new VO_SelectableMenu(spriteBatch, game, saveMenu, 10); _GameStatesMenu.FontSize = 16; _GameStatesMenu.Position = new Vector2(GameCore.Instance.Game.Project.Resolution.Width / 2 - _GameStatesMenu.Width / 2, GameCore.Instance.Game.Project.Resolution.Height / 2 - _GameStatesMenu.Height / 2); _GameStatesMenu.OnClick += new VO_SelectableMenu.OnClickEventHandler(_GameStatesMenu_OnClick); _GameStatesMenu.SelectedValueChanged += new VO_SelectableMenu.SelectedValueChangedEventHandler(Menu_SelectedValueChanged); } //LifeBar if (!string.IsNullOrEmpty(GameCore.Instance.Game.Project.LifeBarBackground) && File.Exists(PathTools.GetProjectPath(Enums.ProjectPath.LifeBar) + GameCore.Instance.Game.Project.LifeBarBackground)) { _LifeBarBackground = new VO_Sprite(ImageManager.GetPermanentImage(PathTools.GetProjectPath(Enums.ProjectPath.LifeBar) + GameCore.Instance.Game.Project.LifeBarBackground)); _LifeBarBackground.Position = new Vector2(GameCore.Instance.Game.Project.LifeBarCoords.X, GameCore.Instance.Game.Project.LifeBarCoords.Y); } if (!string.IsNullOrEmpty(GameCore.Instance.Game.Project.LifeBarResource) && File.Exists(PathTools.GetProjectPath(Enums.ProjectPath.LifeBar) + GameCore.Instance.Game.Project.LifeBarResource)) { _LifeBar = new VO_Sprite(ImageManager.GetPermanentImage(PathTools.GetProjectPath(Enums.ProjectPath.LifeBar) + GameCore.Instance.Game.Project.LifeBarResource)); _LifeBar.Position = new Vector2(GameCore.Instance.Game.Project.LifeBarCoords.X, GameCore.Instance.Game.Project.LifeBarCoords.Y); _LifeBarFull = (int)_LifeBar.Width; } }