You can assign a platformer behaviour to the player as well as an 8directional and just use the platformer behaviour for jumping, that way you can use it's built in gravity function.
Alternatively, off the top of my head...
Give the player two Instance variables: "Floor" and "JumpLimit"
--------------------------Set the ground
When space is pressed:
Do once while true
set Floor to Player.
-------------------------- Jump up to the JumpLimit
While space is pressed:
While (Player.X - Floor) < JumpLimit
[Increase Player height]
(If you want to make it more realistic then you can reduce the velocity as Player.X - Floor approaches JumpLimit
-------------------------- Falling
If player.x > Floor
[Reduce player height]
I think that would work okay, the falling wouldn't work on anything other than a flat plane.