View Single Post
06-03-16, 10:28 AM   #6
galvin
A Frostmaul Preserver
AddOn Author - Click to view addons
Join Date: Nov 2006
Posts: 265
Well Scale had to be done that way anyway. I'm not new to animation groups.

The bars in my addon show resources, so while its animating its possible the resource could change. And resource changing has its own animation as well. So with this change I can play two alpha animations at the same time and they won't conflict with each other. There's no way pause can fix that. One is playing on the parent frame, and the other is playing on a child frame that has a texture.

What happens is when you try to alpha animate a child texture while its parent is also alpha animating. Is the child frame gets stuck. On live you had to reloudUI to fix it (unless that was fixed?) On beta you don't but you still get the stuck alpha. On live I just prevented any child frame from animating if its parent was fading. But that added complexity and didn't look as nice.

The current Animation works like this. Parent and Child. The animation runs on Parent. It will then set the alpha value to Parent and Child. If there is alpha animation running on Child, it will get overwritten by the animation alpha running on Parent. Cause the animator overwrites the alpha on all children. So you get conflicts. I cant be the only person to have seen this issue. Course a call to SetAlpha in OnFinished will restore the frame. But the issue you want to fix is while its playing.

SetScale() and SetAlpha() work differently. You can change a parent but it won't alter a SetScale or SetAlpha setting on a child frame. By placing these inside the animation OnUpdate you create a better animator. For Alpha and Scale I only use OnUpdate for the parent, and use the built in for children. And Scale I had to use cause it doesn't work nice with child frames which I explained above.

Anyway I hope I was clear why I did it this way.

Last edited by galvin : 06-03-16 at 10:55 AM.