Commit graph

73 commits

Author SHA1 Message Date
Corentin Jabot
691aac978e Get rid of tuple 2021-07-15 09:14:25 +02:00
Patricia Aas
522362152d Refactor 2021-07-13 14:26:57 +02:00
Corentin Jabot
43cfecc077 Get rid of unused comparison operator 2021-07-09 10:24:24 +02:00
Patricia Aas
ee3c7c61db Simplify 2021-07-08 18:12:03 +02:00
Patricia Aas
890d061a92 Move teleport to Board 2021-07-08 18:00:39 +02:00
Corentin Jabot
370a57f454 Get rid of board class 2021-07-08 17:42:24 +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
3c638c057e No need to pass Board around 2021-07-07 11:39:09 +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
e9fb5dac77 Fix some warnings and clang tidy 2021-07-07 11:24:12 +02:00
Corentin Jabot
dac3b12dc4 Explain how the ghosts move 2021-07-07 10:38:52 +02:00
Patricia Aas
5c982228c8 More font name fixes 2021-07-06 20:48:29 +02:00
Patricia Aas
742f4ce56a Round doesn't make sense 2021-07-06 17:11:49 +02:00
Patricia Aas
9bea9fdad9 Add back comment 2021-07-06 17:11:18 +02:00
Patricia Aas
138f2df152 PacMan size is an integer 2021-07-06 17:10:17 +02:00
Patricia Aas
f7b53d9fca Don't use -> 2021-07-06 17:09:42 +02:00
Patricia Aas
a7a1565c99 Prettify 2021-07-06 16:33:33 +02:00
Patricia Aas
ab1e68a266 Add missing include 2021-07-06 12:55:58 +02:00
Patricia Aas
eb36d24b31 Make it possible use GridPosition with emplace_back 2021-07-06 12:41:50 +02:00
Patricia Aas
30f69464dd Move over to size_t 2021-07-06 12:35:23 +02:00
Corentin Jabot
510e12a921 replace push_back with emplace_back 2021-07-06 10:07:35 +02:00
Corentin Jabot
3197f334d1 Fix linux build 2021-07-05 17:19:35 +02:00
Corentin Jabot
60095363f4 Put the code in a namespace 2021-07-05 14:10:01 +02:00
Corentin Jabot
d166f552f4 Simplify board code 2021-07-05 13:54:54 +02:00
Patricia Aas
7faadda5c0 Remove unused function 2021-07-05 12:18:08 +02:00
Corentin Jabot
727a2c5e76 Create an include 2021-07-05 12:02:36 +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
Corentin Jabot
b5b9d9c168 Rename ghosts 2021-07-05 11:33:02 +02:00
Patricia Aas
7081a33e35 Remove unused includes and reformat 2021-07-02 14:47:33 +02:00
Patricia Aas
a62d668ead Simplify Ghost::currentSprite 2021-07-01 14:53:52 +02:00
Patricia Aas
0e72ff8be5 Make board a static double std::array 2021-07-01 14:33:59 +02:00
Patricia Aas
fc31086ab9 Initialize timeSinceDeath 2021-07-01 10:19:46 +02:00
Corentin Jabot
b6d0bad21c Fix mac build (again) 2021-07-01 10:19:46 +02:00
Corentin Jabot
a01f93cc90 Fix mac build 2021-07-01 10:19:46 +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
3e84746cee Simplify ghost movement code 2021-07-01 10:19:46 +02:00
Corentin Jabot
c2cfb8c734 Implement ghost movement and scatter behavior
Each ghost is trying to reach a point beyond the
corner of the board, which make them run in circle
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
79506d218e Make a ghost pen 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
42ee04203f Make pacman mouth wide open while he doesn't move 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
Corentin Jabot
a69e66d114 Pacman should not be animated when hitting a wall 2021-06-24 18:33:08 +02:00
Patricia Aas
f51b7d65e0 Reformat and add a gitignore 2021-06-22 13:17:12 +02:00