/// <summary> /// Handles mouse activity. /// </summary> protected override void HandlerMouse(MouseState mouse) { Int32 deltaWheel = mouse.ScrollWheelValue - _oldMouseState.ScrollWheelValue; if (deltaWheel > 0) { if (_selectedCreature != null && _selectedCreature.Team == _myGame.PlayerTeam) { _selectedCreature.SpellSelectNext(); } } else if (deltaWheel < 0) { if (_selectedCreature != null && _selectedCreature.Team == _myGame.PlayerTeam) { _selectedCreature.SpellSelectPrevious(); } } _mousePosition = new Vector2(mouse.X, mouse.Y); _mouseHoverTile = ClickedHex(_mousePosition, _myDrawer.ScreenAnchor); #region Mouse Hover // check if the cursor is over an item. if (_selectedCreature != null && _selectedCreature.Team == _myGame.PlayerTeam) { int?i = DetermineInventorySlotClickedBackpack(); int?j = DetermineInventorySlotClickedEquipped(); if (i != null || j != null) { _itemHovered = (i != null) ? _selectedCreature.InventoryBackpack.GetItem(i.Value) : _selectedCreature.InventoryEquipped.GetItem(j.Value); } else { _itemHovered = null; } } if (mouse.LeftButton == ButtonState.Pressed) { _lastLeftButtonPress = new Vector2(mouse.X - _myDrawer.ScreenAnchor.X, mouse.Y - _myDrawer.ScreenAnchor.Y); if (_oldMouseState.LeftButton == ButtonState.Released) { } } #endregion HandlerMouse_LeftButton(mouse); HandlerMouse_RightButton(mouse); }