diff --git a/logic/service/fight/input/input.go b/logic/service/fight/input/input.go index 063d8d5f2..f010ea787 100644 --- a/logic/service/fight/input/input.go +++ b/logic/service/fight/input/input.go @@ -108,13 +108,16 @@ func (our *Input) RecoverEffect() { //根本没释放技能,这些效果全部失效 for _, e := range our.EffectCache { + e.Alive(false) } //这时候将被覆盖的效果全部装回来enterturn for _, e := range our.Effect_Lost { - e.Alive(true) + if e.Duration() > 0 || e.Duration() == -1 { + e.Alive(true) + } } diff --git a/logic/service/fight/node/Turn.go b/logic/service/fight/node/Turn.go index cc1a1e9a2..43d8bdf5c 100644 --- a/logic/service/fight/node/Turn.go +++ b/logic/service/fight/node/Turn.go @@ -31,8 +31,11 @@ func (e *EffectNode) Turn_End() { // // e.Alive(true) // } + if e.duration > 0 { + e.duration-- + } // }) - e.duration-- + } }