What this does is to set up a system for me to gauge the movement of my main character, Buster... Is he moving up, down, left, or right? And then to compare whether his horizontal movement is greater than or less than his vertical movement.
From there, I determine which visual animation to play, and/or whether or not to mirror the image. (I know someone will ask why I don't just set the animation to play based on what keyboard keys I press...and I had a specific reason but right now it's completely escaping my mind.)
What I have noticed, however, is when Buster is "pushing" against a wall while going to the left or up his body doesn't appear to be "flickering" between animations. But going in either of the other two directions will show his body rapidly alternating between two animations. For instance, if Buster is moving to the right against a wall, it looks as if he is switching between left and right animations. (This doesn't happen, though, when moving against a wall immediately to his left while going to the left.)
I suspect it has to do with the BusterBody object being "pushed back" when it briefly overlaps the wall (which has the Solid behavior). So for a brief tick, Buster is moving in the opposite direction than what the player is moving him in. The question, though, is why this only happens for two of the four directions?
.c3p file: https://www.dropbox.com/s/63vyu90r8r7jp5l/busters%20escape%20v8-2%20.c3p?dl=1