1. well, you can constantly check a sprites position to see if it would overlap with that tiles position and range
2. make sure the sprite comes down, either with a max jump height, a jump halfway marker, or use a parabolic function to measure height, with the format "-(speed of falling)*(time)*(time)+(speed of jump)*(time)+starting height" when the jump key is hit, and check for collision with the ground in #1
3. well, just make it so that it looks like its jumping
4. for now, you should try to use the dbText function for menu buttons, while loading and then placing a background image. you can then check if the mouse is in the button when a click with dbMouseX() and dbMouseY(), and when the click occurs, run a for loop for all your buttons and check if the mouse is inbetween their inner and outer coordinates.
-to the optimist, the glass is half full. to the pessimist, it is half empty, to the engineer, it is twice as big as it needs to be.