I need to know when the player has a spell equipped, when the player is charging that spell for casting, and when the charging is complete and the spell is ready to fire.
There are multiple events for the first two... and none, not a single one that I can find, for the last.
I have registered for animation events on literally every single animation in 0_master-out, magicbehavior-out, 1hm_behavior-out, and idlebehavior-out. It takes nearly 20 seconds just to register that many events. Events fire when I move, when I equip, when I begin casting and when I finish casting, but NOTHING fires when the spell is charged and ready TO cast. The vast majority of the events that would seem relevant don't fire at all.
I have polled most of the animation variables from those files throughout casting, as well. Nothing gives me a definitive value that tells me that the spell is ready, though some can be used to find out that the spell is charging.
The only way I can apply a scripted effect when the spell is charged is by starting a timer when the BeginCastLeft (there doesn't appear to be a corresponding BeginCastRight) event fires, and trying to match the fully-charged script effect to the moment the spell is actually ready. As we all know, though, precise timing and Papyrus don't go well together.
What's so annoying about this is I know the game tracks this event, because certain magic art objects have "charged" animations that are linked to the spell being charged. That event just isn't exposed to the user anywhere.
Help?