i didn't think that it would matter if the vsync was in a while loop in the def. It isn't called every time either, only when the player wants the sprite to move and if the sprite is allowed to move. i suppose i could break it down into multiple functions...