Updated player movement logic (not working yet though)