Version 4 (modified by kvigue, 2 years ago)

--

Goal:

Clean up code based on pylint.
Add text boxes for story mode before and after puzzles.
Add difficulties.
Move the blocks up when they're clicked.

Use case:

The user starts the program
The user selects to play a game
The user can choose from Story or Survial
If the user chooses Story:
The user is prompted to choose a difficulty
Upon choosing a difficulty, the user sees a text box with some story in it. They move on by clicking continue.
The user solves the puzzle. Clicking blocks causes them to move up.
Upon finishing the level, the user may see an "ending" message.

Test:

Everything must work as described in the use case. Nothing should crash.

Results:

Story mode "text boxes" are working, but the code probably needs a second pass at some point (it's messier than it should be; we should have planned it earlier in our design). In addition, it needs to be changed slightly to allow a continue button in the "end" phase instead of a timer (so that the player can appreciate their completed puzzle; I plan to add that soon). With this, it would also be nice to have a function to break a single string into multiple lines of pygame text surfaces; hopefully that will be in soon as well.
Blocks move up, but after some discussion we decided we might end up changing how they look (once we have the final art). What we planned to do originally is in place, however.
As for difficulties, there's a difficulty menu but the difficulties themselves are the same. Those should be in some day.
More pylint complaints are fixed. There are still plenty, but almost all of the ones that are left over are things that we like. Do you hear me? You don't control us, pylint!