Mecanim Finish animation once but transition IMMEDIATELY on trigger

In Mecanim I want a ski jumper to animate a duck pose on key press and jumps once I release the same key. However I want the character to finish the duck animation prior to jumping, but to jump immediately as soon as I release the key and the duck animation has finished.

Mecanim states:
Stand ---> Duck ---> Jump

Duck is “loop=false”
and the Duck-Jump transition has the conditions:

  1. Trigger: OnJump
  2. ExitTime: 1.0

My problem is that apparently the animation-TIME still loops even though the actual animation-VISUAL doesn’t so the transition only happens when the time is 1.0 every loop. If my duck animation takes 1sec and I release the key at 2.5sec it again takes another 0.5sec before the character actually jumps.

Some solutions I came up with:

  1. Add animation events at the end of every animation which just set a trigger “AnimationFinished”
  2. Make an additional state before the animation states which immediately transitions to the original state once the animation is finished and set the original state’s animation time to 0. However this would bloat my animation states.

Just remove the exit time condition and it’ll jump exactly the moment the trigger is … triggered.