Looking for help locking character movement to a retro 8 direction setup

So I realized today that what I wrote wasn’t exactly what I was looking for. I could blame it on being dead tired but that just means I should have waited to post my question.

What I’m really looking to do is have forward / backward movement only and have it constrained to only functioning along the 8 directions by dividing a full 360 into 8 45 degree sections. I want to allow full rotation for aiming but to snap to one of these preset directions based on which 45 degree line is the closest.

I have the movement confined to forward and backward, the full rotation, and what I think is the correct way of setting up the auto-rotation; but when I try to do the rotation and then move forward when the player attempts to walk, it will snap to the correct line and move but the model will rotate like crazy when moving along that line, even though the movement is locked to that line until stopping and rotating.

I’ve added the section in this screenshot to allow for the rotation but it can’t figure out how to trigger it so that it executes once upon triggering move forward / backward and then allow the player to keep moving without triggering this on every tick. I’m thinking I’ll need to use a Do Once?