72 lines
2.0 KiB
C#
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();
|
|
}
|
|
}
|
|
}
|