Syntriax.Engine/Engine.Input/Abstract/IButtonInputs.cs

15 lines
501 B
C#

using Syntriax.Engine.Core.Abstract;
namespace Syntriax.Engine.Input;
public interface IButtonInputs<T> : IAssignableStateEnable
{
void RegisterOnPress(T button, Action<IButtonInputs<T>, T> callback);
void UnregisterOnPress(T button, Action<IButtonInputs<T>, T> callback);
void RegisterOnRelease(T button, Action<IButtonInputs<T>, T> callback);
void UnregisterOnRelease(T button, Action<IButtonInputs<T>, T> callback);
bool IsPressed(T button);
bool WasPressed(T button);
}