The Escape Menu opens more than once

Hey people!:slight_smile:
I’m struggling with something at the moment, I’m doing an escape menu and for some reason it opens more than 1 of the menu each time i press escape. And when I try and press resume it takes like 3-5 clicks until it closes.
here is the code:

    private var isPaused = false;
    private var isOpened = false;
    function Update () {
     
    Lock();
     
    if(Input.GetKeyDown("escape") && !isPaused)
     
    {
    cursorlock = false;
    isPaused = true;
    GetComponent(MouseLook).enabled = false;
    GameObject.Find("Player").GetComponent(MouseLook).enabled
= false;
     
    }
     
    else if(Input.GetKeyDown("escape") && isPaused)
     
    {
    isPaused = false;
    GetComponent(MouseLook).enabled = true;
    GameObject.Find("Player").GetComponent(MouseLook).enabled
= true;
     
    }
     
    }
     
    function Lock () {
     
    if (isPaused)
    {
    Screen.lockCursor = false;
    Screen.showCursor = true;
    }
    if(!isPaused)
    {
    Screen.lockCursor = true;
    Screen.showCursor = false;
    }
     
    }

          function OnGUI() {
    
        if ((isPaused) && (!isOpened)) {
        isOpened = true;
    	GUI.Box (Rect (Screen.width * 0.5 - 85,Screen.height * 0.5 - 110,170,200), "Main Menu");		
    	if (GUI.Button (Rect (Screen.width * 0.5 - 75,Screen.height
* 0.5 - 75,150,40), "Resume Game")) {
    		isPaused = false;
    		isOpened = false;
    	}
    	
    	if (GUI.Button (Rect (Screen.width * 0.5 - 75,Screen.height
* 0.5 - 25,150,40), "Options")) {
    		//Application.LoadLevel (1);
    	}	
    	
    	if (GUI.Button (Rect (Screen.width * 0.5 - 75,Screen.height
* 0.5 + 25,150,40), "Quit")) {
    		Application.Quit();
    	}		
    	}
    }

I’m really stuck with this at the moment, and all help is greatly appreciated! Thank you so much.

Regards,
Shane

so ur tying to make your menu close?.i don’t know much of coding but some times when im making a gui to opening/closing when i want it to i just do the noob way. but theres other better ways to do it but im sure come one else will post the correct way for you but heres mine;

`var LockCode : int = 0:

function update() {

if (Input.GetKeyDown(“escape”)&& LockCode == 0 )
{

//Open Menu

LockCode = 1;

}

if (Input.GetKeyDown(“escape”)&& LockCode == 1 )
{

//Close Menu

LockCode = 0;

}

}
`

its my only quick and Nooby way of doin it./ hope you find this helpful or find a good idea what u can do. :slight_smile: