Beispiel #1
0
    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;
        }
    }
Beispiel #2
0
    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);
                }
            }
        }
    }