fix(fight): 修复技能效果命中判断逻辑错误
修复了技能攻击中效果命中的判断条件,使用更准确的 AttackTime 字段代替 AttackValue.AttackTime。同时优化了回合开始与结束时宠物状态的还原逻辑,确 保血量与技能列表能正确恢复。此外,修正了效果叠加判断条件的取反问题,避 免不可叠加效果被错误处理。
This commit is contained in:
@@ -165,9 +165,10 @@ func (our *Input) AddEffect(in *Input, e Effect) Effect {
|
||||
v.Alive() && //如果之前的效果还存活
|
||||
equalInts(v.Args(), e.Args()) { //如果层数可以叠加或者是无限层数
|
||||
|
||||
if v.CanStack() { //说明进行了替换
|
||||
if !v.CanStack() { //说明进行了替换
|
||||
v.Alive(false) //不允许叠层,取消效果
|
||||
e.Duration(utils.Max(e.Duration(), v.Duration()))
|
||||
our.Effects = append(our.Effects, e)
|
||||
return v //这里把V替换掉了
|
||||
} else {
|
||||
v.Stack(v.Stack() + e.Stack()) //获取到当前叠层数然后叠加
|
||||
|
||||
Reference in New Issue
Block a user