From 7604ff9d7646a8423e4b2e7e6af729431113a85b Mon Sep 17 00:00:00 2001 From: Ken Date: Tue, 28 Feb 2023 09:29:21 -0600 Subject: [PATCH] do not accumulate state in BackEaseInOut --- src/motion/easing/Back.hx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/motion/easing/Back.hx b/src/motion/easing/Back.hx index 4cf8fdb..afe6dd1 100644 --- a/src/motion/easing/Back.hx +++ b/src/motion/easing/Back.hx @@ -76,23 +76,23 @@ private class BackEaseInOut implements IEasing { public function new (s:Float) { - this.s = s; + this.s = s * 1.525; } public function calculate (k:Float):Float { - if ((k /= 0.5) < 1) return 0.5 * (k * k * (((s *= (1.525)) + 1) * k - s)); - return 0.5 * ((k -= 2) * k * (((s *= (1.525)) + 1) * k + s) + 2); + if ((k /= 0.5) < 1) return 0.5 * (k * k * (((s) + 1) * k - s)); + return 0.5 * ((k -= 2) * k * (((s) + 1) * k + s) + 2); } public function ease (t:Float, b:Float, c:Float, d:Float):Float { - if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b; - return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b; + if ((t/=d/2) < 1) return c/2*(t*t*((s+1)*t - s)) + b; + return c/2*((t-=2)*t*((s+1)*t + s) + 2) + b; } @@ -127,4 +127,4 @@ private class BackEaseOut implements IEasing { } -} \ No newline at end of file +}