public void SetData(ProtoBattleVideoInfo data) { this.data = data; idText.text = data.uid_local + ""; countText.text = data.view_count + ""; versionText.text = "V." + data.war_version; string name = ""; for (int i = 0; i < data.fight_roles.Count; i++) { ProtoBattleVideoRoleInfo role = data.fight_roles[i]; name += role.role_info.name; if (i < data.fight_roles.Count - 1) { name += " VS "; } } nameText.text = name; createTimeText.text = DateTimeUtils.DateStringFromNow(data.create_time); }
void GenerateProtoBattleVideoRoleInfoList(WarOverData overData, List <ProtoBattleVideoRoleInfo> fight_roles) { Dictionary <int, ProtoFightRoleInfo> fightRoleInfoDict = new Dictionary <int, ProtoFightRoleInfo> (); int ownChangePrize = 0; if (War.endProto != null) { foreach (ProtoFightRoleInfo roleInfo in War.endProto.fight_roles) { Debug.Log("roleInfo.role_info.roleId=" + roleInfo.role_info.roleId); fightRoleInfoDict.Add(roleInfo.role_info.roleId, roleInfo); } ownChangePrize = War.endProto.prize - fightRoleInfoDict [War.ownLegionData.roleId].role_info.prize; } foreach (WarOverLegionData overLegionData in overData.legionDatas) { WarEnterLegionData enterLegionData = overData.enterData.GetEnterLegionData(overLegionData.legionId); if (enterLegionData == null) { Debug.LogFormat("<color=red>生成录像信息时 legionId={0} enterLegionData=null</color>", overLegionData.legionId); continue; } ProtoBattleVideoRoleInfo videoRole = new ProtoBattleVideoRoleInfo(); videoRole.end_type = (int)overLegionData.overType; videoRole.final_house = overLegionData.buildCount; videoRole.final_star = overLegionData.starCount; videoRole.change_prize = enterLegionData.legionId == War.ownLegionID ? ownChangePrize : -ownChangePrize; if (fightRoleInfoDict.ContainsKey(enterLegionData.roleId)) { ProtoFightRoleInfo protoFightRoleInfo = fightRoleInfoDict [enterLegionData.roleId]; videoRole.role_info = protoFightRoleInfo.role_info; videoRole.battle_info = protoFightRoleInfo.battle_info; videoRole.league_info = protoFightRoleInfo.league_info; videoRole.rank = protoFightRoleInfo.rank; protoFightRoleInfo.role_info.name = enterLegionData.name; } else { ProtoRoleBaseInfo roleBase = videoRole.role_info = new ProtoRoleBaseInfo(); roleBase.roleId = enterLegionData.roleId; roleBase.name = enterLegionData.name; roleBase.icon = enterLegionData.headAvatarId; ProtoRoleBattleInfo roleBattle = videoRole.battle_info = new ProtoRoleBattleInfo(); roleBattle.battle_soldier = enterLegionData.solider.avatarId; foreach (WarEnterHeroData enterHeroData in enterLegionData.heroList) { ProtoCardInfo card = new ProtoCardInfo(); card.card_id = enterHeroData.heroId; card.level = enterHeroData.level; roleBattle.battle_cards.Add(card); } } fight_roles.Add(videoRole); } }