53 lines
1.3 KiB
C#
53 lines
1.3 KiB
C#
|
|
using UnityEngine;
|
||
|
|
using UnityEngine.UI;
|
||
|
|
using UnityEngine.SceneManagement;
|
||
|
|
|
||
|
|
public class ModeSelectController : MonoBehaviour
|
||
|
|
{
|
||
|
|
[SerializeField] private Button[] modButtons = new Button[30];
|
||
|
|
[SerializeField] private Button backButton;
|
||
|
|
[SerializeField] private string mainMenuScene = "Anamen";
|
||
|
|
[SerializeField] private AudioSource audioSource;
|
||
|
|
[SerializeField] private AudioClip clickSound;
|
||
|
|
|
||
|
|
[Header("MOD Sahneleri")]
|
||
|
|
[SerializeField] private string[] modScenes = new string[30];
|
||
|
|
|
||
|
|
void Start()
|
||
|
|
{
|
||
|
|
// Bind mod buttons
|
||
|
|
for (int i = 0; i < 30; i++)
|
||
|
|
{
|
||
|
|
if (modButtons[i] != null)
|
||
|
|
{
|
||
|
|
int modID = i + 1;
|
||
|
|
modButtons[i].onClick.AddListener(() => SelectMode(modID));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
// Back button
|
||
|
|
if (backButton != null)
|
||
|
|
backButton.onClick.AddListener(() => LoadScene(mainMenuScene));
|
||
|
|
}
|
||
|
|
|
||
|
|
void SelectMode(int modID)
|
||
|
|
{
|
||
|
|
PlaySound();
|
||
|
|
PlayerPrefs.SetInt("SelectedMode", modID);
|
||
|
|
PlayerPrefs.Save();
|
||
|
|
|
||
|
|
string sceneName = modScenes[modID - 1];
|
||
|
|
LoadScene(sceneName);
|
||
|
|
}
|
||
|
|
|
||
|
|
void LoadScene(string sceneName)
|
||
|
|
{
|
||
|
|
SceneManager.LoadScene(sceneName);
|
||
|
|
}
|
||
|
|
|
||
|
|
void PlaySound()
|
||
|
|
{
|
||
|
|
if (audioSource && clickSound)
|
||
|
|
audioSource.PlayOneShot(clickSound);
|
||
|
|
}
|
||
|
|
}
|