help with the pause menu script the update function make a low fps how to update once C#

public class EscToScaneMultiplayer : NetworkBehaviour {

public Texture2D cursorTexture;
public Texture2D cursorTexture2;
public CursorMode cursorMode = CursorMode.Auto;
public Vector2 hotSpot = Vector2.zero;
public GameObject Menu;
public GameObject SettingsLite;
public bool paused;

void Start () {
	paused = false;	
}

private void Update () 
{
	if (Input.GetKeyDown(KeyCode.Escape) || Input.GetKeyDown(KeyCode.JoystickButton6))
		paused = !paused;
	{
		Menu.SetActive (true);
	}
	if (paused)
	{
		Cursor.SetCursor (cursorTexture, hotSpot, cursorMode);
	}
	else if (!paused){
		Cursor.SetCursor (cursorTexture2, hotSpot, cursorMode);
		Menu.SetActive (false);
		SettingsLite.SetActive (false);
		Debug.Log ("dd");
	}
}

public void Pause()
{
	paused = !paused;

	if (paused)
	{
	}
	else if (!paused)
	{
	}
}

}

The code inside Update() has wrong syntax. You have an if statement:

if (Input.GetKeyDown(KeyCode.Escape) || Input.GetKeyDown(KeyCode.JoystickButton6))
         paused = !paused;

… and the outside the above if statement you have a block of code, which executes every frame unconditionally:

     {
         Menu.SetActive (true);
     }

… and then, another if/else block:

     if (paused)
     {
         Cursor.SetCursor (cursorTexture, hotSpot, cursorMode);
     }
     else if (!paused){
         Cursor.SetCursor (cursorTexture2, hotSpot, cursorMode);
         Menu.SetActive (false);
         SettingsLite.SetActive (false);
         Debug.Log ("dd");
     }

The logic isn’t quite clear, so I gave you a pointer. I suspect that you want the paused = !paused inside the “free-floating” block, so that Menu.SetActive (true); becomes part of the if block i.e.:

if (Input.GetKeyDown(KeyCode.Escape) || Input.GetKeyDown(KeyCode.JoystickButton6))
     {
         paused = !paused;
         Menu.SetActive (true);
     }

this is the good code

public class EscToScane : MonoBehaviour {

public Texture2D cursorTexture;
public Texture2D cursorTexture2;
public CursorMode cursorMode = CursorMode.Auto;
public Vector2 hotSpot = Vector2.zero;
public GameObject Menu;
public GameObject SettingsLite;
public bool paused;

void Start () {
	paused = false;	
}

void Update ()
{
	if (Input.GetKeyDown (KeyCode.Escape) || Input.GetKeyDown (KeyCode.JoystickButton6))
	{
		if (paused) 
		{
			Ypause ();
		} else 
		{
			Resume ();
		}
	}
}

public void Resume ()
{
	Time.timeScale = 0;
	Menu.SetActive (true);
	Cursor.SetCursor (cursorTexture, hotSpot, cursorMode);
	paused = true;
}
public void Ypause ()
{
	Time.timeScale = 1;
	Cursor.SetCursor (cursorTexture2, hotSpot, cursorMode);
	Menu.SetActive (false);
	SettingsLite.SetActive (false);
	paused = false;
}

}