- Home /
Question by
Albert-han · Jul 03, 2014 at 12:39 PM ·
menunotworking
GuiButton Going To Next Level
Hi guys i've created a guibutton that starts a level but when i press it, it goes to the next level but doesnt remove the guibutton.The next level does not have any Scripts but i have no idea why the button is still there when it shouldnt be.Heres my script.
using UnityEngine;
using System.Collections;
public class Menu : MonoBehaviour {
private string CurMenu;
public string Name;
public string MatchName;
public int Players;
// Use this for initialization
void Start () {
CurMenu = "Main";
Name = PlayerPrefs.GetString("PlayerName");
}
// Update is called once per frame
void Update () {
}
void ToMenu(string menu){
CurMenu = menu;
}
void OnGUI(){
if (CurMenu == "Main")
Main();
if (CurMenu == "Host")
Host();
if (CurMenu == "Lobby")
Lobby();
if (CurMenu == "List")
MatchList();
}
private void Main(){
//if (GUI.Button(new Rect (0, 0, 128, 32), "Host A Match")) {
// ToMenu ("Host");
//}
if (GUI.Button (new Rect (0, 0, 128, 32), "Host a match")) {
ToMenu ("Host");
}
Name = GUI.TextField (new Rect (130, 0, 128, 32), Name);
if (GUI.Button(new Rect (260, 0, 128, 32), "Save"))
PlayerPrefs.SetString ("PlayerName", Name);
if (GUI.Button(new Rect (0, 33, 128, 32), "Server List")){
ToMenu ("List");
}
}
private void Host(){
if(GUI.Button(new Rect(0,0,128,32),"Start")){
NetworkManager.Instance.StartServer(MatchName,Players);
ToMenu("Lobby");
}
if(GUI.Button(new Rect(0,33,128,32),"Back")){
ToMenu("Main");
}
MatchName = GUI.TextField(new Rect(130,0,128,32),MatchName);
GUI.Label(new Rect(260,0,128,32),"Match name");
Players = Mathf.Clamp(Players,2,8);
GUI.Label(new Rect(260,32,128,32),"Amount Of Players");
if (GUI.Button (new Rect (145, 32, 32, 32),"+"))
Players ++;
GUI.Label (new Rect (192, 33, 64, 32), Players.ToString());
if (GUI.Button (new Rect (215, 33, 32, 32),"-"))
Players --;
}
private void Lobby(){
if (Network.isServer)
{
if(GUI.Button(new Rect(Screen.width - 128,Screen.height - 64,128,32),"Start"))
{
NetworkManager.Instance.networkView.RPC ("LoadLevel",RPCMode.All);
//networkView.RPC("StartServer",RPCMode.All);
//NetworkManager.Instance.MatchStarted = true;
}
}
if(GUI.Button(new Rect(Screen.width - 128,Screen.height - 32,128,32),"Back")){
ToMenu("Main");
Network.Disconnect();
}
GUILayout.BeginArea (new Rect(0, 0, Screen.width / 2, Screen.height));
foreach(NetworkManager.Player pl in NetworkManager.Instance.PlayerList)
{
GUILayout.Label(pl.PlayerName);
}
GUILayout.EndArea ();
}
private void MatchList()
{
if (GUI.Button(new Rect(0,0,128,32), "Refresh"))
{
MasterServer.RequestHostList("Tut");
}
if (GUI.Button(new Rect(0,33,128,32), "Back"))
{
ToMenu ("Main");
}
GUILayout.BeginArea(new Rect(Screen.width/ 2, 0, Screen.width / 2, Screen.height), "Server List","box");
foreach (HostData hd in MasterServer.PollHostList())
{
GUILayout.BeginHorizontal();
GUILayout.Label(hd.gameName);
if(GUILayout.Button ("Connect"))
{
Network.Connect(hd);
ToMenu("Lobby");
}
GUILayout.EndHorizontal();
}
GUILayout.EndArea();
}
}
Comment
Your answer
Follow this Question
Related Questions
Menu script not showing up like normal 1 Answer
Jump Script, no luck getting it to work.. 2 Answers
Script not working 0 Answers
Main Menu scrpit not working 1 Answer
need help with script 1 Answer