Example #1
0
    /// <summary>
    /// 获取服务器上的一些数据
    /// </summary>
    void GetServerInfo()
    {
        if (StaticData.playerInfoData.favorableData.Count <= 0)//如果本地没有数据就请求并记录本地  只请求一次
        {
            //默认值(配置表里的数据)
            foreach (var item in StaticData.configExcel.HallRole)
            {
                if (!item.isImpulseRole)
                {
                    continue;                     //如果不是心动时刻的角色就下一个
                }
                Favorable favorable = new Favorable();
                favorable.NPCId          = item.ID;
                favorable.NpcSetPainting = item.SetPainting;
                favorable.headPortrait   = item.HeadPortraitImage;
                favorableList.Add(favorable);
            }

            CSEmptyFavorableInfo cSEmptyFavorableInfo = new CSEmptyFavorableInfo();
            //bool receive = false;等待返回
            ProtocalManager.Instance().SendCSEmptyFavorableInfo(cSEmptyFavorableInfo, (SCFavorableInfo FavorableInfo) =>
            {
                Init(FavorableInfo);
                StaticData.playerInfoData.favorableData = favorableList;//数据保存到本地
            }, (ErrorInfo e) => { Debug.Log("请求失败"); });
            //await UniTask.WaitUntil(()=>receive==true);
        }
        else
        {
            Debug.Log("本地已缓存好感数据");
            favorableList = StaticData.playerInfoData.favorableData;
            impulesMainView.OpenView(favorableList);
        }
        //JoinViewRefreshGift();
    }