imperfect-space/scripts/GameControlManager.cs

41 lines
584 B
C#

using Godot;
public partial class GameControlManager : Node
{
[Export] Control GameMenu;
public override void _Ready()
{
Input.MouseMode = Input.MouseModeEnum.Captured;
}
public override void _Input(InputEvent @event)
{
if (@event.IsActionPressed("ui_cancel"))
{
if (GameMenu.Visible)
{
HideMenu();
}
else
{
ShowMenu();
}
return;
}
}
public void ShowMenu()
{
GameMenu.Show();
Input.MouseMode = Input.MouseModeEnum.Visible;
}
public void HideMenu()
{
GameMenu.Hide();
Input.MouseMode = Input.MouseModeEnum.Captured;
}
}