40 lines
1.5 KiB
C#
40 lines
1.5 KiB
C#
using DG.Tweening;
|
|
using ET.EventType;
|
|
using ET;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using FairyGUI;
|
|
|
|
namespace ET
|
|
{
|
|
public class UpdateHeadInfo_ChangeMpEvent : AEvent_Sync<UpdateHeadInfo_ChangeMp>
|
|
{
|
|
public override void Run(UpdateHeadInfo_ChangeMp 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;
|
|
}
|
|
GProgressBar hpBar = ui.m_mineHeadInfo.m_pbarMp;
|
|
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
|
|
if (UpdateTeamHeadInfoEvent.TeamMemberHeadInfoDic.TryGetValue(id, out FUI_HeadInfoItem ui))
|
|
{
|
|
GProgressBar hpBar = ui.m_pbarMp;
|
|
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);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|