Пример #1
0
 private void ShowCoaxSleepOnPlayAudioView(MyCoaxSleepAudioData data)
 {
     _onPlayAudioPanel = new CoaxSleepOnPlayAudioPanel();
     _onPlayAudioPanel.Init(this);
     _onPlayAudioPanel.Show(0f);
     _onPlayAudioPanel.GetCurData(data);
 }
    /// <summary>
    /// 打开下载进度窗口
    /// </summary>
    /// <param name="size"></param>
    private void OpenDownloadingWindow(double size, MyCoaxSleepAudioData data)
    {
        var downloadingWindow = PopupManager.ShowWindow <DownloadingWindow>(Constants.DownloadingWindowPath);

        downloadingWindow.Content  = I18NManager.Get("CoaxSleep_DownloadConfirm", size);
        downloadingWindow.Progress = I18NManager.Get("Download_Progress", 0);
        downloadingWindow.HindCancelBtn();
        string url       = GetData <CoaxSleepModel>().GetUrl(data.AudioId);
        string localPath = GetData <CoaxSleepModel>().GetLocalPath(data.AudioId);

        DownloadManager.Load(url, localPath,
                             (item =>
        {
            downloadingWindow.Close();
            SendMessage(new Message(MessageConst.CMD_CPAXSLEEP_SHOW_ON_PLAY_PANEL, data));
            SetUpdateLoadAudioData(data);
        }),
                             (item =>
        {
            Debug.LogError("OnLoadHotfixConfigError==>" + item.ErrorText + " Url->" + item.Url);
            FlowText.ShowMessage(item.ErrorText);
        }),
                             (f =>
        {
            int p = (int)(f * 100);
            downloadingWindow.Progress = I18NManager.Get("Download_Progress", p);
            downloadingWindow.SetProgress(p);
        }));
    }
Пример #3
0
    /// <summary>
    /// 初始化我的用户数据
    /// </summary>
    private void InitMyData()
    {
        _myUserData = new List <MyCoaxSleepAudioData>();

        foreach (var rule in _rules)
        {
            MyCoaxSleepAudioData data = new MyCoaxSleepAudioData(rule,
                                                                 GetUserInfoToPlayer(rule.Player), GetCoaxSleepAudioDescToAudioId(rule.AudioId));
            _myUserData.Add(data);
        }
    }
 /// <summary>
 /// 点击解锁按钮(通过消耗Gem)
 /// </summary>
 /// <param name="data"></param>
 private void OnClickUnlockToGem(MyCoaxSleepAudioData data)
 {
     _gemUnlockWindow = PopupManager.ShowWindow <GemUnlockWindow>("CoaxSleep/Prefabs/GemUnlockWindow");
     _gemUnlockWindow.SetData(data.Gem);
     _gemUnlockWindow.WindowActionCallback = evt =>
     {
         if (evt == WindowEvent.Ok)
         {
             SendCoaxSleepReq(data.AudioId);
         }
     };
 }
Пример #5
0
    public void SetData(MyCoaxSleepAudioData data, string localPath)
    {
        _data = data;

        _bg.texture = ResourceManager.Load <Texture>(data.OnPlayBgPath);
        _localPath  = localPath;

        _desc           = data.RetrospectDesc;
        _audioName.text = data.AudioName;


        SetAudio(data.AudioId);

        SetRightTime(_audioClip.length);
    }
    /// <summary>
    /// 下载资源
    /// </summary>
    private void DownLoadAudio(MyCoaxSleepAudioData data)
    {
        var curData = GetData <CoaxSleepModel>().GetLoadAudioJsonData(data.AudioId) ?? GetData <CoaxSleepModel>().GetServerAudioJsonData(data.AudioId);

        var size = Math.Round(curData.Size * 1f / 1048576f, 2);

        var window = ConfirmDownload(size);

        window.WindowActionCallback = evt =>
        {
            if (evt == WindowEvent.Ok)
            {
                OpenDownloadingWindow(size, data);
            }
        };
    }
    /// <summary>
    /// 点击播放按钮
    /// </summary>
    /// <param name="data"></param>
    private void OnPlayAudioBtn(MyCoaxSleepAudioData data)
    {
        //校验下是否发送请求
        var isSend = GetData <CoaxSleepModel>().IsSendReq(data.PlayerPb, data.AudioId);

        //校验是否需要下载资源
        var isDownLoad = GetData <CoaxSleepModel>().IsNeedDownload(data.AudioId);

        if (isSend)
        {
            SendCoaxSleepReq(data.AudioId);
        }

        if (!isDownLoad)
        {
            SendMessage(new Message(MessageConst.CMD_CPAXSLEEP_SHOW_ON_PLAY_PANEL, data));
        }
        else
        {
            DownLoadAudio(data);
        }
    }
Пример #8
0
    public void SetData(MyCoaxSleepAudioData data)
    {
        _data          = data;
        _bg.sprite     = ResourceManager.Load <Sprite>(data.ItemBgPath);
        _titleTxt.text = data.AudioName;
        _descTxt.text  = data.AudioDesc;
        _timeTxt.text  = data.PlayTimeStr;

        _playBtn.gameObject.Hide();
        _unlockBtn.gameObject.Hide();
        _atOnceUnlockBtn.gameObject.Hide();

        if (data.IsUnlock)
        {
            _playBtn.gameObject.Show();
            _playBtn.transform.Find("Red").gameObject.SetActive(!PlayerPrefs.HasKey("CoaxSleepId" + data.AudioId));
            if (data.IsOnlyGemUnlock)
            {
                _unlockTxt.text = I18NManager.Get("CoaxSleep_Unlock1", data.Gem) + data.UnlockTypeDesc;
            }
            else
            {
                _unlockTxt.text = I18NManager.Get("CoaxSleep_Unlock2", data.UnlockLoveNum, data.NpcName, data.Gem) + data.UnlockTypeDesc;
            }
        }
        else
        {
            if (data.IsOnlyGemUnlock)
            {
                _unlockTxt.text = I18NManager.Get("CoaxSleep_Unlock1", data.Gem);
                _unlockBtn.gameObject.Show();
            }
            else
            {
                _unlockTxt.text = I18NManager.Get("CoaxSleep_Unlock2", data.UnlockLoveNum, data.NpcName, data.Gem);
                _atOnceUnlockBtn.gameObject.Show();
            }
        }
    }
 private void SetUpdateLoadAudioData(MyCoaxSleepAudioData data)
 {
     GetData <CoaxSleepModel>().CheckUpdateAudioJsonData(data.AudioId);
 }
Пример #10
0
    public void GetCurData(MyCoaxSleepAudioData data)
    {
        var localPath = GetData <CoaxSleepModel>().GetLocalPath(data.AudioId);

        View.SetData(data, localPath);
    }
Пример #11
0
 public void GetCurData(MyCoaxSleepAudioData data)
 {
     _controller.GetCurData(data);
 }