Question by
TechnoWings · Jul 25, 2016 at 09:03 PM ·
c#scripting problembuttonsuser interface
How would i modify my current script to remove these UI buttons without killing my pause menu?
I'm using this script for c# and i cant get rid of the buttons in the top left corner without breaking my pause menu.
SCRIPT:
public class PauseGame : MonoBehaviour {
public Transform canvas;
public Transform player;
public CursorLockMode wantedMode;
void Start()
{
Cursor.lockState = CursorLockMode.Locked;
wantedMode = CursorLockMode.Locked;
}
// Update is called once per frame
void Update () {
if (Input.GetKeyDown(KeyCode.Escape))
{
Pause();
}
}
public void Pause()
{
if (canvas.gameObject.activeInHierarchy == false)
{
canvas.gameObject.SetActive(true);
Time.timeScale = 0;
player.GetComponent<camMouseLook>().enabled = false;
wantedMode = CursorLockMode.None;
}
else
{
canvas.gameObject.SetActive(false);
Time.timeScale = 1;
player.GetComponent<camMouseLook>().enabled = true;
wantedMode = CursorLockMode.Locked;
}
}
void SetCursorState()
{
Cursor.lockState = wantedMode;
// Hide cursor when locking
Cursor.visible = (CursorLockMode.Locked != wantedMode);
}
void OnGUI()
{
// Release cursor on escape keypress
if (Input.GetKeyDown(KeyCode.Escape))
Cursor.lockState = wantedMode = CursorLockMode.None;
switch (Cursor.lockState)
{
case CursorLockMode.None:
if (GUILayout.Button(""))
wantedMode = CursorLockMode.Locked;
if (GUILayout.Button(""))
wantedMode = CursorLockMode.Confined;
break;
case CursorLockMode.Confined:
if (GUILayout.Button(""))
wantedMode = CursorLockMode.Locked;
if (GUILayout.Button(""))
wantedMode = CursorLockMode.None;
break;
case CursorLockMode.Locked:
if (GUILayout.Button(""))
wantedMode = CursorLockMode.None;
if (GUILayout.Button(""))
wantedMode = CursorLockMode.Confined;
break;
}
SetCursorState();
}
Comment
Best Answer
Answer by Rodogs · Jul 26, 2016 at 07:44 AM
Deleting the whole switch should fix it.
switch (Cursor.lockState)
{
case CursorLockMode.None:
if (GUILayout.Button(""))
wantedMode = CursorLockMode.Locked;
if (GUILayout.Button(""))
wantedMode = CursorLockMode.Confined;
break;
case CursorLockMode.Confined:
if (GUILayout.Button(""))
wantedMode = CursorLockMode.Locked;
if (GUILayout.Button(""))
wantedMode = CursorLockMode.None;
break;
case CursorLockMode.Locked:
if (GUILayout.Button(""))
wantedMode = CursorLockMode.None;
if (GUILayout.Button(""))
wantedMode = CursorLockMode.Confined;
break;
}