- Home /
GUI box overlapping when reloading the scene
Uh, this is a really annoying problem. the following script draws a GUI box (the score)on the screen and when the player reaches a certain score, the player is given the option to play the level again. When I click the button to reload the level the GUI box should only be drawn once every time I reload the scene, but when I click the replay button it reloads the scene and draws another box, overlapping the previous one. Does anybody know how to fix the problem? thanks
#pragma strict
var items = 0.0;
private var showGUI : boolean = true;
function OnGUI () {
if(showGUI == true)
{
GUI.Box(Rect(10, 10, 100, 20), "items: " + items);
if(items >= 6)
{
win();
}
}
else
{
showGUI = false;
}
}
function win()
{
GUI.Box(Rect(Screen.width / 2, 5, 100, 20), "You Win!");
if(GUI.Button(Rect(10, 30, 100, 20), "Play Again"))
{
Application.LoadLevel(2);
}
//GUI.Button(Rect(10, 50, 100, 20), "Next Level");
}
Answer by RudyTheDev · Dec 04, 2014 at 02:31 PM
Sounds like DontDestroyOnLoad
was called somewhere on the game object that's holding your box script.
Your answer
Follow this Question
Related Questions
Need help with my script 0 Answers
Limit on GUI Components? 0 Answers
Setting Scroll View Width GUILayout 1 Answer
How To Make Ammo & Realod for Gun & Spark for Gun ? 0 Answers
How Do I Create A Nested Function With Unity JavaScript? 1 Answer