MIF_E31222586/Assets/Scripts/skor_akhir.cs

72 lines
2.0 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
using TMPro;
public class skor_akhir : MonoBehaviour
{
public TMP_Text skor_T, rangking_T;
public SoalPapanManager soalManager;
private InputHandler inputHandler;
void Start()
{
skor_T.text = soalManager.skor.ToString();
// Penilaian Rangking
if (soalManager.skor > 80)
{
rangking_T.text = "Luar Biasa";
}
else if (soalManager.skor > 40)
{
rangking_T.text = "Cukup Hebat";
}
else
{
rangking_T.text = "Yuk Belajar Lagi";
}
inputHandler = InputHandler.instance;
if (inputHandler != null)
{
int currentLevel = levelMenu.levelSekarang;
inputHandler.SetSkorLevel(currentLevel, soalManager.skor);
inputHandler.AddNameToList();
Debug.Log($"Skor level {currentLevel} berhasil disimpan: {soalManager.skor}");
}
else
{
Debug.LogWarning("InputHandler.instance tidak ditemukan!");
}
UpdateLevel();
}
void UpdateLevel()
{
int skor = soalManager.skor;
int levelSaatIni = levelMenu.levelSekarang;
int levelTersimpan = PlayerPrefs.GetInt("level", 0);
if (skor >= 80) {
// Naikkan level hanya jika belum mencapai level terakhir
if (levelSaatIni >= levelTersimpan)
{
int nextLevel = levelSaatIni + 1;
PlayerPrefs.SetInt("level", nextLevel);
Debug.Log("Membuka level: " + nextLevel);
}
// Jika pemain ada di level terakhir (ke-5), aktifkan akses Post-Test
if (levelSaatIni >= 4) // indeks level 4 = level ke-5
{
PlayerPrefs.SetInt("posttestUnlocked", 1);
Debug.Log("Post-test telah dibuka!");
}
PlayerPrefs.Save();
}
}
}