diff --git a/Engine.Core/Extensions/EnumExtensions.cs b/Engine.Core/Extensions/EnumExtensions.cs new file mode 100644 index 0000000..1f7e8b1 --- /dev/null +++ b/Engine.Core/Extensions/EnumExtensions.cs @@ -0,0 +1,9 @@ +using System; + +namespace Syntriax.Engine.Core; + +public static class EnumExtensions +{ + public static bool CheckFlag(this Enum left, Enum right) + => ((int)(object)left & (int)(object)right) != 0; +} diff --git a/Engine.Systems/Time/TimerState.cs b/Engine.Systems/Time/TimerState.cs index 4702f3d..4bda41a 100644 --- a/Engine.Systems/Time/TimerState.cs +++ b/Engine.Systems/Time/TimerState.cs @@ -2,8 +2,8 @@ namespace Syntriax.Engine.Systems.Time; public enum TimerState { - Idle, - Ticking, - Paused, - Stopped + Idle = 0b0001, + Ticking = 0b0010, + Paused = 0b0100, + Stopped = 0b1000 }