AI补足注释(已经快看不懂了)
实现i18n 优化部分模块的逻辑以优化性能 修复物品展示框打开时按下ESC唤出暂停菜单但没有暂停的bug Signed-off-by: Eicy <im@crash.work>
This commit is contained in:
@@ -2,24 +2,34 @@
|
||||
|
||||
namespace UI
|
||||
{
|
||||
// 控制暂停按钮的类
|
||||
public class PauseButton : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private GameObject pauseMenu;
|
||||
[SerializeField] private GameObject pauseMenu; // 暂停菜单的游戏对象
|
||||
|
||||
private void Update()
|
||||
{
|
||||
if (Input.GetKeyDown(KeyCode.Escape))
|
||||
// 检测是否按下 Escape 键并且游戏未暂停
|
||||
if (Input.GetKeyDown(KeyCode.Escape) && Time.timeScale != 0)
|
||||
{
|
||||
Pause();
|
||||
Cursor.lockState = CursorLockMode.None;
|
||||
Pause(); // 调用暂停方法
|
||||
UnlockCursor(); // 解锁鼠标光标
|
||||
}
|
||||
}
|
||||
|
||||
// 暂停游戏的方法
|
||||
public void Pause()
|
||||
{
|
||||
pauseMenu.SetActive(true);
|
||||
Time.timeScale = 0;
|
||||
gameObject.SetActive(false);
|
||||
pauseMenu.SetActive(true); // 显示暂停菜单
|
||||
Time.timeScale = 0; // 将时间缩放设置为 0,暂停游戏
|
||||
gameObject.SetActive(false); // 隐藏暂停按钮
|
||||
}
|
||||
|
||||
// 解锁鼠标光标的方法
|
||||
private void UnlockCursor()
|
||||
{
|
||||
Cursor.lockState = CursorLockMode.None; // 设置光标状态为解锁
|
||||
Cursor.visible = true; // 确保光标可见
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2,40 +2,46 @@
|
||||
|
||||
namespace UI
|
||||
{
|
||||
// 控制暂停面板的类
|
||||
public class PausePanel : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private GameObject pauseButton;
|
||||
[SerializeField] private GameObject pauseButton; // 暂停按钮的游戏对象
|
||||
|
||||
private void Start()
|
||||
{
|
||||
Time.timeScale = 1;
|
||||
gameObject.SetActive(false);
|
||||
Time.timeScale = 1; // 确保游戏开始时时间流动
|
||||
gameObject.SetActive(false); // 初始时隐藏暂停面板
|
||||
}
|
||||
|
||||
|
||||
private void Update()
|
||||
{
|
||||
// 检测是否按下 Escape 键以继续游戏
|
||||
if (Input.GetKeyDown(KeyCode.Escape))
|
||||
{
|
||||
Continue();
|
||||
Continue(); // 调用继续游戏的方法
|
||||
}
|
||||
}
|
||||
|
||||
// 继续游戏的方法
|
||||
public void Continue()
|
||||
{
|
||||
pauseButton.SetActive(true);
|
||||
Time.timeScale = 1;
|
||||
Cursor.lockState = CursorLockMode.Locked;
|
||||
gameObject.SetActive(false);
|
||||
pauseButton.SetActive(true); // 显示暂停按钮
|
||||
Time.timeScale = 1; // 恢复游戏时间
|
||||
Cursor.lockState = CursorLockMode.Locked; // 锁定鼠标光标
|
||||
gameObject.SetActive(false); // 隐藏暂停面板
|
||||
}
|
||||
|
||||
// 退出游戏的方法
|
||||
public void Exit()
|
||||
{
|
||||
Application.Quit();
|
||||
Application.Quit(); // 退出应用程序
|
||||
}
|
||||
|
||||
// 返回主菜单的方法(可扩展)
|
||||
public void MainMenu()
|
||||
{
|
||||
Time.timeScale = 1;
|
||||
Time.timeScale = 1; // 确保时间流动恢复
|
||||
// todo 这里可以添加加载主菜单的逻辑
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user