private void HandleGameSpeedChange(GameSpeedInteraction speed) { if (speed == GameSpeedInteraction.Pause && _waitForNextPress) { return; } if (!_waitForNextPress) { ChangeSpeed(speed); _speedChangeTimer.Start(SpeedChangeEchoDelaySeconds); _waitForNextPress = true; } else if (Mathf.IsZeroApprox(_speedChangeTimer.TimeLeft)) { ChangeSpeed(speed); } }
private void ChangeSpeed(GameSpeedInteraction speed) { // ReSharper disable once SwitchStatementHandlesSomeKnownEnumValuesWithDefault switch (speed) { case GameSpeedInteraction.Up: SpeedUpButtonPressed(); break; case GameSpeedInteraction.Down: SpeedDownButtonPressed(); break; case GameSpeedInteraction.Pause: SpeedLabelButtonPressed(); break; } }