diff --git a/src/AnimationHelpers.elm b/src/AnimationHelpers.elm index d714984..7c4d65b 100644 --- a/src/AnimationHelpers.elm +++ b/src/AnimationHelpers.elm @@ -12,4 +12,4 @@ calculateAnimation current cycle range = rangeDiff = end - start in - (toFloat (current % cycle)) / (toFloat (cycle)) * rangeDiff + start + (toFloat (current % (cycle + 1))) / (toFloat (cycle)) * rangeDiff + start diff --git a/src/Views/Player.elm b/src/Views/Player.elm index c8f7e48..847b681 100644 --- a/src/Views/Player.elm +++ b/src/Views/Player.elm @@ -33,8 +33,14 @@ render model = maxOpen = 90 + frameCount = + calculateAnimation (model.time |> inMilliseconds |> round) cycleTime ( 0, maxOpen * 2 ) + openness = - calculateAnimation (model.time |> inMilliseconds |> round) cycleTime ( 0, maxOpen ) + if frameCount > maxOpen then + maxOpen - toFloat (round (frameCount) % maxOpen) + else + frameCount in pacman ( 250, 450 ) (degrees openness)