diff --git a/Solver/ActionSet.cs b/Solver/ActionSet.cs index c7aaf34..248ba13 100644 --- a/Solver/ActionSet.cs +++ b/Solver/ActionSet.cs @@ -16,7 +16,7 @@ public struct ActionSet private static int FromAction(ActionType action) { var ret = Simulator.AcceptedActionsLUT[(byte)action]; - if (ret == 0) + if (ret == -1) throw new ArgumentOutOfRangeException(nameof(action), action, $"Action {action} is unsupported in {nameof(ActionSet)}."); return ret; } diff --git a/Solver/Simulator.cs b/Solver/Simulator.cs index b3f6f60..23ab77c 100644 --- a/Solver/Simulator.cs +++ b/Solver/Simulator.cs @@ -63,6 +63,8 @@ public Simulator(SimulationState state, int maxStepCount) : base(state) static Simulator() { AcceptedActionsLUT = new int[Enum.GetValues().Length]; + for (var i = 0; i < AcceptedActionsLUT.Length; i++) + AcceptedActionsLUT[i] = -1; for (var i = 0; i < AcceptedActions.Length; i++) AcceptedActionsLUT[(byte)AcceptedActions[i]] = i; }