Tetris (Rad, Eric, Tanay)

From UBC Wiki

What is the problem?

Pong is a very famous and old game with a lot of history. It was one of the first computer games to be made for public. This simple "tennis-like" games has paddles and a ball and the aim of the game is to make your opponent miss the ball. We are going to render Pong with Haskell with as many features as we can. The game is also always designed to be in a very unattractive white & black interface, which is something underwhelming for such a famous game.

What is something extra?

We are going to create a full GUI for the game itself, scoring, and anything else needed using existing Haskell libraries and compare them to what is available for other languages. We will be using the gloss library and some pictures to achieve the GUI. We will also be implementing the whole game ourselves. We have also added sprites to make the GUI more attractive.

We have added horizontal movements for the paddles and a scoreboard as well.

What did we learn from doing this?

- We learnt how to use the gloss library and how simple it is to implement a GUI with the gloss library on Haskell. We also learnt about how render functions work and had some fun with coding some helper functions for the movement of the balls and the paddles.

- Also followed what we learnt in class by designing from top-down and developing bottom-up.

- Had some issues with using gloss library, indentation, IO types, but fixed them.

Links to code

https://github.students.cs.ubc.ca/ralmuall/CPSC-312-2023-Pong-Project