Files
bl/logic/service/fight/effect/effect_32.go
昔念 7b73a59f31 fix(logic/service/fight/effect): 修复技能实体为空时的空指针异常
在 effect_32.go 的 Action_start 方法中添加了对 SkillEntity 是否为 nil 的检查,
避免在技能实体不存在的情况下访问其属性导致程序崩溃。
2025-12-11 13:39:19 +08:00

41 lines
708 B
Go

package effect
import (
"blazing/logic/service/fight/action"
"blazing/logic/service/fight/input"
"blazing/logic/service/fight/node"
)
/**
* 使用后n回合攻击击中对象要害概率增加1/16
*/
func init() {
input.InitEffect(input.EffectType.Skill, 32, &Effect32{
EffectNode: node.EffectNode{},
})
}
type Effect32 struct {
node.EffectNode
}
func (e *Effect32) Action_start(a, b *action.SelectSkillAction) bool {
if !e.Hit() {
return true
}
if e.Ctx().SkillEntity == nil {
return true
}
e.Ctx().SkillEntity.Crit += 1
return true
}
func (e *Effect32) SetArgs(t *input.Input, a ...int) {
e.EffectNode.SetArgs(t, a...)
e.EffectNode.Duration(e.EffectNode.SideEffectArgs[0])
}