using Cal; namespace ET { public class SkillOptionLogic_改变伤害倍率 : SkillOptionLogicBase { public override SkillOptionType skillOptionType => SkillOptionType.改变伤害倍率; public override SkillOptionBase skillOptionBase { get; set; } SkillOption_改变伤害倍率 skillOption; public override void HandleEvent(ISkillSender skillSender) { skillOption = skillOptionBase.As(); SelectTargetHelper.GetTarget(skillOption.selectTarget, skillSender, (target, skillSender) => { SkillLogic logic = skillSender.skillLogic; if (!SkillHelper.GetParam(skillOption.param, logic.skillConfigId, out float value)) return; if (!(skillSender is ModifierSkillSender modifierSkillSender)) { Log.Error($"skillSender = {skillSender} is not ModifierSkillSender"); return; } ModifierLogic modifierLogic = modifierSkillSender.modifierLogic; if (modifierLogic == null) return; float valueInt = value; modifierLogic.multiDamageX10000 = valueInt - logic.GetMultipleDamage(); logic.SetMultipleDamage(valueInt); }); } } }