Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement lives #21

Merged
merged 21 commits into from
Aug 20, 2023
Merged

Implement lives #21

merged 21 commits into from
Aug 20, 2023

Conversation

nucleartide
Copy link
Owner

@nucleartide nucleartide commented Aug 18, 2023

User Story

Note the lives indicator in the bottom left.

test.mov
  • Pacman starts with 3 lives
  • UI shows the current number of lives
  • When round is lost, Pacman loses a life. Instead of resetting the game completely, only Pacman's and the ghosts' positions are reset.
  • Game is lost when Pacman loses all lives.
  • You get a 1UP for every 2000 points (to choose an arbitrary initial threshold).
  • A +1UP! indicator shows when you hit this threshold

In order to implement the features above, I also made us of Laura's UE5Coro for coroutines in C++: https://github.com/landelare/ue5coro

Playable build

https://drive.google.com/file/d/1dF0M7RRaXNQsMi2sHs3Nd8fnBuzLtcDF/view?usp=drive_link

Dev checklist

  • First draft. Implement a working first pass at the feature. If it helps, try thinking about data (model), presentation (view), and logic (controller).
  • Design by contract. Write pre-condition, post-condition, and invariant assertions to catch bugs before playtesting.
  • Unit tests. If needed, write unit tests to tease out edge cases.
  • First playtest. Thoroughly playtest until you are confident that the feature (and existing features) work.
  • Final draft. Perform a general review of Files changed and revise anything that needs to be cleaned up.
  • Final playtest. After the changes above, playtest through the game one last time to ensure that everything works.
  • Fill out the pull request template. Self-explanatory.
  • Remember the GIFs. Include a recording of what's going on!
  • Merge. Merge into master.

Release checklist

  • Build. Cut a new build in Unreal. If the game doesn't build, fix until it does.
  • Tag. Once built, tag the latest commit on master with the latest version string.
  • Upload. Upload build to Google Drive.
  • Priorities. Prioritize items on work board.
  • Next task. Tee up a pull request for the next feature.

@nucleartide nucleartide marked this pull request as ready for review August 20, 2023 14:32
@nucleartide nucleartide merged commit cf762ed into master Aug 20, 2023
@nucleartide nucleartide deleted the jason/implement-lives branch August 20, 2023 14:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant