private bool IsDataReady(int nSelfID, int nReqID) { ActorPlayerInfo selfPlayerInfo = LogicDataCenter.playerSystemDataManager.GetActorPlayerInfo(nSelfID); ActorPlayerInfo reqPlayerInfo = LogicDataCenter.playerSystemDataManager.GetActorPlayerInfo(nReqID); ActorStatisticInfo selfStatisticInfo = LogicDataCenter.warStatisticDataManager.GetActorOverview(nSelfID); ActorStatisticInfo reqStatisticInfo = LogicDataCenter.warStatisticDataManager.GetActorOverview(nReqID); if (selfPlayerInfo.playerInfo.pDbid == 0 || reqPlayerInfo.playerInfo.pDbid == 0 || selfStatisticInfo.totalStatistic.nActorID == 0 || reqStatisticInfo.totalStatistic.nActorID == 0) { return(false); } return(true); }
public void InitHonorToShow() { int nActorID = LogicDataCenter.playerSystemDataManager.nRequestPDBID; ActorPlayerInfo info = LogicDataCenter.playerSystemDataManager.GetActorPlayerInfo(nActorID); if (info.playerInfo.pDbid == 0) { return; } honorInfo.arrGlory = info.playerInfo.nGlory; honorInfo.llWarID = info.playerInfo.llWarID; for (int i = 0; i < (int)ENACHIEVE.ENACHIEVE_KILLBIGDRAGONNUM; i++) { if (honorNumArray[i] == null) { continue; } honorNumArray[i].text = honorInfo.arrGlory[i].ToString(); if (i == (int)ENACHIEVE.ENACHIEVE_MVPNUM) { honorNumArray[i].text = honorInfo.arrGlory[i].ToString() + "次"; } } // 显示与数据对应 table[(int)SHOWINDEX.ENACHIEVE_KILLBIGDRAGONNUM] = (int)ENACHIEVE.ENACHIEVE_KILLBIGDRAGONNUM; table[(int)SHOWINDEX.ENACHIEVE_CONTINUEWINMAX] = (int)ENACHIEVE.ENACHIEVE_CONTINUEWINMAX; table[(int)SHOWINDEX.ENACHIEVE_KILLSMALLDRAGONNUM] = (int)ENACHIEVE.ENACHIEVE_KILLSMALLDRAGONNUM; table[(int)SHOWINDEX.ENACHIEVE_DAMAGEMAX] = (int)ENACHIEVE.ENACHIEVE_DAMAGEMAX; // 暂时没有ENACHIEVE_GOLDFIRST数据,将其映射为ENACHIEVE_ADDVALUE table[(int)SHOWINDEX.ENACHIEVE_GOLDFIRST] = (int)ENACHIEVE.ENACHIEVE_ADDVALUE; table[(int)SHOWINDEX.ENACHIEVE_KILLMONSTERMAX] = (int)ENACHIEVE.ENACHIEVE_KILLMONSTERMAX; table[(int)SHOWINDEX.ENACHIEVE_ONCEASSISTCOUNT] = (int)ENACHIEVE.ENACHIEVE_ONCEASSISTCOUNT; table[(int)SHOWINDEX.ENACHIEVE_KILLMAX] = (int)ENACHIEVE.ENACHIEVE_KILLMAX; table[(int)SHOWINDEX.ENACHIEVE_FIRSTKILLTOWERNUM] = (int)ENACHIEVE.ENACHIEVE_FIRSTKILLTOWERNUM; table[(int)SHOWINDEX.ENACHIEVE_SCOREMAX] = (int)ENACHIEVE.ENACHIEVE_SCOREMAX; table[(int)SHOWINDEX.ENACHIEVE_FIRSTDIENUM] = (int)ENACHIEVE.ENACHIEVE_FIRSTDIENUM; table[(int)SHOWINDEX.ENACHIEVE_CONTINUEKILLMAX] = (int)ENACHIEVE.ENACHIEVE_CONTINUEKILLMAX; table[(int)SHOWINDEX.ENACHIEVE_ASSISTMAX] = (int)ENACHIEVE.ENACHIEVE_ASSISTMAX; table[(int)SHOWINDEX.ENACHIEVE_KILLTOWETMAX] = (int)ENACHIEVE.ENACHIEVE_KILLTOWETMAX; table[(int)SHOWINDEX.ENACHIEVE_OUTMAX] = (int)ENACHIEVE.ENACHIEVE_OUTMAX; table[(int)SHOWINDEX.ENACHIEVE_TIMEMAX] = (int)ENACHIEVE.ENACHIEVE_TIMEMAX; table[(int)SHOWINDEX.ENACHIEVE_MONEYMAX] = (int)ENACHIEVE.ENACHIEVE_MONEYMAX; table[(int)SHOWINDEX.ENACHIEVE_TIMEMIN] = (int)ENACHIEVE.ENACHIEVE_TIMEMIN; SetHonorPage(curHonorPage); SetPageBtn(curHonorPage); }
private void OnRecvPlayerInfo() { int nActorID = LogicDataCenter.playerSystemDataManager.nRequestPDBID; ActorPlayerInfo info = LogicDataCenter.playerSystemDataManager.GetActorPlayerInfo(nActorID); if (info == null) { Debug.LogError("Actorinfo is invalid, ActorId = " + nActorID); return; } m_wndView.showPlayerInfo(info.playerInfo); m_wndView.showOftenUseHeroInfo(info.strongHeroInfoList); }
protected bool CustomPrecondition(TBTWorkingData wData) { bool result = false; if (m_nPlayerLevel == -1) { result = true; } else { ActorPlayerInfo info = LogicDataCenter.playerSystemDataManager.GetActorPlayerInfo(); result = info.playerInfo.nLv == m_nPlayerLevel; TLogger.PROFILE("判断当前玩家等级是否符合引导所需等级(" + m_nPlayerLevel + "):" + result); } return(result); }
private IEnumerator loginSNSServer() { ActorPlayerInfo selfPlayerInfo = new ActorPlayerInfo(); while (true) { selfPlayerInfo = LogicDataCenter.playerSystemDataManager.GetActorPlayerInfo(); if (selfPlayerInfo.playerInfo.pDbid <= 0) { yield return(new WaitForSeconds(0.5f)); } else { break; } } LogicDataCenter.snsDataManager.loginSNSServer(selfPlayerInfo); m_IsLogin = true; }
public override bool IsTrue(TBTWorkingData wData) { bool result = false; if (m_nPlayerLevel == -1) { result = true; } else { ActorPlayerInfo info = LogicDataCenter.playerSystemDataManager.GetActorPlayerInfo(); if (info.playerInfo.pDbid == 0) { return(false); } result = info.playerInfo.nLv <= m_nPlayerLevel; TLogger.PROFILE("判断当前玩家等级是否符合引导所需等级(" + m_nPlayerLevel + "):" + result); } return(result); }
public override void SetVisible(bool visible) { base.SetVisible(visible); if (m_wndView == null) { return; } if (visible) { int nActorID = LogicDataCenter.playerSystemDataManager.nRequestPDBID; ActorPlayerInfo info = LogicDataCenter.playerSystemDataManager.GetActorPlayerInfo(nActorID); if (info.playerInfo.pDbid != 0) { OnRecvPlayerInfo(); } } else { m_wndView.closeChildrenView(); UISystem.Instance.ShowWnd(WndID.WND_ID_PLAYER_HONORPAGE, false); } }
public void SetData() { ActorPlayerInfo selfPlayerInfo = LogicDataCenter.playerSystemDataManager.GetActorPlayerInfo(nSelfPDBID); ActorPlayerInfo reqPlayerInfo = LogicDataCenter.playerSystemDataManager.GetActorPlayerInfo(nReqPDBID); ActorStatisticInfo selfStatisticInfo = LogicDataCenter.warStatisticDataManager.GetActorOverview(nSelfPDBID); ActorStatisticInfo reqStatisticInfo = LogicDataCenter.warStatisticDataManager.GetActorOverview(nReqPDBID); if (selfPlayerInfo.playerInfo.pDbid == 0 || reqPlayerInfo.playerInfo.pDbid == 0 || selfStatisticInfo.totalStatistic.nActorID == 0 || reqStatisticInfo.totalStatistic.nActorID == 0) { return; } // 设置玩家数据 selfPlayerView.SetWndView(this); reqPlayerView.SetWndView(this); selfPlayerView.SetPlayerInfo(selfPlayerInfo.playerInfo); reqPlayerView.SetPlayerInfo(reqPlayerInfo.playerInfo); // 设置战绩数据 selfStatisticView.SetWndView(this); reqStatisticView.SetWndView(this); HeroTypeNumCount(selfStatisticInfo.totalStatisticWar, ref selfDict); selfStatisticView.SetStatisticInfo(selfStatisticInfo.totalStatistic, selfDict); HeroTypeNumCount(reqStatisticInfo.totalStatisticWar, ref reqDict); reqStatisticView.SetStatisticInfo(reqStatisticInfo.totalStatistic, reqDict); // 设置英雄数据 SetOftenUseHeroInfo(selfPlayerInfo.strongHeroInfoList, selfHeroGroup, selfHeroInsRes, nSelfPDBID, true); SetOftenUseHeroInfo(reqPlayerInfo.strongHeroInfoList, reqHeroGroup, reqHeroInsRes, nReqPDBID, false); // 设置PK赢标志 selfWinPro.SetActive(true); reqWinPro.SetActive(true); if (selfPlayerView.nFightCap < reqPlayerView.nFightCap) { selfFightCap.SetActive(false); } else if (selfPlayerView.nFightCap > reqPlayerView.nFightCap) { reqFightCap.SetActive(false); } selfWinPro.SetActive(true); reqWinPro.SetActive(true); if (selfPlayerView.nWinPro < reqPlayerView.nWinPro) { selfWinPro.SetActive(false); } else if (selfPlayerView.nWinPro > reqPlayerView.nWinPro) { reqWinPro.SetActive(false); } selfKDA.SetActive(true); reqKDA.SetActive(true); if (selfStatisticInfo.totalStatistic.nRecentKDAScore < reqStatisticInfo.totalStatistic.nRecentKDAScore) { selfKDA.SetActive(false); } else if (selfStatisticInfo.totalStatistic.nRecentKDAScore > reqStatisticInfo.totalStatistic.nRecentKDAScore) { reqKDA.SetActive(false); } }
public void SetData(UListWarMainModeItem item) { HeadIcon.sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_WarMainMode, WndID.WND_ID_WAR_MAIN_FRAME, item.nModeID); if (HeadIcon.sprite == null) { HeadIcon.gameObject.SetActive(false); } else { HeadIcon.gameObject.SetActive(true); } RankInvalidFrame.gameObject.SetActive(false); RankFrame.gameObject.SetActive(false); RankTipBtn.gameObject.SetActive(false); RankStarFrame.gameObject.SetActive(false); if (item.nModeID == (int)EWarModeDef.MODE_RankVS) { RankTipBtn.gameObject.SetActive(true); // 自己是否有排位信息 int nMatchType = EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_MATCHTYPE); int nRankScore = EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_RANKSCORE); int nRankGrade = EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_RANKGRADE); int nRankIconID = GameLogicAPI.getRankIconIDByGrade(nMatchType, nRankGrade); int nRankStar = GameLogicAPI.getActorRankStar(nMatchType, nRankScore); int nMaxRankStar = GameLogicAPI.getActorCurRankMaxStar(nMatchType, nRankScore); IntPtr ptr = GameLogicAPI.getActorRankNameByGrade(nMatchType, nRankGrade); string strRankName = ""; if (ptr != IntPtr.Zero) { strRankName = IntPtrHelper.Ptr2Str(ptr); } RankImg.sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_RankImage, WndID.WND_ID_WAR_MAIN_FRAME, 1, nRankIconID); if (RankImg.sprite == null || nRankScore <= 0) { RankInvalidFrame.gameObject.SetActive(true); RankFrame.gameObject.SetActive(false); } else { RankStarFrame.gameObject.SetActive(true); for (int index = 0; index < RankStarFrame.childCount; ++index) { if (nRankStar > 0) { RankStarFrame.GetChild(index).GetComponent <Image>().sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_RankStarImage, WndID.WND_ID_WAR_MAIN_FRAME, 2); nRankStar--; nMaxRankStar--; } else if (nMaxRankStar > 0) { RankStarFrame.GetChild(index).GetComponent <Image>().sprite = USpriteManager.Instance.GetSprite(USpriteManager.ESpriteType.EST_RankStarImage, WndID.WND_ID_WAR_MAIN_FRAME, 1); nMaxRankStar--; } else { RankStarFrame.GetChild(index).GetComponent <Image>().gameObject.SetActive(false); } } RankInvalidFrame.gameObject.SetActive(false); RankFrame.gameObject.SetActive(true); // 设置胜场 胜率 段位描述 星级 ActorPlayerInfo info = LogicDataCenter.playerSystemDataManager.GetActorPlayerInfo(); int WinRate = info.playerInfo.nRankMatchNum > 0? (info.playerInfo.nRankWinNum * 100 / info.playerInfo.nRankMatchNum): 0; RankDetailDes.text = String.Format("{0}:", ULocalizationService.Instance.Get("UIView", "WarStatistic", "MapWinCount")) + info.playerInfo.nRankWinNum + " " + String.Format("{0}:", ULocalizationService.Instance.Get("UIView", "WarStatistic", "MapWinRate")) + WinRate + "%"; RankGradeDes.text = strRankName; RankScore.text = "" + nRankScore; if (m_RankEffectParam != null) { UEffectManager.Instance.DestroyEffect(UEffectType.UET_EffectPrefab, ref m_RankEffectParam); m_RankEffectParam = null; } int nOffset = info.playerInfo.nRankIconID - 1; if (nOffset >= 0) { UEffectParamBase param = new UEffectPrefabParam(_eType: UEffectPrefabType.UEPT_WarMain_RankEffect1 + nOffset, _tfAttachParent: this.RankImg.transform); UEffectManager.Instance.CreateEffect(UEffectType.UET_EffectPrefab, ref param); m_RankEffectParam = param; UEffectPrefabParam paramPrefab = (UEffectPrefabParam)param; paramPrefab.EffectGameObject.transform.SetAsFirstSibling(); } } } // 隐藏模式详细描述 以及 图片 ModeDesText.text = item.strModeDesc; ModeDesText.gameObject.SetActive(false); // 设置tooltip //m_tooltip = this.gameObject.AddComponent<UTooltipTrigger>(ETooltipStyle.ETS_Default); //if (m_tooltip) //{ // string stTitleDesc = item.strModeTooltip; // UBB.toHtml(ref stTitleDesc, UBB_FORMAT_TYPE.UGUI); // m_tooltip.SetText(UTooltipParamName.BodyText, "<color=#FFFFFFFF><size=20>" + stTitleDesc + "</size></color>"); // m_tooltip.tipPosition = TipPosition.MouseTopRightCorner; // m_tooltip.backgroundTint.a = 0; //} if (m_OpenEffectParam != null) { UEffectManager.Instance.DestroyEffect(UEffectType.UET_EffectPrefab, ref m_OpenEffectParam); m_OpenEffectParam = null; } if (item.bOpenEffect) { UEffectParamBase param = new UEffectPrefabParam(_eType: UEffectPrefabType.UEPT_WarMain_CanJoinEffect, _tfAttachParent: this.HeadIcon.transform); UEffectManager.Instance.CreateEffect(UEffectType.UET_EffectPrefab, ref param); m_OpenEffectParam = param; UEffectPrefabParam paramPrefab = (UEffectPrefabParam)param; paramPrefab.EffectGameObject.transform.SetAsFirstSibling(); } ItemData = item; #region 新手引导部分 if (!item.bUseGuideWidget) { gameObject.RemoveComponent <Guide.UGuideWidget>(); } else { Guide.UGuideWidget guideWidget = gameObject.GetComponent <Guide.UGuideWidget>(); if (guideWidget == null) { guideWidget = this.gameObject.AddComponent <Guide.UGuideWidget>(); } guideWidget.GuideID = (GUIDE.EGuideNodeID)item.GuideWidgetData.nGuideID; guideWidget.GuideStepID = item.GuideWidgetData.nGuideStepID; guideWidget.GuideEffectID = item.GuideWidgetData.nGuideEffectID; guideWidget.IsForceGuide = item.GuideWidgetData.bForeceGuide; } #endregion }
public void OnCommand_UpdateNumProp(EntityNumPropEventArgs e) { if (e.objev == null || !e.objev.IsHero) { return; } switch (e.data.nPropID) { case (int)ENTITY_PROPERTY.PROPERTY_SEX: { int nSex = EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_SEX); actorInfo.HeadIcon.sprite = GetActorIcon(nSex + 1); } break; case (int)ENTITY_PROPERTY.PROPERTY_RANKGRADE: case (int)ENTITY_PROPERTY.PROPERTY_RANKSCORE: { int nMatchType = EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_MATCHTYPE); int nRankScore = EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_RANKSCORE); int nRankGrade = EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_RANKGRADE); int nRankIcon = GameLogicAPI.getRankIconIDByGrade(nMatchType, nRankGrade); IntPtr ptr = GameLogicAPI.getActorRankNameByGrade(nMatchType, nRankGrade); string strRankName = ""; if (ptr != IntPtr.Zero) { strRankName = IntPtrHelper.Ptr2Str(ptr); } // 更新下本地的PlayerDataManager数据 这里是个坑 以前不是实时更新的 ActorPlayerInfo info = LogicDataCenter.playerSystemDataManager.GetActorPlayerInfo(); if (info.playerInfo.pDbid > 0) { info.playerInfo.nRankScore = nRankScore; info.playerInfo.nRankIconID = nRankIcon; info.playerInfo.chRankName = strRankName; } if (nRankIcon > 0) { actorInfo.RankIcon.gameObject.SetActive(true); actorInfo.RankIcon.sprite = GetActorRankIcon(nRankIcon); } else { actorInfo.RankIcon.gameObject.SetActive(false); } } break; case (int)ENTITY_PROPERTY.PROPERTY_LEVEL: { int nLevel = EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_LEVEL); actorInfo.Lv.text = nLevel.ToString(); } break; case (int)ENTITY_PROPERTY.PROPERTY_TICKET: { int nPoint = EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_TICKET); actorInfo.PointNum.text = nPoint.ToString(); } break; case (int)ENTITY_PROPERTY.PROPERTY_GOLD: { int nGold = EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_GOLD); actorInfo.BindGoldNum.text = nGold.ToString(); } break; default: break; } }
// 设置炫耀类型数据,需带warID public void SetDisplayTypeData() { if (m_nSubType != (int)ENTASK_SUB_TYPE.ENTASK_DISPLAY) { return; } if (EntityFactory.MainHeroView == null) { return; } int nPDBID = EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_ID); ActorPlayerInfo info = LogicDataCenter.playerSystemDataManager.GetActorPlayerInfo(nPDBID); if (info.playerInfo.pDbid == 0) { return; } cmd_honor_page_info honorInfo; honorInfo.arrGlory = info.playerInfo.nGlory; honorInfo.llWarID = info.playerInfo.llWarID; int nIndex = 0; bool bFind = false;// 5杀、4杀、3杀中选择一个 // 显示 for (int i = 0; i < m_listTaskConfig.Count && nIndex < ListSpecificType.Length; i++) { switch (m_listTaskConfig[i].nSpecificType) { case (int)ENTASK_SPECIFIC_TYPE.ENTASK_DISPLAY_5KILL: { if (bFind) { continue; } if (honorInfo.arrGlory[(int)ENACHIEVE.ENACHIEVE_5KILLNUM] > 0 && honorInfo.llWarID[(int)ENACHIEVE.ENACHIEVE_5KILLNUM] > 0) { ListSpecificType[nIndex].SetData(m_listTaskConfig[i], honorInfo.llWarID[(int)ENACHIEVE.ENACHIEVE_5KILLNUM]); nIndex++; bFind = true; } } break; case (int)ENTASK_SPECIFIC_TYPE.ENTASK_DISPLAY_4KILL: { if (bFind) { continue; } if (honorInfo.arrGlory[(int)ENACHIEVE.ENACHIEVE_4KILLNUM] > 0 && honorInfo.llWarID[(int)ENACHIEVE.ENACHIEVE_4KILLNUM] > 0) { ListSpecificType[nIndex].SetData(m_listTaskConfig[i], honorInfo.llWarID[(int)ENACHIEVE.ENACHIEVE_4KILLNUM]); nIndex++; bFind = true; } } break; case (int)ENTASK_SPECIFIC_TYPE.ENTASK_DISPLAY_3KILL: { if (bFind) { continue; } if (honorInfo.arrGlory[(int)ENACHIEVE.ENACHIEVE_3KILLNUM] > 0 && honorInfo.llWarID[(int)ENACHIEVE.ENACHIEVE_3KILLNUM] > 0) { ListSpecificType[nIndex].SetData(m_listTaskConfig[i], honorInfo.llWarID[(int)ENACHIEVE.ENACHIEVE_3KILLNUM]); nIndex++; bFind = true; } } break; case (int)ENTASK_SPECIFIC_TYPE.ENTASK_DISPLAY_SuperGod: { if (honorInfo.arrGlory[(int)ENACHIEVE.ENACHIEVE_SUPERGODNUM] > 0 && honorInfo.llWarID[(int)ENACHIEVE.ENACHIEVE_SUPERGODNUM] > 0) { ListSpecificType[nIndex].SetData(m_listTaskConfig[i], honorInfo.llWarID[(int)ENACHIEVE.ENACHIEVE_SUPERGODNUM]); nIndex++; } } break; case (int)ENTASK_SPECIFIC_TYPE.ENTASK_DISPLAY_MVP: { if (honorInfo.arrGlory[(int)ENACHIEVE.ENACHIEVE_MVPNUM] > 0 && honorInfo.llWarID[(int)ENACHIEVE.ENACHIEVE_MVPNUM] > 0) { ListSpecificType[nIndex].SetData(m_listTaskConfig[i], honorInfo.llWarID[(int)ENACHIEVE.ENACHIEVE_MVPNUM]); nIndex++; } } break; default: break; } } // 隐藏 if (nIndex < ListSpecificType.Length) { for (int i = nIndex; i < ListSpecificType.Length; i++) { ListSpecificType[i].Clear(); } } // 发布说明 if (nIndex == 0) { PublishTip.text = ULocalizationService.Instance.Get("UIView", "Task", "NoMatchPublishType"); } else { PublishTip.text = ULocalizationService.Instance.Get("UIView", "Task", "SelectSubType"); } }