Commit Graph

71 Commits

Author SHA1 Message Date
b770c2e40d Don't reverse ghosts immediately, wait until they've reached the next tile
Also fix index out of bounds in retrieving next scatterChaseTimer value,
and retrieving an offset-by-1 value (due to increasing
scatterChaseTransition after retrieving the next timer value).

Closes #9
2020-01-05 14:08:34 +04:00
fb3e26da35 Fix lives being removed on new round 2020-01-05 12:47:39 +04:00
31a2657c13 Implement round progression mechanics and Elroy speeds
Closes #3
Closes #6
2020-01-05 12:44:52 +04:00
37944fccd9 Cleaner update routine by extracting logic into new methods 2020-01-05 10:42:45 +04:00
ab94395eac A little more refactoring
Declare methods before calling for easier following
2020-01-05 10:31:24 +04:00
389533d394 Significant amount of refactoring:
- Removed several mode timer variables and implemented a GameMode enum w/
associated timer.
- Removed individual chase/scatter timer, replace with single timer
- Hopefully made level/round initializing methods more coherent
2020-01-05 02:35:54 +04:00
ecaf86a57a Cache assets 2020-01-02 20:51:50 +04:00
d21a4b8c1d Add round clear flashing, closes #5 2020-01-02 02:30:39 +04:00
6bfe740416 Allow WASD 2019-12-29 12:25:13 +04:00
bf0d5e041b Functional menu 2019-12-29 12:24:51 +04:00
30962673d5 Version 0.1.0 2019-12-29 00:33:16 +04:00
0501917756 Set speed based on current state before each update. Fixes #2
Ghosts now slow down in side tunnels
All speeds now ratios of PlayState.FULL_SPEED
2019-12-29 00:27:13 +04:00
20719621e2 Removed unused imports 2019-12-28 23:37:28 +04:00
9b06b294f4 Removed ghost == null checks that are no longer necessary 2019-12-28 23:35:29 +04:00
3fe14e6e5d Implement ghost house exiting logic (wtf, pacman designers?)
- Fixed bug in Clyde's chase behaviour (was using Inky's instead of
his own position)
- Create a subclass of Ghost for each ghost's unique house leaving logic
- Now spawn ghosts only once
2019-12-28 23:26:58 +04:00
dd9bdac33d Add chase/scatter alternation 2019-12-28 16:51:09 +04:00
0d42aac28d Fixed ghost in-house behaviour
Speed up ghost cape animation
2019-12-28 14:04:20 +04:00
906ef93a11 Initialize all state vars in intializeField before new game
Fixed ghosts remaining frightened at the start of a new round
Fixed ghosts staying slow after being frightened
Reduce wait time after death to 2 seconds
2019-12-28 13:32:23 +04:00
c32451a597 Add debug rendering of an entity's current tile 2019-12-28 12:55:58 +04:00
f6fbad0e6d Shorter turning code using vector math 2019-12-28 12:50:41 +04:00
8a0298b2db Shorter movement code making use of vector math 2019-12-28 12:21:28 +04:00
ac347dc6d8 Give + render points for capturing ghost
Slow frightened ghosts down
2019-12-28 01:19:36 +04:00
d33435bf42 Minor change
Always return when the gameOverTimer or newGameTmer is > 0
Move variables
2019-12-28 00:53:38 +04:00
a8e4d2526e Fix (again) and simplify ghost capture logic
Spawn ghosts inside their house
Start a new game by pressing 'n'
2019-12-28 00:47:18 +04:00
e38c7a2dea Implement PInky, Inky, and Clyde's chase behaviours 2019-12-27 17:58:12 +04:00
933f696fe8 Add fix for ghosts getting stuck, Fixes #1 2019-12-27 16:57:04 +04:00
8f13d9295c Remove redundant checks 2019-12-27 16:11:46 +04:00
5eef40f767 Do the flashy thing 2019-12-27 15:45:34 +04:00
cd2b968631 Ghosts can get inside their house now
Add Path object for defining  apath an entity should take at a given speed.

Fix some issues with ghost capturing logic
2019-12-27 14:35:47 +04:00
2a65084363 Rudimentary ghost capturing 2019-12-27 00:51:41 +04:00
0bd4d7f042 Implement BinkyScatterBehaviour 2019-12-26 16:26:37 +04:00
afad1017a5 Implement FrightBehaviour
This took way too long.
2019-12-26 16:13:29 +04:00
75d0c41bb5 Ghosts can chase!
Refactor position to be a Vector2 for convenience sake.
2019-12-26 03:38:14 +04:00
d10148ace1 Refactor N/E/S/W to U/D/L/R 2019-12-26 01:54:58 +04:00
0177090ea3 Paccy should start off to the left 2019-12-26 01:52:34 +04:00
1153205ddd There's a ghost! And death. And a game over sequence. 2019-12-26 01:50:26 +04:00
6073c6c84a Ready! 2019-12-25 20:27:20 +04:00
e2f601c8be Refactor MovableEntity.Direction outside of MovableEntity 2019-12-25 19:35:41 +04:00
f43840979b Now the tunnel works
Also don't allow setting next direction to the current direction.
2019-12-25 19:22:56 +04:00
f5ba40255a Pacman null check since he might arrive at a null tile 2019-12-25 19:12:26 +04:00
347f8f5dba Bounds check on getTile 2019-12-25 19:11:33 +04:00
7bece08683 Implement pause 2019-12-25 17:50:52 +04:00
437ae39a9e Remove ghost's eyes, move eye sprites to ghosts sprites 2019-12-25 16:55:28 +04:00
1a74c9aae3 Load in the rest of the sound assets. 2019-12-25 16:26:25 +04:00
0b2b7fac0f Allow resizing 2019-12-25 16:26:13 +04:00
fbd7715b5a Reset on win, play the alternate music. 2019-12-25 01:56:05 +04:00
fd30774746 Eat power pellets. 2019-12-25 01:33:27 +04:00
e038db9500 Draw lives, add intro music, background siren
Move score to original position
2019-12-25 01:24:30 +04:00
67cf7ff7c5 Correct 8-bit wavs to 16-bit 2019-12-25 01:23:02 +04:00
5382e4896d Wakka Wakka 2019-12-24 23:39:27 +04:00