Unity - A计划(永久有效期) 扫二维码继续学习 二维码时效为半小时

(207评价)
优惠后 ¥1899.00优惠前 ¥2499.00 双十一全年最大力度限时优惠
1对1 答疑即时回复7天无理由退款30天价保提问必答

服务保障

1对1 答疑

提供专属的一对一在线答疑,快速答疑解惑。

即时回复

及时响应学习咨询,帮助解决问题。

7天无理由退款

购买后7天内可申请无理由退款。

30天价保

购买后30天内如遇降价,可申请价保。

提问必答

对于提问做到有问必答,帮您扫清学习过程中的种种障碍

单例模式 切换场景的时候 使用报空
Lemonsuan发起了问答2021-10-05
2
回复
834
浏览
    private static T instance;

    public static T Instance
    {
        get => instance;
    }

    protected virtual void Awake()
    {
        if (instance != null)
            Destroy(gameObject);
        else
            instance = (T)this;
    }

 

    private void LateUpdate()
    {
        print(GameManager.Instance);
        txt_Lv.text = "Level    "+  GameManager.Instance.playerStates.characterData.curLv.ToString("00");
        UpdateExp();
        UpdateHP();
    }

 

所有回复
  • Lemonsuan • 2021-10-05

    场景有两个Manager的时候才会报错

    还有-5条回复,点击查看
    你还没有登录,请先登录或注册!
  • 老师_Trigger • 2021-10-06

    同学你好,切换时可以使用 if(GameManager.Instance==null)Instantiate(gamenagerGo) 来判断场景里有没有管理,有的话不生成就不会多次生成了,另外awake中的destory方法不用写,只使用第一次生成的就可以了

    还有-5条回复,点击查看
    你还没有登录,请先登录或注册!
发表回复
你还没有登录,请先 登录或 注册!