|
@@ -98,6 +98,22 @@ namespace ET.Client
|
|
|
//StartSeek(p.X, p.Y, 0, null, false);
|
|
|
}
|
|
|
}
|
|
|
+ [Event]
|
|
|
+ public class SyncUnitHpEventHandler : BEvent<EventType.SyncUnitHpEvent>
|
|
|
+ {
|
|
|
+ protected override async ETTask OnEvent(SyncUnitHpEvent args)
|
|
|
+ {
|
|
|
+ if (GlobalViewMgr.Instance.HeadbarView.visible)
|
|
|
+ {
|
|
|
+ var unitRender = ModelViewComponent.Instance.GetChild<UnitRenderComponet>(args.Id);
|
|
|
+ if (unitRender != null)
|
|
|
+ {
|
|
|
+ unitRender.SyncHeadBarHP(args.Value);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ await ETTask.CompletedTask;
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
[FriendOf(typeof(UnitRenderComponet))]
|
|
|
public static class UnitRenerSystem
|
|
@@ -176,6 +192,20 @@ namespace ET.Client
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ public static void SyncHeadBarHP(this UnitRenderComponet self, float value, bool bTween = false)
|
|
|
+ {
|
|
|
+ if (self.HPBar != null)
|
|
|
+ {
|
|
|
+ if (bTween)
|
|
|
+ {
|
|
|
+ self.HPBar.TweenValue(value, 0.6f);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ self.HPBar.value = value;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
public static void PauseAnimation(this UnitRenderComponet self)
|
|
|
{
|
|
|
self.AniData.Pause();
|