using Godot; namespace Babushka.scripts.CSharp.Common.Services; public partial class InputService : Node { public static InputService Instance { get; private set; } = null!; [Signal] public delegate void InputEnabledChangedEventHandler(bool enabled); private static bool _inputEnabled = true; public bool InputEnabled { get => _inputEnabled; set { if (_inputEnabled != value) { CallDeferred(nameof(SetInputEnabled), value); } } } private void SetInputEnabled(bool enabled) { _inputEnabled = enabled; EmitSignal(SignalName.InputEnabledChanged, _inputEnabled); } public override void _EnterTree() { Instance = this; } }