trans_soup
ca534d91f0
work more on level 6.
2023-10-27 21:12:21 +02:00
trans_soup
0fa9117aa4
start working on level 6.
2023-10-27 20:55:39 +02:00
trans_soup
57014262cd
add "path" behaviour.
2023-10-27 20:55:27 +02:00
trans_soup
25f020dd78
fix error in enemy behaviour initialization.
2023-10-27 20:53:28 +02:00
trans_soup
094369460b
remove unused export.
2023-10-27 20:46:37 +02:00
trans_soup
ca608a2b8c
refactor level 4.
...
extract bounding wall generation into template.
2023-10-27 20:16:33 +02:00
trans_soup
cadacacfc4
fix oscillators in level 4.
...
fix oscillator creation in level 4 not using the right structure for
data passed to the function that creates oscillators.
2023-10-27 20:04:28 +02:00
trans_soup
01d20766b4
remove unused entity property id
.
2023-10-27 20:02:38 +02:00
trans_soup
c9dbfe9c2b
refactor entity metadata storage.
2023-10-27 20:02:13 +02:00
trans_soup
8ccff8a3bb
complete level 5.
2023-10-27 16:26:21 +02:00
trans_soup
8878134d33
extract oscillator creation into shared function.
2023-10-27 15:43:18 +02:00
trans_soup
c437b07b03
allow for levels to change player & goal sizes.
2023-10-27 15:40:23 +02:00
trans_soup
d85bd962a0
finish level 4.
2023-10-27 15:36:33 +02:00
trans_soup
21845018d0
fix sine behaviour's offset calculation.
2023-10-27 15:01:03 +02:00
trans_soup
2ca7cb9ecb
start working on level 4.
2023-10-27 14:35:20 +02:00
trans_soup
f416711f29
add optional offset to sine behaviours.
2023-10-27 14:28:05 +02:00
trans_soup
d672652473
add enemy behaviour "sine_y".
2023-10-27 14:11:18 +02:00
trans_soup
3a2cf99357
refactor enemy behaviour handling.
2023-10-27 14:10:51 +02:00
trans_soup
bcf7ecba0a
implement progress saving & loading.
2023-10-27 13:57:10 +02:00
trans_soup
e67e4f82fa
refactor level creation.
2023-10-27 13:42:35 +02:00
trans_soup
4bd9de007c
level design.
...
modify level 2 and create level 3.
2023-10-27 13:37:57 +02:00
trans_soup
5725179847
make player speed framerate-independent.
...
express player speed in pixels per second instead of pixels per tick.
2023-10-27 13:20:27 +02:00
trans_soup
68f7084d5b
allow levels to change player speed.
2023-10-27 13:17:30 +02:00
trans_soup
f14cdf8be4
add walls to level 1.
2023-10-27 13:13:46 +02:00
trans_soup
d39c226046
fix error in enemy loading code.
...
enemy loading no longer assumes that the enemy-describing data it
recieves has certain optional properties.
2023-10-27 13:12:10 +02:00
trans_soup
4de8228579
implement level winning and basic level progression.
2023-10-27 13:07:34 +02:00
trans_soup
5d8b44aec6
move player-enemy collision handling from player to enemy code.
2023-10-27 13:02:24 +02:00
trans_soup
ed942840eb
make player and goal non-physical outside levels.
...
make player and goal have their `physical` attribute set to false when
the level gets unloaded.
2023-10-27 12:59:56 +02:00
trans_soup
915136e755
add physical
attribute to entities.
...
entities with `physical` set to false will not collide with other
entities.
2023-10-27 12:58:10 +02:00
trans_soup
27e1f71600
minor refactor of entity creation.
2023-10-27 12:56:31 +02:00
trans_soup
884b276640
add (currently useless) goal entity.
2023-10-27 12:54:38 +02:00
trans_soup
c2a1acb335
tiny refactor of player code.
...
remove unused function.
2023-10-27 12:50:57 +02:00
trans_soup
434f1d9df8
little bit of refactoring.
2023-10-27 12:48:52 +02:00
trans_soup
b51b776137
rework level loading & restarting, and player death.
...
level loading is now based on events; the level loading code doesn't
know anything about how things are loaded, it just tells things to load.
player death is also now based on events; instead of directly restarting
the level, it simply sends out an event that the level handling code
listens for.
2023-10-27 12:35:04 +02:00
trans_soup
92fdab8fbd
minor refactor of entity movement.
...
rewrite entity `move` function to be defined in terms of `get_pos` and
`set_pos`, so that it doesn't need to know how entity positions are
stored.
2023-10-26 22:01:44 +02:00
trans_soup
56fd6f7ba8
refactor entity tests.
2023-10-26 21:59:40 +02:00
trans_soup
4893d15739
tiny refactor.
2023-10-26 21:29:49 +02:00
trans_soup
d3be0a782e
"fix" level resetting.
...
change it to something that's worse, but also more easy to identify as
bad in the future.
2023-10-26 21:28:14 +02:00
trans_soup
4f560c0c60
add onto the demo/test level.
2023-10-26 21:25:08 +02:00
trans_soup
98b59134a1
separate level data from level loading.
2023-10-26 21:20:27 +02:00
trans_soup
fe8616ff6f
tiny refactor.
2023-10-26 21:10:19 +02:00
trans_soup
377026c360
read enemies of level as data.
...
instead of having a demo enemy hardcoded into the level code.
2023-10-26 21:09:30 +02:00
trans_soup
8867a60c94
implement basic loss condition and restarting.
...
the "level" will now restart (currently to a hardcoded state) when the
player touches an enemy.
2023-10-26 02:22:49 +02:00
trans_soup
351846f4ac
implement collision detection for entities.
2023-10-25 21:45:18 +02:00
trans_soup
6c9199923e
refactor enemy behaviour code.
2023-10-25 21:33:24 +02:00
trans_soup
3c8954ad4e
implement basic enemy behaviour handling.
2023-10-25 21:04:53 +02:00
trans_soup
304dfc4eec
create enemy prototype.
2023-10-25 20:10:32 +02:00
trans_soup
30df97d31b
don't render invisible entities.
2023-10-25 20:10:12 +02:00
trans_soup
af3ec008c9
pass deltatime in seconds during ticks.
...
previously it was passed in milliseconds.
2023-10-25 20:08:29 +02:00
trans_soup
b367c4b3a3
add entity metadata.
2023-10-25 20:08:10 +02:00