101 lines
2.9 KiB
C#
101 lines
2.9 KiB
C#
using UnityEngine;
|
|
using UnityEngine.SceneManagement;
|
|
using UnityEngine.UI;
|
|
|
|
public class Settings : MonoBehaviour
|
|
{
|
|
public Toggle setting1toggle;
|
|
|
|
public Toggle setting2toggle;
|
|
|
|
public Toggle setting3toggle;
|
|
|
|
public Toggle setting4toggle;
|
|
|
|
public Toggle setting5toggle;
|
|
|
|
public Button backbutton;
|
|
|
|
public Slider musicSlider;
|
|
|
|
public Slider sfxSlider;
|
|
|
|
private void Awake()
|
|
{
|
|
musicSlider.value = PlayerPrefs.GetFloat("musicVolume", 1f);
|
|
sfxSlider.value = PlayerPrefs.GetFloat("sfxVolume", 1f);
|
|
setting1toggle.isOn = PlayerPrefs.GetInt("Setting1", 1) == 1;
|
|
setting2toggle.isOn = PlayerPrefs.GetInt("Setting2", 0) == 1;
|
|
setting3toggle.isOn = PlayerPrefs.GetInt("Setting3", 0) == 1;
|
|
setting4toggle.isOn = PlayerPrefs.GetInt("Setting4", 0) == 1;
|
|
setting5toggle.isOn = PlayerPrefs.GetInt("Setting5", 1) == 1;
|
|
backbutton.onClick.AddListener(BackButton);
|
|
setting1toggle.onValueChanged.AddListener(delegate
|
|
{
|
|
Setting1ToggleValueChanged(setting1toggle);
|
|
});
|
|
setting2toggle.onValueChanged.AddListener(delegate
|
|
{
|
|
Setting2ToggleValueChanged(setting2toggle);
|
|
});
|
|
setting3toggle.onValueChanged.AddListener(delegate
|
|
{
|
|
Setting3ToggleValueChanged(setting3toggle);
|
|
});
|
|
setting4toggle.onValueChanged.AddListener(delegate
|
|
{
|
|
Setting4ToggleValueChanged(setting4toggle);
|
|
});
|
|
setting5toggle.onValueChanged.AddListener(delegate
|
|
{
|
|
Setting5ToggleValueChanged(setting5toggle);
|
|
});
|
|
musicSlider.onValueChanged.AddListener(UpdateMusicVolume);
|
|
sfxSlider.onValueChanged.AddListener(UpdateSFXVolume);
|
|
}
|
|
|
|
private void Setting1ToggleValueChanged(Toggle change)
|
|
{
|
|
Screen.fullScreen = change.isOn;
|
|
PlayerPrefs.SetInt("Setting1", change.isOn ? 1 : 0);
|
|
}
|
|
|
|
private void Setting2ToggleValueChanged(Toggle change)
|
|
{
|
|
PlayerPrefs.SetInt("Setting2", change.isOn ? 1 : 0);
|
|
}
|
|
|
|
private void Setting3ToggleValueChanged(Toggle change)
|
|
{
|
|
PlayerPrefs.SetInt("Setting3", change.isOn ? 1 : 0);
|
|
}
|
|
|
|
private void Setting4ToggleValueChanged(Toggle change)
|
|
{
|
|
PlayerPrefs.SetInt("Setting4", change.isOn ? 1 : 0);
|
|
}
|
|
|
|
private void Setting5ToggleValueChanged(Toggle change)
|
|
{
|
|
PlayerPrefs.SetInt("Setting5", change.isOn ? 1 : 0);
|
|
QualitySettings.vSyncCount = (change.isOn ? 1 : 0);
|
|
}
|
|
|
|
private void BackButton()
|
|
{
|
|
SceneManager.LoadScene("Menu");
|
|
}
|
|
|
|
private void UpdateMusicVolume(float volume)
|
|
{
|
|
PlayerPrefs.SetFloat("musicVolume", volume);
|
|
PlayerPrefs.Save();
|
|
}
|
|
|
|
private void UpdateSFXVolume(float volume)
|
|
{
|
|
PlayerPrefs.SetFloat("sfxVolume", volume);
|
|
PlayerPrefs.Save();
|
|
}
|
|
}
|