- Home /
Question by
Bossy_Games · Dec 09, 2014 at 01:04 PM ·
mainmenuguibutton
How to get the GUI buttons to render properley
I have made a main menu for my game and i want it to render the gui buttons properly without changing scenes. I have set it up just to show you that every time it says, Example -- then it lists off a few gui buttons for the next one. Every one of these i want to only display those buttons when activated. Here is an example of the code:
using UnityEngine; using System.Collections;
public class NeonHub : MonoBehaviour {
public float rightAndLeftQuit;
public float upAndDownQuit;
public GUIStyle Quit;
public float rightAndLeftStageSelect;
public float upAndDownStageSelect;
public GUIStyle stageSelect;
public float rightAndLeftUpgradeCenter;
public float upAndDownUpgradeCenter;
public GUIStyle upgradeCenter;
public float rightAndLeftOptions;
public float upAndDownOptions;
public GUIStyle Options;
public float rightAndLeftTitle;
public float upAndDownTitle;
public GUIStyle title;
public bool stage = false;
public bool options = false;
public bool center = false;
public bool main = true;
public bool play = false;
public bool multi = false;
public float rightAndLeftSlider;
public float upAndDownSlider;
public GUIStyle slider;
public float rightAndLeftPlay;
public float upAndDownPlay;
public float rightAndLeftMulti;
public float upAndDownMulti;
public float rightAndLeftBack;
public float upAndDownBack;
public GUIStyle Play;
public Texture background;
// Use this for initialization
void Start () {
PlayerPrefs.SetInt ("main", 1);
}
// Update is called once per frame
void Update () {
if(Input.GetKey(KeyCode.Escape)){
Application.Quit();
}
}
void OnGUI(){
//title
GUI.Box(new Rect (Screen.width * rightAndLeftTitle, Screen.height * upAndDownTitle, Screen.width * .2f, Screen.height * .4f), "Neon Wars", title);
//levels of the main menu
Main Hub --
if (GUI.Button (new Rect (Screen.width * rightAndLeftQuit, Screen.height * upAndDownQuit, Screen.width * .18f, Screen.height * .1f), "Quit Game", Quit)) {
Application.Quit ();
}
if (GUI.Button (new Rect (Screen.width * rightAndLeftPlay, Screen.height * upAndDownPlay, Screen.width * .18f, Screen.height * .1f), "Play Game", Play))
{
PlayerPrefs.SetInt ("menu", 2);
}
if (GUI.Button (new Rect (Screen.width * rightAndLeftUpgradeCenter, Screen.height * upAndDownUpgradeCenter, Screen.width * .18f, Screen.height * .1f), "Upgrade Center", upgradeCenter))
{
PlayerPrefs.SetInt ("menu", 3);
}
if (GUI.Button (new Rect (Screen.width * rightAndLeftOptions, Screen.height * upAndDownOptions, Screen.width * .18f, Screen.height * .1f), "Options", Options))
{
PlayerPrefs.SetInt ("menu", 4);
}
Play Game Tab --
if (GUI.Button (new Rect (Screen.width * rightAndLeftStageSelect, Screen.height * upAndDownStageSelect, Screen.width * .18f, Screen.height * .1f), "Stage Select", stageSelect))
{
PlayerPrefs.SetInt("menu", 5);
}
if (GUI.Button (new Rect (Screen.width * rightAndLeftMulti, Screen.height * upAndDownMulti, Screen.width * .18f, Screen.height * .1f), "Multi-Player", upgradeCenter))
{
PlayerPrefs.SetInt("menu", 6);
}
if (GUI.Button (new Rect (Screen.width * rightAndLeftBack, Screen.height * upAndDownBack, Screen.width * .18f, Screen.height * .1f), "Back", upgradeCenter))
{
PlayerPrefs.SetInt("menu", 1);
}
}
Level Select --
if (GUI.Button (new Rect (Screen.width * rightAndLeftUpgradeCenter, Screen.height * upAndDownUpgradeCenter, Screen.width * .18f, Screen.height * .1f), "Level 1", upgradeCenter)) {
Application.LoadLevel("Level1");
}
if (GUI.Button (new Rect (Screen.width * rightAndLeftBack, Screen.height * upAndDownBack, Screen.width * .18f, Screen.height * .1f), "Back", upgradeCenter))
{
PlayerPrefs.SetInt("menu", 1);
}
}
Options Menu --
if (GUI.Button (new Rect (Screen.width * rightAndLeftBack, Screen.height * upAndDownBack, Screen.width * .18f, Screen.height * .1f), "Back", upgradeCenter))
{
Display main buttons
}
}
UpgradeCanter --
if (GUI.Button (new Rect (Screen.width * rightAndLeftUpgradeCenter, Screen.height * upAndDownUpgradeCenter, Screen.width * .18f, Screen.height * .1f), "Upgrade", stageSelect)) {
}
if (GUI.Button (new Rect (Screen.width * rightAndLeftBack, Screen.height * upAndDownBack, Screen.width * .18f, Screen.height * .1f), "Back", upgradeCenter))
{
Display main buttons
}
}
Multiplayer Random Match --
if (GUI.Button (new Rect (Screen.width * rightAndLeftUpgradeCenter, Screen.height * upAndDownUpgradeCenter, Screen.width * .18f, Screen.height * .1f), "Random Match", stageSelect)) {
}
if (GUI.Button (new Rect (Screen.width * rightAndLeftBack, Screen.height * upAndDownBack, Screen.width * .18f, Screen.height * .1f), "Back", upgradeCenter))
{
Display Play
}
}
}
}
Comment
Your answer
Follow this Question
Related Questions
Changing two different objects renderer colour 1 Answer
Access to GUI Keyboard Focus 1 Answer
Menu communication failed 1 Answer
Main Menu GUI Button - Animation? 1 Answer