public TitleScreenState() { SoundFactory.Instance.StopCreditsSong(); SoundFactory.Instance.StopDungeonSong(); SoundFactory.Instance.StopBossSong(); SoundFactory.Instance.PlayTitleSong(); sprite = ScreenSpriteFactory.Instance.TitleScreen(); enter = ScreenSpriteFactory.Instance.PressEnter(); sprite.FrameDelay = GameData.Instance.GameStateDataConstants.TitleScreenFrameDelay; LoZGame.Instance.GameObjects.Clear(); LoZGame.Instance.Players.Clear(); LoZGame.Instance.Link = new Link(new Vector2( (float)(BlockSpriteFactory.Instance.HorizontalOffset + GameData.Instance.GameStateDataConstants.HorizontalHalfDungeon), (float)(BlockSpriteFactory.Instance.TopOffset + GameData.Instance.GameStateDataConstants.VerticalHalfDungeon))); LoZGame.Instance.Players.Add(LoZGame.Instance.Link); KeyboardCommandLoader keyboardLoader = new KeyboardCommandLoader(LoZGame.Instance.Players[0]); MouseCommandLoader mouseLoader = new MouseCommandLoader(); if (LoZGame.Instance.Controllers.Count == 0) { LoZGame.Instance.Controllers.Add(new KeyboardController(keyboardLoader)); LoZGame.Instance.Controllers.Add(new MouseController(mouseLoader)); } else { for (int i = 0; i < LoZGame.Instance.Controllers.Count; i++) { if (LoZGame.Instance.Controllers[i] is KeyboardController) { LoZGame.Instance.Controllers[i] = new KeyboardController(keyboardLoader); } else if (LoZGame.Instance.Controllers[i] is MouseController) { LoZGame.Instance.Controllers[i] = new MouseController(mouseLoader); } } } }
/// <summary> /// Initializes a new instance of the <see cref="MouseController"/> class. /// </summary> /// <param name="allCommands">The command loader for mouse commands.</param> public MouseController(MouseCommandLoader allCommands) { this.allCommands = allCommands; oldState = Mouse.GetState(); }