Running your game in debug mode I see that your GameSpeed variable is staying at 0 even after unpaused. (That part isn't exactly broken as the CurrentSpeed is always at 0, and CurrentSpeed is what you're calling for GameSpeed to be in your unpause function). That probably has something to do with your issue.