38 lines
981 B
C#
38 lines
981 B
C#
using Gameplay.Skill;
|
|
using UnityEngine;
|
|
namespace Gameplay.Buff
|
|
{
|
|
public class BuffRecoverHP2 : BaseBuff
|
|
{
|
|
|
|
private int _recoverHp;
|
|
|
|
protected override void _OnInit()
|
|
{
|
|
base._OnInit();
|
|
|
|
// 回复血量 = 固定值 + 技能等级*系数2
|
|
|
|
var fixValue = _TryGetIntParam(0);
|
|
var scaleParam2 = _TryGetFloatParam(1);
|
|
|
|
var skillManager = SkillManager.instance.GetUnitSkillManager(creator);
|
|
if (skillManager == null)
|
|
{
|
|
DebugUtil.LogError("未找到技能管理器");
|
|
return;
|
|
}
|
|
var skillLevel = skillManager.GetPSkillLevel();
|
|
_recoverHp = fixValue + Mathf.RoundToInt(skillLevel * scaleParam2);
|
|
}
|
|
|
|
protected override void _OnTrigger()
|
|
{
|
|
base._OnTrigger();
|
|
|
|
owner.RecoverHp(_recoverHp);
|
|
}
|
|
|
|
}
|
|
}
|