full gamepad support

This commit is contained in:
Rendo 2025-07-28 18:03:26 +05:00
commit a57d79e84a
21 changed files with 213 additions and 46 deletions

View file

@ -6,13 +6,23 @@ namespace Newlon.Components.Droppables;
public partial class DroppableItem : Area2D
{
[Signal] public delegate void PickedUpEventHandler();
public override void _MouseEnter()
{
if (GamepadHandler.Instance.IsGamepadControlled)
{
GetViewport().SetInputAsHandled();
PickUp();
EmitSignal(SignalName.PickedUp);
}
}
public override void _InputEvent(Viewport viewport, InputEvent @event, int shapeIdx)
{
if (@event.IsActionPressed("primary_action"))
{
GetViewport().SetInputAsHandled();
PickUp();
EmitSignal(SignalName.PickedUp);
EmitSignal(SignalName.PickedUp);
}
}
public virtual void PickUp() {}