public void _onSelectionMarkerInputEvent(Viewport viewport, InputEventMouse inputEvent, int shapeIdx) { if (!inputEvent.IsPressed()) { return; } if (inputEvent.GetType() != typeof(InputEventMouseButton)) { return; } InputEventMouseButton inputEventMouseButton = inputEvent as InputEventMouseButton; Mob ownerMob = GetParentMob(); switch (inputEventMouseButton.ButtonIndex) { case 1: EmitSignal(nameof(LeftClick), ownerMob); break; case 2: EmitSignal(nameof(RightClick), ownerMob); break; } }
private void OnMouseEvent(InputEventMouse evt) { if (!evt.IsPressed() || !ItemTable.GetGlobalRect().HasPoint(evt.Position)) { return; } for (int y = 0; y < Game.BoardHeight; y++) { for (int x = 0; x < Game.BoardWidth; x++) { Sprite s = ItemSprites[x, y]; if (s != null && s.GetRect().HasPoint(s.ToLocal(evt.Position))) { OnSpriteClick(x, y); } } } }