private void Input_ButtonPressed(object sender, ButtonPressedEventArgs e) { if (e.Button.IsUseToolButton() || e.Button.IsActionButton()) { Vector2 cursor = e.Cursor.ScreenPixels; Interface.Desktop desktop = Game1.onScreenMenus.FirstOrDefault(menu => menu is Interface.Desktop) as Interface.Desktop; if (!desktop.Taskbar.IsExpanded) { Microsoft.Xna.Framework.Rectangle area = desktop.Taskbar.ExpandButton.bounds; area.Width *= 3; area.Height *= 3; if (area.Contains((int)cursor.X, (int)cursor.Y)) { desktop.Taskbar.SetActiveState(active: true); } } } if (Config.DebugMode) { if (e.Button == SButton.I) { Log.D("IS-ENTRY: Replacing Desktop"); Desktop.exitThisMenu(); Game1.activeClickableMenu = null; Game1.onScreenMenus.Remove(Game1.onScreenMenus.FirstOrDefault(menu => menu is Interface.Desktop)); Desktop = new Interface.Desktop(); Game1.onScreenMenus.Add(Desktop); } else if (e.Button == SButton.O) { Log.D("IS-ENTRY: Realigning Taskbar"); Desktop.Taskbar.RealignElements(); } } }
private void GameLoop_GameLaunched(object sender, GameLaunchedEventArgs e) { Desktop = new Interface.Desktop(); Game1.onScreenMenus.Add(Desktop); }
private void Input_ButtonPressed(object sender, ButtonPressedEventArgs e) { if (ModEntry.Config.DebugMode) { switch (e.Button) { case SButton.J: { Log.D("INTERFACE: Set enabled: " + !_isEnabled); _isEnabled = !_isEnabled; break; } case SButton.K: { Log.D("INTERFACE: Set new interface"); this.exitThisMenu(); Desktop newInterface = new Desktop(); ModEntry.Instance.Desktop = newInterface; break; } case SButton.L: { if (!_isEnabled) { break; } Log.D("INTERFACE: Clear children"); this.Reset(); break; } case SButton.OemSemicolon: { if (!_isEnabled) { break; } Log.D("INTERFACE: Add new CharacterListMenu"); CharacterListMenu childMenu = new CharacterListMenu(new Point(75, 25)); Children.Add(childMenu); break; } } } if (!Game1.game1.IsActive || !_isEnabled) { return; } e.Button.TryGetKeyboard(out Keys key); if (Taskbar.IsExpanded) { // Menu if (Game1.options.doesInputListContain(Game1.options.menuButton, key)) { Helper.Input.Suppress(e.Button); return; } // Journal if (Game1.options.doesInputListContain(Game1.options.journalButton, key)) { Helper.Input.Suppress(e.Button); return; } } }