diff --git a/logic/service/fight/effect/effect_68.go b/logic/service/fight/effect/effect_68.go index fb758b06..e97133db 100644 --- a/logic/service/fight/effect/effect_68.go +++ b/logic/service/fight/effect/effect_68.go @@ -26,7 +26,12 @@ func (e *Effect68) DamageLockEx(t *info.DamageZone) bool { if t.Type != info.DamageType.Red { return true } - t.Damage = alpacadecimal.Min(e.Ctx().Our.CurrentPet.GetHP().Sub(alpacadecimal.NewFromInt(1)), t.Damage) + if e.Ctx().Our.CurrentPet.GetHP().Cmp(alpacadecimal.NewFromInt(1)) <= 0 { + return true + } + if t.Damage.Cmp(e.Ctx().Our.CurrentPet.GetHP()) > 0 { + t.Damage = e.Ctx().Our.CurrentPet.GetHP().Sub(alpacadecimal.NewFromInt(1)) + } return true }