public void OnLevelBeat(LevelBeatContext ctx) { GameState.PAUSED = true; float timeElapsed = Time.time - timeStart; // calc score and save level stats int score = CalcScore(ctx.moves, ctx.merges, ctx.splits, timeElapsed); SaveLevelStats(ctx.moves, ctx.merges, ctx.splits, score, timeElapsed); // Set level complete ui to correct values movesCount.text = DisplayScore(ctx.moves, 3); mergeCount.text = DisplayScore(ctx.merges, 3); splitCount.text = DisplayScore(ctx.splits, 3); timeLabel.text = DisplayScore((int)timeElapsed, 3); scoreText.text = DisplayScore(score, 5); for (int i = 0; i < stars.Length; i++) { if (sceneIndex > LevelData.STAR_SCORES.Length) { break; } if (score > LevelData.STAR_SCORES[sceneIndex, i]) { stars[i].sprite = filledStar; } } // Display Level Complete Panel levelCompletelPanel.SetActive(true); }
void OnLevelBeat(LevelBeatContext ctx) { levelComplete.Play(); }