31 lines
886 B
C#
31 lines
886 B
C#
using ET;
|
||
|
||
namespace ET
|
||
{
|
||
/// <summary>
|
||
/// 监视hp数值变化,改变血条值
|
||
/// </summary>
|
||
[NumericWatcher(NumericType.Hp)]
|
||
public class NumericWatcher_Hp : INumericWatcher
|
||
{
|
||
public async ETTask Run(Entity entity, float old, float value)
|
||
{
|
||
Log.Info($"@{entity.Id}改变 Hp:{old} -> {value}");
|
||
Unit unit = entity.As<Unit>();
|
||
Game.EventSystem.Publish_Sync(new ET.EventType.SetHudCharacter_ChangeHp
|
||
{
|
||
zoneScene=entity.ZoneScene(),
|
||
unit = unit,
|
||
});
|
||
Game.EventSystem.Publish_Sync(new ET.EventType.UpdateHeadInfo_ChangeHp
|
||
{
|
||
zoneScene = entity.ZoneScene(),
|
||
unit = unit,
|
||
old = old,
|
||
value = value
|
||
});
|
||
await ETTask.CompletedTask;
|
||
}
|
||
}
|
||
}
|