NLDClient-yudde/ProjectNLD/Assets/Code/Scripts/Gameplay/LegionBattle/Info/LegionMemberData.cs

71 lines
2.0 KiB
C#

using NLDPB;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace Gameplay.LegionBattle
{
/// <summary>
/// 军团战成员信息
/// </summary>
public sealed class LegionMemberData
{
/// <summary>
/// 角色id
/// </summary>
public uint ActorId { get; private set; }
/// <summary>
/// 头像图标索引
/// </summary>
public int HeadIconIndex { get; private set; }
/// <summary>
/// 名字
/// </summary>
public string Name { get; private set; }
/// <summary>
/// 等级
/// </summary>
public int Level { get; private set; }
/// <summary>
/// 队伍信息
/// </summary>
public List<LegionTeamInfo> ListTeamInfo { get; private set; }
/// <summary>
/// 角色信息
/// </summary>
public List<LegionCharacterInfo> ListCharacterInfo { get; private set; }
public LegionMemberData()
{
ListTeamInfo = new List<LegionTeamInfo>();
ListCharacterInfo = new List<LegionCharacterInfo>();
}
public void CopyData(MSG_LB_Member data)
{
ActorId = data.ActorId;
HeadIconIndex = (int)data.HeadIcon;
Name = data.Name;
Level = (int)data.Level;
for (int i = 0; i < data.Teams.Count; ++i)
{
if (ListTeamInfo.Count <= i)
{
ListTeamInfo.Add(new LegionTeamInfo());
}
ListTeamInfo[i].CopyInfo(data.Teams[i]);
}
for (int i = 0; i < data.Characters.Count; ++i)
{
if (ListCharacterInfo.Count <= i)
{
ListCharacterInfo.Add(new LegionCharacterInfo());
}
ListCharacterInfo[i].CopyInfo(data.Characters[i]);
}
}
}
}