20 lines
738 B
C#
20 lines
738 B
C#
namespace ET.Client
|
|
{
|
|
[MessageHandler(SceneType.Main)]
|
|
[FriendOf(typeof(HeroComponent))]
|
|
public class Hero_HeroInfoListHandler : MessageHandler<Scene, Hero_HeroInfoList>
|
|
{
|
|
protected override async ETTask Run(Scene scene, Hero_HeroInfoList message)
|
|
{
|
|
HeroComponent component = scene.GetComponent<HeroComponent>() ?? scene.AddComponent<HeroComponent>();
|
|
component.HeroMap.Clear();
|
|
foreach (HeroInfo hero in message.heroes)
|
|
{
|
|
component.HeroMap[hero.heroId] = hero;
|
|
}
|
|
EventSystem.Instance.Publish(scene, new HeroListUpdatedEvent { Count = message.heroes.Count });
|
|
await ETTask.CompletedTask;
|
|
}
|
|
}
|
|
}
|