示例#1
0
    /// <summary>
    /// 获取玩家对该NPC的信息,刷新界面数值
    /// </summary>
    /// <param name="favorable"></param>
    void GetNpcAndPlayerInfo(Favorable favorable)
    {
        npcFavorableValue.text    = favorable.NPC2PlayerValue.ToString();
        playerFavorableValue.text = favorable.Player2NPCValue.ToString();

        cardiacValue.text = favorable.cardiacValue.ToString();
    }
示例#2
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();
    }
示例#3
0
    void OnClick(Favorable favorable)
    {
        //打开页面
        ViewSwitchAnima();
        impulesNPCView.OpenView(favorable);

        Debug.Log($"男主id:{favorable.NPCId},对玩家的好感:{favorable.NPC2PlayerValue},玩家对男主的好感:{favorable.Player2NPCValue}");
    }
示例#4
0
 /// <summary>
 /// 属性赋值
 /// </summary>
 /// <param name="favorable"></param>
 public void FieldAssignment(Favorable favorable)
 {
     this.NPCId           = favorable.NPCId;
     this.NPC2PlayerValue = favorable.NPC2PlayerValue;
     this.Player2NPCValue = favorable.Player2NPCValue;
     this.cardiacValue    = favorable.cardiacValue;
     this.headPortrait    = favorable.headPortrait;
     this.NpcSetPainting  = favorable.NpcSetPainting;
 }
示例#5
0
    //显示界面 同时动画
    public void OpenView(Favorable favorable)
    {
        this.LastFavorableState.FieldAssignment(favorable);
        this.NewFavorableState.FieldAssignment(favorable);

        giftInfo.NpcID = favorable.NPCId;//记录礼物赠送的对象id
        //移动动画
        this.transform.DOLocalMoveX(ShowValue, moveAnimaTime);
        //刷新数值info
        GetNpcAndPlayerInfo(favorable);
        //选中
        PitchOnBtn();
        //刷新礼物列表
        ShowGiftList();
        //ShowPitchOn(uIImpulseComponent.ImpulseGiftGoods[0], giftList.content.GetChild(0).GetComponent<ImpulesGiftItem>());
        ShowPitchOn(uIImpulseComponent.ImpulseGiftGoods[0], giftList.content.GetChild(0).GetComponent <ImpulesGiftItem>());
    }
示例#6
0
    /// <summary>
    /// 刷新界面好感动画
    /// </summary>
    /// <param name="favorable"></param>
    void RefreshNpcAndPlayerInfoAnima(Favorable favorable)//TODO
    {
        //int npcLevel = CalculateFavorableLevel(favorable.NPC2PlayerValue);
        //npcFavorableLevel.text = $"Lv.{npcLevel.ToString()}";//npc好感等级
        //除去等级剩余经验
        //float curNPCExp = GetCurLevelEXP(favorable.NPC2PlayerValue, npcLevel);
        //npcFavorableValue.text = $"{curNPCExp}/{GetTotalExperience(npcLevel)}";//npc好感数值
        //npcExpBar.fillAmount = curNPCExp / GetTotalExperience(npcLevel);//npc经验条

        //int playerLevel = CalculateFavorableLevel(favorable.Player2NPCValue);
        //playerFavorableLevel.text = $"Lv.{playerLevel.ToString()}";//玩家好感等级
        //float curPlayerExp = GetCurLevelEXP(favorable.Player2NPCValue, playerLevel);//除去等级剩余经验
        //playerFavorableValue.text = $"{curPlayerExp}/{GetTotalExperience(playerLevel)}";//玩家好感数值
        //playerExpBar.fillAmount = curPlayerExp / GetTotalExperience(playerLevel);//玩家经验条
        npcFavorableValue.text    = favorable.NPC2PlayerValue.ToString();
        playerFavorableValue.text = favorable.Player2NPCValue.ToString();
        cardiacValue.text         = favorable.cardiacValue.ToString();
    }
示例#7
0
    /// <summary>
    /// 好感值存入缓存(外部初始化好感列表)章节用到
    /// </summary>
    public static void CacheFavorable()
    {
        List <Favorable> favorableList = new List <Favorable>();

        //好感列表赋初值
        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();

        ProtocalManager.Instance().SendCSEmptyFavorableInfo(cSEmptyFavorableInfo, (SCFavorableInfo FavorableInfo) =>
        {
            if (FavorableInfo != null)//赋保存后的值
            {
                foreach (var item in FavorableInfo.FavorableInfo)
                {
                    for (int i = 0; i < favorableList.Count; i++)
                    {
                        if (item.HeroId != favorableList[i].NPCId)
                        {
                            continue;
                        }
                        favorableList[i].NPC2PlayerValue = item.HeroPlayerValue;
                        favorableList[i].Player2NPCValue = item.PlayerHeroValue;
                        favorableList[i].cardiacValue    = favorableList[i].NPC2PlayerValue <= favorableList[i].Player2NPCValue ? favorableList[i].NPC2PlayerValue : favorableList[i].Player2NPCValue;
                    }
                }
            }
            StaticData.playerInfoData.favorableData = favorableList;//数据保存到本地
            Debug.Log("好感列表初始化成功");
        }, (ErrorInfo e) => { Debug.LogError("请求初始化好感请求失败"); });
    }