2021-04-08 20:09:59 +08:00
|
|
|
|
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<SkillOption_改变释放次数>();
|
|
|
|
|
SelectTargetHelper.GetTarget(skillOption.selectTarget, skillSender, (target, skillSender) =>
|
|
|
|
|
{
|
2021-04-11 19:50:39 +08:00
|
|
|
|
SkillLogic logic = skillSender.skillLogic;
|
|
|
|
|
if (!SkillHelper.GetParam(skillOption.param, logic.skillConfigId, out float value))
|
2021-04-08 20:09:59 +08:00
|
|
|
|
return;
|
|
|
|
|
if (!(skillSender is ModifierSkillSender modifierSkillSender))
|
|
|
|
|
{
|
|
|
|
|
Log.Error($"skillSender = {skillSender} is not ModifierSkillSender");
|
|
|
|
|
return;
|
|
|
|
|
}
|
2021-04-11 19:50:39 +08:00
|
|
|
|
ModifierLogic modifierLogic = modifierSkillSender.modifierLogic;
|
2021-04-08 20:09:59 +08:00
|
|
|
|
if (modifierLogic == null)
|
|
|
|
|
return;
|
|
|
|
|
int valueInt = (int)value;
|
|
|
|
|
modifierLogic.playAmount = valueInt - logic.playAmount;
|
|
|
|
|
logic.playAmount = valueInt;
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|