Correct direction and use new sprites
Don't set same state twice if state and direction don't change