private static void CheckToEnable() { if (!Savestates.SpeedrunToolInstalled && Hotkeys.HotkeyRestart.Pressed && !Hotkeys.HotkeyRestart.WasPressed) { DisableRun(); EnableRun(); return; } if (Hotkeys.HotkeyStart.Pressed) { if (!HasFlag(State, State.Enable) && checkHotkeyStarTask == null) { NextState |= State.Enable; } else { NextState |= State.Disable; } } else if (HasFlag(NextState, State.Enable)) { if (Engine.Scene is Level level && (!level.CanPause || Engine.FreezeTimer > 0)) { Controller.RefreshInputs(true); if (Controller.Current.HasActions(Actions.Restart) || Controller.Current.HasActions(Actions.Start)) { NextState |= State.Delay; FrameLoops = FastForward.DefaultFastForwardSpeed; return; } } EnableRun(); } else if (HasFlag(NextState, State.Disable)) { DisableRun(); } }