2021-04-08 20:09:59 +08:00
|
|
|
|
using ET;
|
|
|
|
|
using DG.Tweening;
|
|
|
|
|
using ET.EventType;
|
2021-04-11 19:50:39 +08:00
|
|
|
|
using FairyGUI;
|
2021-04-08 20:09:59 +08:00
|
|
|
|
using UnityEngine;
|
|
|
|
|
|
|
|
|
|
namespace ET
|
|
|
|
|
{
|
|
|
|
|
public class UpdateHeadInfo_ChangeHpEvent : AEvent_Sync<UpdateHeadInfo_ChangeHp>
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
public override void Run(UpdateHeadInfo_ChangeHp args)
|
|
|
|
|
{
|
|
|
|
|
long id = args.unit.Id;
|
|
|
|
|
float tweenTime;
|
|
|
|
|
//!玩家的UI
|
|
|
|
|
if (id == GlobalVariable.MyId)
|
|
|
|
|
{
|
|
|
|
|
if (!(FUIComponent.Instance.Get(FUIPackage.Common_MainUI) is FUI_MainUI ui))
|
|
|
|
|
{
|
|
|
|
|
return;
|
|
|
|
|
}
|
2021-04-11 19:50:39 +08:00
|
|
|
|
GProgressBar hpBar = ui.m_mineHeadInfo.m_pBarHp;
|
2021-04-08 20:09:59 +08:00
|
|
|
|
tweenTime = (float)((4 / MathHelper.Max(hpBar.max,MathHelper.Max(args.old,args.value))) * MathHelper.Abs(args.old - args.value));
|
|
|
|
|
DOTween.To(() => (float)hpBar.value, x => hpBar.value =x, args.value, tweenTime).SetEase(Ease.InOutQuad);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
//!队友的UI
|
2021-04-11 19:50:39 +08:00
|
|
|
|
if (UpdateTeamHeadInfoEvent.TeamMemberHeadInfoDic.TryGetValue(id, out FUI_HeadInfoItem ui))
|
2021-04-08 20:09:59 +08:00
|
|
|
|
{
|
2021-04-11 19:50:39 +08:00
|
|
|
|
GProgressBar hpBar = ui.m_pBarHp;
|
2021-04-08 20:09:59 +08:00
|
|
|
|
tweenTime = (float)((4 / MathHelper.Max(hpBar.max, MathHelper.Max(args.old, args.value))) * MathHelper.Abs(args.old - args.value));
|
|
|
|
|
DOTween.To(() => (float)hpBar.value, x => hpBar.value = x, args.value, tweenTime).SetEase(Ease.InOutQuad);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|