using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;

public class LevelSelector : MonoBehaviour
{
    // Array Button level (1-6). Assign di Inspector sesuai urutan level.
    public Button[] levelButtons;

    // Sprite untuk kondisi "unlocked" (tiap level punya sprite berbeda).
    // Misalnya unlockedSprites[0] untuk level 1, unlockedSprites[1] untuk level 2, dst.
    public Sprite[] unlockedSprites;

    // Sprite untuk kondisi "locked" (bisa satu sprite yang sama untuk semua level).
    public Sprite lockedSprite;

    private void Start()
    {
        // Ambil info level tertinggi yang sudah terbuka, default = 1
        int maxLevelUnlocked = PlayerPrefs.GetInt("maxLevelUnlocked", 1);

        // Atur setiap tombol level
        for (int i = 0; i < levelButtons.Length; i++)
        {
            int levelNumber = i + 1; // karena index mulai dari 0, level mulai dari 1

            if (levelNumber <= maxLevelUnlocked)
            {
                // Level ini unlocked
                levelButtons[i].image.sprite = unlockedSprites[i]; // sprite unlocked
                levelButtons[i].interactable = true;
            }
            else
            {
                // Level ini masih locked
                levelButtons[i].image.sprite = lockedSprite; // sprite lock
                levelButtons[i].interactable = false;
            }
        }
    }

    // Fungsi untuk dipanggil oleh OnClick tiap tombol level
    public void SelectLevel(int level)
    {
        // Pastikan level ini tidak melebihi maxLevelUnlocked
        int maxLevelUnlocked = PlayerPrefs.GetInt("maxLevelUnlocked", 1);
        if (level <= maxLevelUnlocked)
        {
            PlayerPrefs.SetInt("selectedLevel", level);
            SceneManager.LoadScene("Quest2 2"); // Ganti dengan nama scene quest Anda
        }
        else
        {
            Debug.Log("Level " + level + " masih terkunci!");
        }
    }
}
