Idea
The idea for my game is based on those old-school flash games I used to play in middle school: I wanted a simple single player game with moderate replayability. I settled on the concept of a game where the user would spam a button on the keyboard to accomplish some goal with ranging levels of difficulty, using weight lifting as a theme.
Implementation
I started by creating the game class, which involves a variable holding the current screens and methods for each screen. I needed a game start screen, an ingame screen, and a game complete screen. I also created a clickable rectangle component I used for buttons that had optional text inside, with a method that returns whether or not the button is being hovered or not.
The game also has a weight variable which controls the amount of resistance the game will enact on the user so a higher weight makes the game harder. I used buttons to dynamically change the weight value.
As of now, the user mashes space bar to increase the current level of completion, and if the user is unable to complete the game within a specific timeframe, the game results in a loss.
To control the game restart, I used another method that reinitializes the game, setting all class variables back to their original value, which also gets called in the constructor.
Play the WIP game here
TODO (in order of importance):
- Implement background images that reflect the progression of the game
- Implement music to play in the back
- Implement sounds for the users button presses (can get annoying to make sure it isn’t too loud)
- Styling for colors and text