Using montage to blend between animation states

This last is my approach for handling weapon equip animations that cover the transition to the weapon-hold states. If you’re worried about notifies “maybe not firing”, do what I do: use NotifyStates instead.

Take whatever logic you would normally put into a Notify, and instead put it in the NotifyEnd function call of a NotifyState. Then, set the NotifyState in your animation such that the end is where you want the notify to fire, and the beginning is at frame 0 (or wherever you want the notify to be “uninterruptible” from). In ordinary gameplay this will be indistinguishable from a standard notify. But once a NotifyState starts, it ALWAYS fires its NotifyEnd no matter what; so if the animation is in some way interrupted by something, as soon as the transition montage’s weight is too low to fire notifies, that NotifyEnd will immediately trigger.

If you’re going to put gameplay logic inside notifies, I recommend using NotifyStates wherever possible. You avoid a lot of cases, like the ones you fear, where an unexpected animation interrupt or blend causes some critical state change to not fire correctly because the animation was blended out too far. As a rule, I only ever use regular notifies for cosmetic/FX things (sounds, particle effects, etc) and use NotifyStates for any gameplay logic tied to frame data (hitboxes, input buffers, state changes, etc) because they’re more “reliable” in a gameplay sense.