using UnityEngine; public class MenuController : MonoBehaviour { [SerializeField] private float _timeToPromo = 180f; [SerializeField] private float _timeToSettings = 1f; private HoldTimer _promoTimer; private HoldTimer _settingsTimer; private bool _isInit = false; private bool _isEnabled = false; private void Update() { if ((_isEnabled && _isInit) == false) return; if (HandleSettings()) return; if (HandlePromo()) return; } public void Initialize() { _promoTimer = new HoldTimer(_timeToPromo); _settingsTimer = new HoldTimer(_timeToSettings); _isInit = true; } public void Enable() { _isEnabled = true; LightUtility.Idle(); GameManager.instance.ResetGameSession(); } public void Disable() { _isEnabled = false; _promoTimer.Reset(); _settingsTimer.Reset(); } private bool HandleSettings() { bool settingButtonPressed = In.GetButton(InSignal.secret); bool gotoSettings = Input.GetKeyDown(KeyCode.F5) || _settingsTimer.Update(settingButtonPressed); if (gotoSettings) { print("ТУТ БУДЕТ ПЕРЕХОД В НАСТРОЙКИ"); return true; } return false; } private bool HandlePromo() { if (_promoTimer.Update(!In.AnyButton())) { print("ТУТ БУДЕТ ПЕРЕХОД В ПРОМО"); return true; } return false; } }