NLDClient-yudde/ProjectNLD/Assets/Code/Scripts/Gameplay/Buff/BaseSkillBuff.cs

48 lines
1.4 KiB
C#

using Gameplay.Common;
using Gameplay.Summon;
namespace Gameplay.Buff
{
using cfg.BuffCfg;
using Gameplay.Skill;
public class BaseSkillBuff : BaseBuff
{
protected SkillHandle _skill;
public override void Ctor(GameUnit creator,
DataBuff configData)
{
if (creator == null)
{
DebugUtil.LogError("创建者为空");
return;
}
switch (creator.gameunitType)
{
case EGameUnitType.Character:
case EGameUnitType.Vehicle:
var skillManager = SkillManager.instance.GetUnitSkillManager(creator);
_skill = skillManager.positiveSkill;
OverrideFloatParams(_skill.runtimeData.configData.FloatParams.ToArray());
break;
case EGameUnitType.Summon:
_skill = (creator as BaseSummon)?.createSkill;
if (_skill != null)
{
OverrideFloatParams(_skill.runtimeData.configData.FloatParams.ToArray());
}
break;
default:
DebugUtil.LogError("不支持的类型:{0}", creator.gameunitType);
break;
}
base.Ctor(creator, configData);
}
}
}