Solid game loop. I did realize though that I was throwing the boxes out the left side of the screen, and not into the back of the truck. Consider maybe tracking where mouse.x and mouse.y last were before they left the screen, and use that.