17.游戏退出界面

17.游戏场景-游戏退出界面


17.1 知识点

游戏退出界面要做的事

游戏退出界面应该提供以下功能:

  1. 提供一个按钮用于退出游戏,点击该按钮后返回到主界面。
  2. 提供一个按钮用于继续游戏,点击该按钮后关闭游戏退出界面,继续游戏。
  3. 提供一个按钮用于关闭游戏退出界面,点击该按钮后关闭游戏退出界面。

创建游戏退出界面空物体,拼接游戏退出界面


创建游戏退出界面脚本,挂载到游戏退出界面空物体上

//游戏退出面板
public class QuitPanel : BasePanel<QuitPanel>
{
    //关联组件
    public CustomGUIButton btnQuit;
    public CustomGUIButton btnGoOn;
    public CustomGUIButton btnClose;
    
    void Start()
    {
        //添加的监听
        btnQuit.clickEvent += () =>
        {
            //回到主界面
            SceneManager.LoadScene("BeginScene");
        };

        //继续游戏 和 叉叉 都是 关闭当前面板
        btnGoOn.clickEvent += () =>
        {
            HideMe();
        };

        btnClose.clickEvent += () =>
        {
            HideMe();
        };

        //一来就隐藏自己
        HideMe();
    }
}

游戏主面板中,点击设置面板或退出面板时暂停游戏

//监听界面上的一些控件操作事件
btnSetting.clickEvent += () =>
{
    //目前没有设置面板 暂时空着
    //打开设置面板
    SettingPanel.Instance.ShowMe();

    //改变时间 缩放值 为0就是时间停止
    Time.timeScale = 0;
};

btnQuit.clickEvent += () =>
{
    //返回我们的游戏界面
    //弹出一个确定退出的按钮 
    QuitPanel.Instance.ShowMe();

    //改变时间 缩放值 为0就是时间停止
    Time.timeScale = 0;
};

游戏退出界面重写隐藏自己方法,让时间流速恢复正常

public override void HideMe()
{
    base.HideMe();
    Time.timeScale = 1;
}

17.2 知识点代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;

//游戏退出面板
public class QuitPanel : BasePanel<QuitPanel>
{
    //关联组件
    public CustomGUIButton btnQuit;
    public CustomGUIButton btnGoOn;
    public CustomGUIButton btnClose;
    
    void Start()
    {
        //添加的监听
        btnQuit.clickEvent += () =>
        {
            //回到主界面
            SceneManager.LoadScene("BeginScene");
        };

        //继续游戏 和 叉叉 都是 关闭当前面板
        btnGoOn.clickEvent += () =>
        {
            HideMe();
        };

        btnClose.clickEvent += () =>
        {
            HideMe();
        };

        //一来就隐藏自己
        HideMe();
    }

    public override void HideMe()
    {
        base.HideMe();
        Time.timeScale = 1;
    }
}


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com

×

喜欢就点赞,疼爱就打赏