diff options
Diffstat (limited to 'source/game/input/conditions/AnyCondition.cs')
| -rw-r--r-- | source/game/input/conditions/AnyCondition.cs | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/source/game/input/conditions/AnyCondition.cs b/source/game/input/conditions/AnyCondition.cs new file mode 100644 index 0000000..a870539 --- /dev/null +++ b/source/game/input/conditions/AnyCondition.cs @@ -0,0 +1,15 @@ +using Celesteia.Game.Input.Definitions; + +namespace Celesteia.Game.Input.Conditions { + public class AnyCondition : ICondition<bool> { + private IBinaryInputDefinition[] _definitions; + + public AnyCondition(params IBinaryInputDefinition[] definitions) + => _definitions = definitions; + + public bool Poll() { + for (int i = 0; i < _definitions.Length; i++) if (_definitions[i].Test()) return true; + return false; + } + } +}
\ No newline at end of file |
