using Godot; namespace Rokojori { [Tool] [GlobalClass,Icon("res://addons/rokojori_action_library/Icons/Sensor.svg")] public partial class GamePadButtonSensor : Sensor, iOnInputSensor { [Export] public JoyButton button; public override bool isMultiDevice => true; float _lastInput = 0; protected override void UpdateValue() { SetFloatValue( _lastInput ); } public void _Input( InputEvent ev ) { var joypadButtonEvent = ev as InputEventJoypadButton; if ( joypadButtonEvent == null ) { return; } if ( joypadButtonEvent.ButtonIndex != button ) { return; } _lastInput = joypadButtonEvent.IsPressed() ? 1 : 0; } } }