创建一个场景一,主要是菜单功能实现开始游戏,结束游戏鼠标点击操作,开始游戏跳转到city的游戏场景,顺序一定是现有场景一,在场景city中按下 键盘Esc建会跳出弹窗提示确认退出游戏

场景一:菜单界面

1. 创建菜单界面

在 Unity 中创建一个 UI 界面,包含两个按钮:开始游戏结束游戏

  • 创建 UI:
    1. 在 Unity 编辑器中,右键点击 Hierarchy 窗口,选择 UI -> Canvas,创建一个画布。
    2. 在画布下,右键点击,选择 UI -> Button,创建两个按钮,分别命名为 StartGameButtonExitGameButton
    3. 修改按钮的文本内容,分别为“开始游戏”和“结束游戏”。
2. 创建按钮点击事件脚本

创建一个脚本 MenuManager.cs,并将其附加到画布上。

using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;

public class MenuManager : MonoBehaviour
{
    public Button startGameButton;
    public Button exitGameButton;

    void Start()
    {
        // 给按钮添加点击事件
        startGameButton.onClick.AddListener(StartGame);
        exitGameButton.onClick.AddListener(ExitGame);
    }

    void StartGame()
    {
        // 加载 City 场景
        SceneManager.LoadScene("City");
    }

    void ExitGame()
    {
        // 退出游戏
        Application.Quit();
    }
}
  • 说明:
    • SceneManager.LoadScene("City"); 用于加载名为 City 的场景。
    • Application.Quit(); 用于退出游戏。
3. 配置场景

在 Unity 中,确保你已经创建了两个场景:MenuCity

  • Build Settings 中(File -> Build Settings),将这两个场景添加到构建列表中。
  • 确保 Menu 场景是第一个加载的场景。

场景二:City 场景

1. 创建 City 场景

在 Unity 中创建一个新的场景,命名为 City

2. 创建退出确认弹窗

City 场景中,创建一个 UI 弹窗,用于提示用户是否退出游戏。

  • 创建弹窗:
    1. Hierarchy 窗口中,右键点击,选择 UI -> Panel,创建一个面板,命名为 ExitConfirmationPanel
    2. 在面板中,添加两个按钮:YesButtonNoButton,分别设置文本为“是”和“否”。
    3. 设置面板的初始状态为隐藏(例如,将面板的 active 属性设置为 false)。
3. 创建弹窗控制脚本

创建一个脚本 ExitConfirmationManager.cs,并将其附加到 ExitConfirmationPanel 上。

using UnityEngine;
using UnityEngine.UI;

public class ExitConfirmationManager : MonoBehaviour
{
    public Button yesButton;
    public Button noButton;

    void Start()
    {
        // 给按钮添加点击事件
        yesButton.onClick.AddListener(ConfirmExit);
        noButton.onClick.AddListener(CancelExit);
    }

    void ConfirmExit()
    {
        // 确认退出游戏
        Application.Quit();
    }

    void CancelExit()
    {
        // 取消退出,隐藏弹窗
        gameObject.SetActive(false);
    }
}
4. 捕获 Esc 键并显示弹窗

City 场景中,创建一个脚本 CityManager.cs,并将其附加到一个空的 GameObject 上。

using UnityEngine;

public class CityManager : MonoBehaviour
{
    public GameObject exitConfirmationPanel;

    void Update()
    {
        // 检测 Esc 键
        if (Input.GetKeyDown(KeyCode.Escape))
        {
            // 显示退出确认弹窗
            exitConfirmationPanel.SetActive(true);
        }
    }
}
  • 说明:
    • Input.GetKeyDown(KeyCode.Escape) 用于检测用户是否按下了 Esc 键。
    • exitConfirmationPanel.SetActive(true); 用于显示弹窗。

完整流程

  1. 启动游戏时加载 Menu 场景

    • 用户看到一个菜单界面,包含“开始游戏”和“结束游戏”按钮。
    • 点击“开始游戏”按钮,跳转到 City 场景。
    • 点击“结束游戏”按钮,直接退出游戏。
  2. 在 City 场景中

    • 用户按下 Esc 键,会弹出一个确认退出的弹窗。
    • 点击“是”,退出游戏。
    • 点击“否”,隐藏弹窗,继续游戏。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值