No description, website, or topics provided.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
src
test
.gitignore
LICENSE
README.md
Setup.hs
breakout.cabal
stack.yaml

README.md

breakout

Using this guide to making pong as a starting point, we create the classic game Breakout.

This is an experiment to see if we can all learn Haskell and collaborate together without a rigid process in place!

Commits

Policy:

Use `git pull --rebase` always.

Do commit directly to master.

Think about what tasks you pick up and any conflicts that are likely.

Small commits are preferred.

Tasks

Assign yourself to a task by prefixing with your name.

  • bugs

    • ball can hit the right or left side of blocks directly from below and the ball does not rebound
  • tidy code:

    • separate collision logic
    • generalise collision fns/ use function composition to get DRY
    • encapsulate all dimensions in a data record?
  • improve collisions with blocks/paddle

    • allow size of paddle to vary independently to size of blocks
  • blocks

    • different coloured blocks earn different points and require multiple hits
    • interpreter - read block data from file to generate level
    • obstructions - blocks that do not disappear but do not need to be cleared
  • dying

    • restarts game after next key press
  • scoreboard

    • display highscores
    • enter name for highscore
  • tests