public override void Init() { _menuFont = ContentManager.Load <SpriteFont>("default"); InputMapProvider.GetContextById(Contexts.Menu)?.Activate(); _menu = new Menu(IntentProvider, SpriteBatch, _menuFont); var viewport = ScreenManager.Game.GraphicsDevice.Viewport; _menu.Position = new Vector2(viewport.Width / 2, viewport.Height / 2); var start = new MenuItem { Text = "Start" }; start.OnSelected += (sender, args) => { InputMapProvider.GetContextById(Contexts.Menu).Deactivate(); ScreenManager.Push <GameplayScreen>(); }; var quit = new MenuItem { Text = "Quit" }; quit.OnSelected += (sender, args) => { ScreenManager.Game.Exit(); }; _menu.AddMenuItem(start); _menu.AddMenuItem(quit); base.Init(); }
public override void Init() { base.Init(); _defaultFont = ContentManager.Load <SpriteFont>("default"); _blank = ContentManager.Load <Texture2D>("blank"); _viewport = ScreenManager.Game.GraphicsDevice.Viewport; _position = new Vector2((_viewport.Width - _defaultFont.MeasureString(Text).X) / 2, _viewport.Height / 2); InputMapProvider.GetContextById(Contexts.Menu).Activate(); }
public override void OnEnter() { _systemsManager.ResetSystems(); foreach (var entity in _entityRepository.GetAll().ToList()) { Entity.Destroy(entity); } InputMapProvider.GetContextById(Contexts.Gameplay).Activate(); SetupStage(); }
public override void Update(GameTime gameTime, bool isActive) { if (IntentProvider.GetIntents().Any(x => x is ConfirmIntent)) { InputMapProvider.GetContextById(Contexts.Menu).Deactivate(); Session.TryGet(SessionKeys.CurrentStageId, out int stageId); Session.Set(SessionKeys.CurrentStageId, stageId + 1); var gameplay = ScreenManager.Peek <GameplayScreen>(); ScreenManager.Push <GameplayScreen>(); } }
public override void Update(GameTime gameTime, bool isActive) { var intents = IntentProvider.GetIntents().ToArray(); if (!intents.Any()) { return; } if (intents[0] is ConfirmIntent) { InputMapProvider.GetContextById(Contexts.Menu).Deactivate(); var gameplay = ScreenManager.Peek <GameplayScreen>(); ScreenManager.Push <GameplayScreen>(); } }
private void BootstrapScreens() { _screenManager = new ScreenManager(this); var inputMapProvider = new InputMapProvider(); var screenDependencies = new ScreenDependencies { ContentManager = Content, ScreenManager = _screenManager, SpriteBatch = _spriteBatch, Session = new Session(), InputMapProvider = inputMapProvider, IntentProvider = new IntentProvider(new InputProvider(), inputMapProvider) }; _screenManager.Register(new MainMenuScreen(screenDependencies)); _screenManager.Register(new GameplayScreen(screenDependencies)); _screenManager.Register(new StageClearScreen(screenDependencies)); _screenManager.Register(new GameOverScreen(screenDependencies)); _screenManager.Push <MainMenuScreen>(); }
public void Handle(PlayerDied message) { InputMapProvider.GetContextById(Contexts.Gameplay).Deactivate(); ScreenManager.Push <GameOverScreen>(); }
public void Handle(StageCleared message) { InputMapProvider.GetContextById(Contexts.Gameplay).Deactivate(); ScreenManager.Push <StageClearScreen>(); }
public override void OnEnter() { InputMapProvider.GetContextById(Contexts.Menu).Activate(); }