public bool ReceiveOtherPlayerEntityViewRuneInfo(int nOtherPlayerId) { OtherActorRuneInfo otherInfo = LogicDataCenter.playerSystemDataManager.GetActorAllRune(nOtherPlayerId); if (otherInfo == null) { return(false); } // 再压出每个符文页的详细信息 int nRunePageCount = otherInfo.totalRune.nPageNum; if (nRunePageCount <= 0) { return(false); } this.nMaxSortIndex = nRunePageCount; for (int i = 0; i < nRunePageCount; ++i) { NewPagePointsItem(i + 1); if (uCurRunePageData == null) { continue; } if (i < 0 || i >= otherInfo.totalRunePage.Count) { continue; } cmd_Rune_Single_PageInfo data = otherInfo.totalRunePage[i]; for (int j = 0; j < data.nRuneGroove.Length; j++) { int nRuneId = data.nRuneGroove[j]; SetRunePagePointsInfo(j + 1, nRuneId, true); } if (data.sRunePageName == "") { uCurRunePageData.sTempName = "RunePage" + (i + 1); } else { uCurRunePageData.sTempName = data.sRunePageName; } this.SetRunePageChange(true); uCurRunePageData.SetSaveData(); this.SetRunePageChange(false); } return(true); }
public OtherActorRuneInfo GetActorAllRune(int actorID = nDefaultSelfActorID) { CheckGetSelfPDBID(ref actorID); OtherActorRuneInfo info = null; if (actorRune.TryGetValue(actorID, out info)) { return(info); } else { info = new OtherActorRuneInfo(); info.totalRune = new cmd_Rune_Info_Total(); info.totalRunePage = new List <cmd_Rune_Single_PageInfo>(); actorRune[actorID] = info; } RequestAllRune(actorID); return(info); }
public void UpdateAllRune(IntPtr ptrParam, int nPtrLen) { IntPtrVaArgParseHelper helper = new IntPtrVaArgParseHelper(ptrParam, nPtrLen); cmd_Rune_Info_Total runeInfo = helper.get <cmd_Rune_Info_Total>(); OtherActorRuneInfo info = null; if (actorRune.TryGetValue(runeInfo.dwActorID, out info) == false) { return; } info.totalRune = runeInfo; info.totalRunePage.Clear(); for (int i = 0; i < info.totalRune.nPageNum; ++i) { cmd_Rune_Single_PageInfo data = helper.get <cmd_Rune_Single_PageInfo>(); info.totalRunePage.Add(data); } UISystem.Instance.SendWndMessage(WndMsgID.WND_MSG_RUNEPAGE_INITOTHERRUNEDATA, null); }