using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.SceneManagement; using UnityEngine.UI; public class MainMenuScript : MonoBehaviour { public BackgroundMusicManager currentBGMManager; public MenuAudioManager currentMenuAudioManager; private void Start() { // If the BGM manager is present, queue up and play the given track index if (currentBGMManager) { currentBGMManager.StartAudioQueueAndPlay(0); } } public void SetupVolumeOptions() { // Gets the volume settings from the player profile and sets it in the game float currentMasterVol = PlayerPrefs.GetFloat("currentMasterVol"); GameObject masterVolSliderGo = GameObject.Find("Main Slider"); float currentMusicVol = PlayerPrefs.GetFloat("currentMusicVol"); GameObject musicVolSliderGo = GameObject.Find("Music Slider"); float currentSFXVol = PlayerPrefs.GetFloat("currentSFXVol"); GameObject SFXVolSliderGo = GameObject.Find("SFX Slider"); masterVolSliderGo.GetComponent().value = currentMasterVol; musicVolSliderGo.GetComponent().value = currentMusicVol; SFXVolSliderGo.GetComponent().value = currentSFXVol; } public void PlayMenuClick() { if (currentMenuAudioManager) { currentMenuAudioManager.PlayMenuClick(); } } public void StartGame() { // Play the menu click sound if the audio manager is present if (currentMenuAudioManager) { currentMenuAudioManager.PlayMenuClick(); } SceneManager.LoadScene("Rules"); } public void Quit() { // Play the menu click sound if the audio manager is present if (currentMenuAudioManager) { currentMenuAudioManager.PlayMenuClick(); } Application.Quit(); } public void SetMasterVolume(float value) { // Converts the master volume into decibels and stores it in the player profile GameManager.Instance.currentAudioMixer.SetFloat("masterVol", SharedMethods.ConvertToDecibels(value)); PlayerPrefs.SetFloat("currentMasterVol", value); } public void SetMusicVolume(float value) { // Converts the music volume into decibels and stores it in the player profile GameManager.Instance.currentAudioMixer.SetFloat("musicVol", SharedMethods.ConvertToDecibels(value)); PlayerPrefs.SetFloat("currentMusicVol", value); } public void SetSFXVolume(float value) { // Converts the sfx volume into decibels and stores it in the player profile GameManager.Instance.currentAudioMixer.SetFloat("sfxVol", SharedMethods.ConvertToDecibels(value)); PlayerPrefs.SetFloat("currentSFXVol", value); } }