using UnityEngine;
using System.Collections;

public class MainMenuScript : MonoBehaviour {

    void Awake()
    {       
        //Make this script persistent(Not destroy when loading a new level)
        DontDestroyOnLoad(this);

        Time.timeScale = 1.0f; //In case some game does not UN-pause..
    }

	void OnGUI () {    

        //Detect if we're in the main menu scene
        if (Application.loadedLevel == 0)
        {
            MainMenuGUI();
        }
        else
        {
            //Game scene
            InGameGUI();
        }	
	}

    void StartGame(int nr)
    {
        Application.LoadLevel(nr);
    }

    public GUIStyle invisibleButton;

    void MainMenuGUI()
    {
        int leftPix = (Screen.width - 600) / 2;
        int topPix = (Screen.height - 450) / 2;

        if (GUI.Button(new Rect(leftPix, topPix, 204, 158), "", invisibleButton))
        {
            StartGame(1);
        }
        if (GUI.Button(new Rect(leftPix + 204, topPix, 204, 158), "", invisibleButton))
        {
            StartGame(2);
        }
        if (GUI.Button(new Rect(leftPix + 204 * 2, topPix, 204, 158), "", invisibleButton))
        {
            StartGame(3);
        }


        if (GUI.Button(new Rect(leftPix, topPix + 290, 204, 158), "", invisibleButton))
        {
            StartGame(4);
        }
        if (GUI.Button(new Rect(leftPix + 204, topPix + 290, 204, 158), "", invisibleButton))
        {
            StartGame(5);
        }
        if (GUI.Button(new Rect(leftPix + 204 *2, topPix + 290, 204, 158), "", invisibleButton))
        {
            Application.OpenURL("http://www.M2H.nl");
        }


        GUI.color = Color.black;

        GUILayout.BeginArea(new Rect(Screen.width/2-150, Screen.height/2-100, 300, 200));
        GUILayout.BeginHorizontal();
        GUILayout.FlexibleSpace();

        GUILayout.BeginVertical();
        GUILayout.FlexibleSpace();

        GUILayout.Label("Select a game!");
       
        GUILayout.FlexibleSpace();
        GUILayout.EndVertical();

        GUILayout.FlexibleSpace();
        GUILayout.EndHorizontal();
        GUILayout.EndArea();

    }


    void InGameGUI()
    {
        //Top-right
        GUILayout.BeginArea(new Rect(0, 0, Screen.width, 50));
        GUILayout.BeginHorizontal();
        GUILayout.FlexibleSpace();
        if (GUILayout.Button("Back to menu"))
        {
            Destroy(gameObject); //Otherwise we'd have two of these..
            Application.LoadLevel(0);
        }
        GUILayout.EndHorizontal();
        GUILayout.EndArea();
    }

}