The task is to implement a simple 2D game platform game (something like Super Mario).
The project contains a few basic classes to set you up and running quickly. Please review them before starting.
Draw a background behind the hero. Use one of the appropriate textures from resources
(e.g. winter/BG/BG.png
).
Implement a gravity. That means, the everlasting force that pulls hero downward. Hero should start falling slowly and his speed should increase gradually until he disappears from the screen.
The hero should stop on the ground. Render some tiles to represent the earth.
Implement left and right movement of the hero by pressing left/right arrow keys. Use
scene.setOnKeyPressed()
/scene.setOnKeyReleased()
methods in Game
class.
Hero can now jump by pressing space
key.
Render an item (e.g. door) which will represent an exit from the game. If hero passes through it, the application will end.
Hero now needs to pick a key before being able to exit.
Monsters now roam the world. They can be killed by being jumped on.
Implement a main menu which will launch before the game.
Create more levels which can be picked from the main menu.
User can pick levels from main menu by mouse clicking.
Leverage https://www.mapeditor.org for level editing.
Implement a simple physics by using bounding boxes of game objects. E.g. tiles that cannot be passed.
On Linux the project might stagger due to a high memory consumption which can be solved by passing -Dprism.order=sw
argument.