16 lines
613 B
C#

namespace ET.Client
{
[MessageHandler(SceneType.Main)]
[FriendOf(typeof(HeroComponent))]
public class Hero_HeroInfoHandler : MessageHandler<Scene, Hero_HeroInfo>
{
protected override async ETTask Run(Scene scene, Hero_HeroInfo message)
{
HeroComponent component = scene.GetComponent<HeroComponent>() ?? scene.AddComponent<HeroComponent>();
component.HeroMap[message.hero.heroId] = message.hero;
EventSystem.Instance.Publish(scene, new HeroUpdatedEvent { HeroId = message.hero.heroId });
await ETTask.CompletedTask;
}
}
}