Esempio n. 1
0
    public void LoadScene(int levelId, Action callback = null)
    {
        PlayerData.Instance.CurPlayerInfo.CurLevelId = levelId;
        string     levelName  = "Level_" + levelId;
        var        levelCfg   = LevelConfig.GetData(levelId);
        UICallBack uiCallback = (args) =>
        {
            SceneManager.LoadScene(levelName);
            if (!string.IsNullOrEmpty(levelCfg.BGM))
            {
                AudioManager.Instance.PlayBGM(levelCfg.BGM);
            }
            callback?.Invoke();
            UIManager.Instance.CloseWindow <UILoadingWindow>();
        };

        UIManager.Instance.OpenWindow <UILoadingWindow>(true, uiCallback);
    }
Esempio n. 2
0
    public void Init(int index, PlayerInfo info)
    {
        Button_DeleteArchive.onClick.RemoveAllListeners();
        Button_ClickArchive.onClick.RemoveAllListeners();
        _index = index;
        _info  = info;
        if (info == null)
        {
            Button_DeleteArchive.gameObject.SetActive(false);
            Text_LevelName.text    = "";
            Image_Level.sprite     = null;
            Text_PlayTimeLong.text = "";
            GameObject_NullArchive.SetActive(true);
        }
        else
        {
            if (_index != info.SaveId)
            {
                throw new System.Exception("存档位置不匹配");
            }
            Button_DeleteArchive.gameObject.SetActive(true);
            AddButtonListen(Button_DeleteArchive, OnClickButtonDeletePlayerInfo);

            int hours = _info.GameTimeMinutes / 60;
            if (hours > 0)
            {
                int minutes = (_info.GameTimeMinutes - hours * 60);
                Text_PlayTimeLong.text = hours + "h:" + minutes + "m";
            }
            else
            {
                Text_PlayTimeLong.text = _info.GameTimeMinutes + "m";
            }
            LevelConfig levelCfg = LevelConfig.GetData(info.CurLevelId);
            Image_Level.sprite  = ResourceManager.Load <Sprite>("Sprites/" + levelCfg.TitleIcon);
            Text_LevelName.text = levelCfg.Name;
            GameObject_NullArchive.SetActive(false);
        }
        AddButtonListen(Button_ClickArchive, OnClickButtonEnterGame);
    }