22 lines
669 B
C#
22 lines
669 B
C#
|
using ET;
|
|||
|
|
|||
|
namespace ET
|
|||
|
{
|
|||
|
[NumericWatcher(NumericType.Energy)]
|
|||
|
public class NumericWatcher_Energy : INumericWatcher
|
|||
|
{
|
|||
|
public async ETTask Run(Entity entity, float old, float value)
|
|||
|
{
|
|||
|
Log.Info($"@{entity.Id}改变 Energy:{old} -> {value}");
|
|||
|
if (entity.Id != entity.ZoneScene().GetComponent<GlobalVariable>().MyId) return;
|
|||
|
int energy = MathHelper.RoundToInt(value);
|
|||
|
Game.EventSystem.Publish_Sync(new ET.EventType.ChangeEnergy
|
|||
|
{
|
|||
|
energy = energy,
|
|||
|
});
|
|||
|
ItemHelper.ChangeEnergy(energy);
|
|||
|
await ETTask.CompletedTask;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|