package effect import ( "blazing/logic/service/fight/info" "blazing/logic/service/fight/input" "blazing/logic/service/fight/node" ) // Effect 504: {0}%令对手害怕,若没有触发害怕效果,则对手{1} type Effect504 struct { node.EffectNode } func (e *Effect504) OnSkill() bool { chance := e.Args()[0].IntPart() success, _, _ := e.Input.Player.Roll(int(chance), 100) if success { // 令对手害怕 fearEffect := e.CarrierInput().InitEffect(input.EffectType.Status, int(info.PetStatus.Fear)) if fearEffect != nil { e.TargetInput().AddEffect(e.CarrierInput(), fearEffect) } } else { for i, effectId := range e.SideEffectArgs[1:] { if effectId != 0 { e.TargetInput().SetProp(e.CarrierInput(), int8(i), int8(effectId)) } } } return true } func init() { input.InitEffect(input.EffectType.Skill, 504, &Effect504{}) }