zxl
/
CTT
forked from Cal/CTT
1
0
Fork 0
CTT/Server/Hotfix/Game/SkillSystem/NewSkill/Component/SkillOptions/SkillOptionLogic_修改Modifier...

31 lines
1.2 KiB
C#
Raw Normal View History

2021-04-08 20:09:59 +08:00
using Cal;
namespace ET
{
public class SkillOptionLogic_Modifier : SkillOptionLogicBase
{
public override SkillOptionType skillOptionType => SkillOptionType.Modifier;
public override SkillOptionBase skillOptionBase { get; set; }
SkillOption_Modifier skillOption;
public override void HandleEvent(ISkillSender skillSender)
{
skillOption = skillOptionBase.As<SkillOption_Modifier>();
var owner = skillSender.caster;
SkillLogic skillLogic = skillSender.skillLogic;
var num = owner.GetComponent<NumericComponent>();
var modifierContainer = skillLogic.owner.GetComponent<ModifierContainerComponent>();
var logic = modifierContainer.GetModifierLogic(skillOption.modifierId);
if (logic != null)
{
modifierContainer.RemoveModifier(logic);
}
skillLogic.dataX10000 = (1 - (float)num.GetAsInt(NumericType.Hp) / num.GetAsInt(NumericType.MaxHp)) / 0.1f;
modifierContainer.ApplyModifier(skillLogic.owner, skillLogic,skillOption. modifierId);
}
public override void Clear()
{
}
}
}