void Update() { ScoreText.text = score.ToString(); if (Constants.GameOn) { if (Constants.Endless) { if (spawnTimer > 0) { spawnTimer -= Time.deltaTime; if (spawnTimer <= 0) { spawnTimer = 0; Spawn(); } } int note = FloorManager.PosToNote(transform.position.y); int floorsAbove = floorManager.FloorsOnAbove(note); int floorsUnder = floorManager.FloorsOnUnder(note); if (floorsAbove > 0) { UpArrow.enabled = true; UpText.enabled = true; UpText.text = floorsAbove.ToString(); } else { UpArrow.enabled = false; UpText.enabled = false; } if (floorsUnder > 0) { DownArrow.enabled = true; DownText.enabled = true; DownText.text = floorsUnder.ToString(); } else { DownArrow.enabled = false; DownText.enabled = false; } TimerBar.value = timer / Constants.EndlessPatience; } else { int targetNote = Constants.Level[curIdx]; int curNote = FloorManager.PosToNote(transform.position.y); if (targetNote > curNote) { UpArrow.color = floorManager.GetColor(targetNote); UpArrow.color = FloorManager.LightUp(UpArrow.color); UpArrow.enabled = true; UpText.enabled = true; DownArrow.enabled = false; DownText.enabled = false; } else if (targetNote < curNote) { DownArrow.color = floorManager.GetColor(targetNote); DownArrow.color = FloorManager.LightUp(DownArrow.color); UpArrow.enabled = false; UpText.enabled = false; DownArrow.enabled = true; DownText.enabled = true; } else { UpArrow.enabled = false; UpText.enabled = false; DownArrow.enabled = false; DownText.enabled = false; } TimerBar.value = timer / Constants.NormalPatience; } foreach (PersonScript person in clients) { timer = Mathf.Min(timer, person.Patience); } TimerFill.color = Color.Lerp(Color.red, Color.yellow, TimerBar.value); if (TimerBar.value < Constants.CriticalTimer) { TimerBar.transform.position = timerBarPos + 3 * Random.insideUnitSphere; } if (timer <= 0) { timer = 0; TimerBar.transform.position = timerBarPos; EndGame(); } } }