﻿using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class OptionsController : MonoBehaviour {

	public Slider volumeSlider;
	public Slider diffSlider;
	public LevelManager levelManager;

	private MusicManager musicManager;

	void Awake (){
		Debug.Log ("Slider Awakes at "+ diffSlider.value);
	}

	// Use this for initialization
	void Start () {
		musicManager = GameObject.FindObjectOfType<MusicManager> ();
		volumeSlider.value = PlayerPrefsManager.GetMasterVolume ();

		Debug.Log ("Options Controller finds Difficulty as: " + PlayerPrefsManager.GetDifficulty ());
		diffSlider.value = PlayerPrefsManager.GetDifficulty ();
		Debug.Log ("Slider set to: "+ diffSlider.value +" on Start by Options Controller");
	}
	
	// Update is called once per frame
	void Update () {
		musicManager.AdjustVolume (volumeSlider.value);
	}

	public void SaveAndExit (){
		PlayerPrefsManager.SetMasterVolume (volumeSlider.value);

		Debug.Log ("On exit, Slider is set at: " + diffSlider.value);
		PlayerPrefsManager.SetDifficulty (diffSlider.value);
		if (PlayerPrefsManager.GetDifficulty () == diffSlider.value) {
			Debug.Log ("Diffuculty successfully set to slider value");
		} else {
			Debug.Log("Difficulty is still set to :"+ PlayerPrefsManager.GetDifficulty());
		}

		levelManager.Loadlevel ("01a Start");
	}

	public void SetDefault() {
		volumeSlider.value = 0.5f;
		diffSlider.value = 2f;
	}

}
