- 将 InitEffect 重命名为 InitSkillEffect,用于初始化技能效果 - 修改技能效果的 ID,避免和普通效果 ID 冲突 - 优化战斗循环逻辑,增加战斗结束的判断条件 - 调整输入结构,移除未使用的属性和状态容器 - 重构技能解析和攻击处理逻辑,提高代码可读性和维护性
41 lines
752 B
Go
41 lines
752 B
Go
package effect
|
|
|
|
import (
|
|
"blazing/logic/service/fight/input"
|
|
"blazing/logic/service/fight/node"
|
|
)
|
|
|
|
/**
|
|
* 当次攻击击败对方时减少对方下次出战精灵的最大体力1/n
|
|
*/
|
|
type Effect67 struct {
|
|
node.EffectNode
|
|
}
|
|
|
|
func init() {
|
|
input.InitSkillEffect(67, &Effect67{
|
|
EffectNode: node.EffectNode{
|
|
ArgSize: 1,
|
|
},
|
|
})
|
|
|
|
}
|
|
|
|
// 重写死亡,如果击败,就出触发死亡事件,判断是目标精灵
|
|
func (this *Effect67) OnDefeat() bool {
|
|
|
|
return true
|
|
}
|
|
|
|
// 登场是下一只 减少对方下次出战精灵的最大体力1/n
|
|
func (this *Effect67) OnSwitchIn() bool {
|
|
|
|
return true
|
|
}
|
|
|
|
// 下场不消除buff
|
|
func (this *Effect67) OnSwitchOut() bool {
|
|
//下场默认清除effect
|
|
panic("not implemented") // TODO: Implement
|
|
}
|