Commit graph

40 commits

Author SHA1 Message Date
Dag-Erling Smørgrav
ea46f9909e Ex 162: Refactor ghost state out of game state. 2021-10-20 10:21:49 +02:00
Dag-Erling Smørgrav
4c2390a3ff Ex 161: Implement Dave. 2021-10-20 10:21:49 +02:00
Patricia Aas
a70be02733 Remove hard coding of filename 2021-10-17 21:33:54 +02:00
Corentin Jabot
6923904c61 Canvas::update=>render 2021-10-06 13:30:07 +02:00
Corentin Jabot
d5379872ce Cleanup AI code 2021-10-05 12:11:29 +02:00
Patricia Aas
88f81cd0ae Move Clyde to the solution folder for day 1 ghost exercise 2021-10-05 09:46:29 +02:00
Ólafur Waage
cd86d91310 Adding unit tests for fruits. Also some minor cleanup. 2021-09-15 14:40:07 +02:00
Ólafur Waage
2afe8f1d36 Fixing tidy error. 2021-09-15 13:42:52 +02:00
Ólafur Waage
ed6466a306 Fixing forward decl issue and conversion error. 2021-09-15 13:39:42 +02:00
Corentin Jabot
c495dd9c37 Basic fruits support
Of course, there is no support for levels yet!
2021-09-13 14:48:59 +02:00
Corentin Jabot
f385036bee Disable clang-tidy clechs which create false positive in gtest 2021-09-11 09:42:53 +02:00
Corentin Jabot
bc83fa77c3 Fix conversions warnings 2021-09-10 15:04:43 +02:00
Ólafur Waage
55fbb53591 Refactoring Game and GameState. Moving game state update logic into that class. Game is now only event loop. 2021-09-07 16:00:19 +02:00
Patricia Aas
eaf61585ea Fix Clang-Tidy warnings 2021-08-02 16:43:18 +02:00
Patricia Aas
d3cc1d90c7 Fix warnings 2021-08-02 15:28:07 +02:00
Corentin Jabot
d6a046ff47 Use the correct ghost names 2021-07-16 09:35:32 +02:00
Corentin Jabot
691aac978e Get rid of tuple 2021-07-15 09:14:25 +02:00
Patricia Aas
e5e46a0e65 Create GameState 2021-07-08 16:57:18 +02:00
Corentin Jabot
3966987e2a Put the scaling function in a lib 2021-07-08 10:18:36 +02:00
Corentin Jabot
cbd19df739 Implement scaling.
We render pack man at twice the size that we want on screen,
which is the native resolution of the asset file.
The maze is upscaled.
We then project everything onto a view which is applies
the scale factor.

This patches also dectect the appropriate scale on OSX.
This required a bit of objective C (scaling.mm),
but students should not look at this file and there
is a comment in that direction.
Scalling.cpp provides the default implementation
for other platforms.
2021-07-07 21:32:22 +02:00
Patricia Aas
705ea717e1 Introduce a scale function and clean up 2021-07-07 11:25:13 +02:00
Patricia Aas
ce7dd70332 Very rough stab at scaling 2021-07-07 11:25:13 +02:00
Patricia Aas
5c982228c8 More font name fixes 2021-07-06 20:48:29 +02:00
Patricia Aas
30f69464dd Move over to size_t 2021-07-06 12:35:23 +02:00
Corentin Jabot
60095363f4 Put the code in a namespace 2021-07-05 14:10:01 +02:00
Corentin Jabot
e4991ab1dd Rename PositionInt 2021-07-05 11:47:03 +02:00
Corentin Jabot
ba515eaca5 Replace floats by doubles 2021-07-05 11:40:10 +02:00
Patricia Aas
7081a33e35 Remove unused includes and reformat 2021-07-02 14:47:33 +02:00
Corentin Jabot
5b0e561afc Pacman and ghosts can eat each others 2021-07-01 10:19:46 +02:00
Corentin Jabot
ced6cd829c Put the ghosts in a tuple to reduce duplication 2021-07-01 10:19:46 +02:00
Corentin Jabot
93186dc8b9 Add ghosts
No movement for now!
2021-06-24 18:33:08 +02:00
Corentin Jabot
a0780c7a8c Display the number of remaining lives 2021-06-24 18:33:08 +02:00
Corentin Jabot
fedbc153ae Implement score 2021-06-24 18:33:08 +02:00
Corentin Jabot
ecf2ab8b6c Try to make animation less dependant on framerate 2021-06-24 18:33:08 +02:00
Patricia Aas
5f0c03c1fa Clang Tidy fixes 2021-06-22 13:17:12 +02:00
Patricia Aas
d4d2e2d00d Fix animation 2021-06-22 13:17:12 +02:00
Patricia Aas
9ca1f6f12d Initialize Event object 2021-06-22 13:17:12 +02:00
Corentin Jabot
c7ef086d3d Migrate from SDL to SFML
This simplifies the rendering code and remove all(!) pointers.

There is a number of unresolved issues

* Windows build ?
* position delta computation: migrating to SFML seems to have modified
the frame rate.
2021-06-22 13:17:12 +02:00
Corentin Jabot
75fd208299 Basic Text rendering
Using SDL2_ttf and fmt
2021-06-16 15:18:47 +02:00
Patricia Aas
68f63f3f66
Canvas rewrite (#6)
* Beginning rewrite

* Move all constants to canvas, wire sprite handling code

* Make Sprite a struct and reformat

* Fix warning

Co-authored-by: Corentin Jabot <corentinjabot@gmail.com>
2021-06-16 12:52:04 +02:00