else: makes the function do the same thing. Because although I'm having the 2nd half called once, the first half I need to remain being called, since it's moving the player. The
return part of it, is simply a lock to make sure it only accesses the whole function once on the first go, the
yield makes it wait till the movement is done, then it sets all the necessary variables.
I do have them in separate functions right now, but it causes this issue with one playing a frame earlier than the other (I know it's only a frame, but it's making other issues). If I can get them both in the same function, then it'll play at the same time.