En Yi
1f8c2b2151
Add dark top bar in game
2024-10-12 23:11:55 +08:00
En Yi
5eb7561340
Add offset to window scaling
2024-10-12 15:08:59 +08:00
En Yi
44911658d0
Add basic window resizing
2024-10-12 15:02:08 +08:00
En Yi
f5fa46aeeb
Settle the window size and UIs
2024-10-12 13:35:42 +08:00
En Yi
b36592311a
Add water splash to urchins
2024-10-05 20:32:11 +08:00
En Yi
db8849a7de
Add urchin particles and update menus
2024-10-05 20:22:16 +08:00
En Yi
1382cf1370
Deal with urchin's particle effects
2024-10-05 19:18:42 +08:00
En Yi
e52c9445c9
Fix crash when player finish a level
...
This happens because the player exit entity is removed without checking
with the tilemap, causing it to linger
2024-10-05 19:07:55 +08:00
En Yi
8efa3015ad
Update urchin hitbox and bbox
...
This is so that wooden can be destroyed by urchin. Urchin can still be
crushed by a wooden crate though.
2024-09-30 22:47:27 +08:00
En Yi
7851e05a12
Fix regression in one-tile collision
2024-09-30 21:37:48 +08:00
En Yi
3520715655
Allow urchin to be crushed
...
LIMITATION
- Urchin can be crushed by wooden crates.
2024-09-29 17:58:07 +08:00
En Yi
d3db15a018
Add urchin sprite and fix its spike collision
2024-09-27 23:15:38 +08:00
En Yi
2ee1e38094
Remove unneeded code
2024-09-26 23:02:27 +08:00
En Yi
8bf1957e1e
Fix incorrect velocity reflection on collision
2024-09-26 21:31:24 +08:00
En Yi
9854654d61
Slightly resize UI for spawning urchin
2024-09-26 20:46:58 +08:00
En Yi
ce0ca96c67
Allow value snapping for urchin spawn velocity
...
Also, update the UI
2024-09-24 22:30:17 +08:00
En Yi
b275caf795
Add spawning urchin in editor
2024-09-23 21:55:06 +08:00
En Yi
8a731637f7
Merge branch 'main' into profiling
2024-09-08 23:06:26 +08:00
En Yi
4abe996640
Add urchin enemy
...
Changelog:
- Ctransform component now has a bounce coeffcient which determines
velocity reflection on contact.
2024-09-08 23:05:12 +08:00
En Yi
f6847f1ffd
Merge branch 'main' into profiling
2024-09-02 22:45:47 +08:00
En Yi
066ea5e080
Accumulate collided side before check
2024-09-02 22:45:16 +08:00
En Yi
3041f5df54
Merge branch 'remove_edge_check' into profiling
2024-09-02 22:02:37 +08:00
En Yi
41585f6938
Simplify edge velocity check
...
Internal Changelog:
- Use tile collision to determine which side has collided and perform
the velocity zeroing, instead of separating out.
2024-09-02 21:58:11 +08:00
En Yi
c8059300ac
Fix freecam bug on game restart
...
Changelog:
- Lock player if freecam is active
2024-08-27 16:02:55 +08:00
En Yi
e00e1ff8d2
Remove player on finish level
2024-08-27 15:49:21 +08:00
En Yi
d3ea551024
Tweak engine config to allow web build
...
Internal Changelog:
- Reduce particles number
- Use webGL2
2024-08-27 15:49:05 +08:00
En Yi
ca5c653b9d
Test integrate tracy into scenes
2024-08-24 21:44:23 +08:00
En Yi
b2beaea248
Experiment with Tracy profiler
2024-08-24 19:14:53 +08:00
En Yi
ef04e4ce42
Fix name mistake in README
2024-08-24 15:45:33 +08:00
En Yi
bbe3a22cc5
Replace ringbuffer with sc_queue
...
It is more flexible and uses less heap.
2024-08-24 15:30:32 +08:00
En Yi
cb9508a4b6
Update README
2024-08-24 14:43:52 +08:00
En Yi
10d48c1d70
Allow optional inits for scene
...
Particle system and entity management are now optional during scene
init.
2024-08-24 14:42:11 +08:00
En Yi
8645bbd963
Use heaptrack for memory profiling on main
2024-08-24 14:41:10 +08:00
En Yi
add592afd2
Refactor out entity removal function
...
This allows a singular entity removal method for the game
2024-08-24 12:43:49 +08:00
En Yi
fb0f16d984
Add addr sanitisation for main game
2024-08-24 00:26:17 +08:00
En Yi
24b407fec2
Free level select scene on exit
2024-08-24 00:26:05 +08:00
En Yi
03a4240c6d
Simplify and unify level restarting
...
Changelog:
- Add function to clear all game entities
- This functions is called in both editor and main game
2024-08-24 00:25:33 +08:00
En Yi
2fe3faf08f
Update exit rendering
2024-08-24 00:23:17 +08:00
En Yi
16714159bb
Tweak air point check depending on player stance
2024-08-21 16:28:41 +08:00
En Yi
9f496b4bee
Tweak player's swimming hitbox and hurtbox
2024-08-21 16:26:16 +08:00
En Yi
34041a68bb
Fix particle emitter not unloading on player death
2024-08-21 16:25:30 +08:00
En Yi
89176142b6
Readjust arrows and bombs spawning
...
Changelog:
- Make use of anchor point function
- Readjust offsets and anchor points of sprites
- Readjust hitboxes offset and sizes
2024-08-21 12:52:19 +08:00
En Yi
d45937da6a
Recenter player on ladders
2024-08-21 10:35:23 +08:00
En Yi
f4167c6270
Add chest count in main game
2024-08-20 16:38:07 +08:00
En Yi
bae17e8a87
Add level ending in main game
2024-08-20 14:52:26 +08:00
En Yi
f208964e7f
Fix rendering for finishing the level
2024-08-20 14:03:59 +08:00
En Yi
2be80ea6bf
Add sprites for player finishing the stage
...
Also add cave exit sprite
They are all placeholder for now.
2024-08-20 14:03:41 +08:00
En Yi
bf655daf8d
Add mempool macros to simplify definition
2024-08-19 20:29:49 +08:00
En Yi
056b50c431
Separate out component memory pools definition
...
Changelog:
- Refactor the EC header files to put struct in more sensible locations:
- Sprite and Particle Emitter + Configs are now assets, as they
should be
- Components type are now unsigned int, thus it is not sensitive to
any component enums
- Components enums are now pure index store. There are two sets of
components: Basic for engine use, Extended for game-specific ones
- Component memory pools are now defined on outside of engine. Majority
of the components will be game-specific, so it should be on the game
to define the components and the mempools for all of them.
2024-08-19 18:26:08 +08:00
En Yi
d2af974b29
Experiment with extern component mempool
...
Internal Changelog:
- Split assets from engine so that rres_packer do not need to implement
mempools
- The idea is that mempool is incomplete and requires implementation of
the mempool in scenes.
- Components are usually game-specific, so this is the first step to
decouple it from the engine.
2024-08-19 17:33:05 +08:00