Your game relies on the unintended, undocumented and old bug where :Play()ing an animation with the same weight as another will overwrite the older one. As also described in Animation Engine - Runtime Changes and Fixes, this is what happens:
Animation1:Play()
-Animation 1 is playing on the rig, assuming the default weight of 1
Animation2:Play()
-Animation 2 plays at weight 1
The old behaviour would make Animation2 completely overwrite Animation1, Animation1 is still playing, it’s just that it’s not visible. It will be visible once Animation2 has ended.
What the new behaviour does is automatically blend the two animations, where Animation1 contributes 50% to the keyframe and Animation2 contributes 50% to the same keyframe, like having the weights of both of them set to 0.5.
You can fix this by doing
Animation1:AdjustWeight(0)
Animation2:AdjustWeight(1)
Animation2:Play()
Animation2.Stopped:Wait()
Animation2:AdjustWeight(0)
Animation1:AdjustWeight(1)