private void UpdateOnRestore() { _value -= _dt / timeToFullRestore; if (_value <= 0f) { _state = AlarmState.None; _value = 0f; } OnAlarmValueChanged?.Invoke(_value); }
public void ForceAlarm() { if (State == SystemState.Pause) { return; } _state = AlarmState.Alarm; _alarmTimer = alarmTime; _value = 1f; OnAlarmValueChanged?.Invoke(_value); }
private void UpdateOnRaise() { _value += _dt / timeToAlarm; if (_value >= 1f) { _state = AlarmState.Alarm; _alarmTimer = alarmTime; _value = 1f; } else { _state = AlarmState.Restore; } OnAlarmValueChanged?.Invoke(_value); }