using System; using System.Collections; using System.Collections.Generic; using UnityEngine; namespace vnxbqy.UI { //本服和跨服活动的组合 //1. 参与时分由跨服活动决定, 骑宠养成不做本服个人榜 public class OperationPetHorse : OperationBase { public Dictionary rankInfo = new Dictionary(); //根据排名显示奖励 从1开始 本服个人榜 public int maxRank; //根据奖励显示最大排名 public int m_ShopType; // 开放商店类型,可能为0不开放 public override void Reset() { base.Reset(); rankInfo.Clear(); } public override string ToDisplayTime() { var textBuilder = OperationTimeHepler.textBuilder; textBuilder.Length = 0; textBuilder.Append(startDate.ToDisplay(false)); if (startDate != endDate) { textBuilder.Append(" - "); textBuilder.Append(endDate.ToDisplay(false)); } return textBuilder.ToString(); } public void ParseHorsePetTrainInfo(HAA84_tagMCActHorsePetTrainInfo netPack) { m_ShopType = netPack.ShopType; rankInfo.Clear(); maxRank = 0; for (int i = 0; i < netPack.PersonalBillboardInfoList.Length; i++) { List items = new List(); for (int j = 0; j < netPack.PersonalBillboardInfoList[i].AwardItemList.Length; j++) { items.Add(new Item((int)netPack.PersonalBillboardInfoList[i].AwardItemList[j].ItemID, netPack.PersonalBillboardInfoList[i].AwardItemList[j].ItemCount, netPack.PersonalBillboardInfoList[i].AwardItemList[j].IsBind)); } //仅处理一档额外奖励 List itemsEx = new List(); var awardsEx = netPack.PersonalBillboardInfoList[i].AwardItemExList; int needScoreEx = 0; if (awardsEx.Length != 0) { for (int j = 0; j < awardsEx[0].AwardItemList.Length; j++) { itemsEx.Add(new Item((int)awardsEx[0].AwardItemList[j].ItemID, awardsEx[0].AwardItemList[j].ItemCount, awardsEx[0].AwardItemList[j].IsBind)); } needScoreEx = (int)awardsEx[0].NeedScore; } rankInfo[(int)netPack.PersonalBillboardInfoList[i].Rank] = new ActBillboardAwards() { needScore = (int)netPack.PersonalBillboardInfoList[i].NeedScore, awardItemList = items, awardItemListEx = itemsEx, needScoreEx = needScoreEx, }; maxRank = Math.Max(maxRank, (int)netPack.PersonalBillboardInfoList[i].Rank); } } } }