blob: 3fb626864219cda49ab897b76d3a54a13d53a02d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
#nullable disable
using System.Collections.Generic;
namespace StardewModdingAPI.Framework.Input
{
/// <summary>Manages input state.</summary>
/// <typeparam name="THandler">The handler type.</typeparam>
/// <typeparam name="TState">The state type.</typeparam>
internal interface IInputStateBuilder<out THandler, TState>
where TState : struct
where THandler : IInputStateBuilder<THandler, TState>
{
/*********
** Methods
*********/
/// <summary>Override the states for a set of buttons.</summary>
/// <param name="overrides">The button state overrides.</param>
THandler OverrideButtons(IDictionary<SButton, SButtonState> overrides);
/// <summary>Get the currently pressed buttons.</summary>
IEnumerable<SButton> GetPressedButtons();
/// <summary>Get the equivalent state.</summary>
TState GetState();
}
}
|