using System.Collections;
using System.Collections.Generic;
using UnityEngine.UI;
using UnityEngine;

public class MainMenuController : MonoBehaviour
{
	public GameObject GameOptionsMenu;
	public GameObject SettingsMenu;
	public GameObject MainMenu;
	public GameObject HowToPlayMenu;

	public Button SoundButton;
	public Button MusicButton;
    public Button DifficultyButton;

    bool soundVolume = true;
	bool musicVolume = true;

    int difficulty = 1;

	//On Awake
	private void Awake ()
	{
		MainMenu.SetActive (true);
		SettingsMenu.SetActive (false);
		GameOptionsMenu.SetActive (false);
		HowToPlayMenu.SetActive (false);
	}
		
	//Main Menu Options
	public void OnPlayClick ()
	{
		//toggle which menu displays
		MainMenu.SetActive (false);
		GameOptionsMenu.SetActive (true);
	}

	public void OnSettingsClick ()
	{
		//toggle which menu displays
		MainMenu.SetActive (false);
		SettingsMenu.SetActive (true);
	}

	public void OnTutorialClick ()
	{
		MainMenu.SetActive (false);
		HowToPlayMenu.SetActive (true);
	}
	public void OnTutorialContinueClick ()
	{
		UnityEngine.SceneManagement.SceneManager.LoadScene ("TuteLevelOne");
	}
		
	//Game Options and Settings Menu
	public void OnBackClick ()
	{
		GameOptionsMenu.SetActive (false);
		SettingsMenu.SetActive (false);
		MainMenu.SetActive (true);
	}

	//Game Options Menu
	public void OnRecompileRaceClick ()
	{
		UnityEngine.SceneManagement.SceneManager.LoadScene ("ReCompileRaceOne");
	}

	public void OnColourCollideClick ()
	{
		UnityEngine.SceneManagement.SceneManager.LoadScene ("ColourCollideOne");
	}

	public void OnChickenRunClick ()
	{
		UnityEngine.SceneManagement.SceneManager.LoadScene ("ChickenRunOne");
	}

	//Settings menu
	public void OnSoundVolumeClick ()
	{
		if (soundVolume == true) {
			SoundButton.GetComponentInChildren<Text> ().text = "Sound Volume: OFF";
			soundVolume = false;
		} else {
			SoundButton.GetComponentInChildren<Text> ().text = "Sound Volume: ON";
			soundVolume = true;
		}
	}

	public void OnMusicVolumeClick ()
	{
		if (musicVolume == true) {
			//backgroundMusic.Stop();
			MusicButton.GetComponentInChildren<Text> ().text = "Music Volume: OFF";
			musicVolume = false;
		} else {
			//backgroundMusic.Play();
			MusicButton.GetComponentInChildren<Text> ().text = "Music Volume: ON";
			musicVolume = true;
		}
	}

	public void OnDifficultyClick ()
	{
        if (difficulty == 1)
        {
            DifficultyButton.GetComponentInChildren<Text>().text = "Difficulty: MEDIUM";
            difficulty = 2;
        }
        else if(difficulty == 2)
        {
            DifficultyButton.GetComponentInChildren<Text>().text = "Difficulty: HARD";
            difficulty = 3;
        }
        else
        {
            DifficultyButton.GetComponentInChildren<Text>().text = "Difficulty: EASY";
            difficulty = 1;
        }
    }
}
