En Yi
7dd4c8413b
Add action to toggle grid for sandbox
2023-11-15 23:30:13 +08:00
En Yi
c64ef906e0
Reposition airtimer point check
2023-11-15 21:01:02 +08:00
En Yi
315d9849a7
Use water overlap for friction update
...
Also relocate the water overlap update
2023-11-15 20:53:41 +08:00
En Yi
0b5f34b9f3
Modify water upthrust behaviour
...
Changelog:
- Upthrust now depends on water area overlap with entity
- Fix complete overlap checks
2023-11-14 22:31:28 +08:00
En Yi
72c27ed92e
Add more SFX
...
Also, revert crate ground state behaviour
2023-11-13 14:23:31 +08:00
En Yi
c78dc50f50
Fix Boulder landing playing on spawning
...
Done by setting its ground state to 1. For consistency, this is
done to any entity that can 'land'. So far, this has no tangible
gameplay effects.
2023-11-13 11:34:39 +08:00
En Yi
cdb9d22e6c
'Fix' unused params for remaining functions
2023-11-11 13:10:00 +08:00
En Yi
8529a2c934
Use unsigned int for rres Id as per the struct
2023-11-11 13:04:24 +08:00
En Yi
816608029a
Fix more sign int usage
2023-11-11 12:48:28 +08:00
En Yi
45d9e2a5f6
Use unsigned int for boulder checks
2023-11-11 12:44:57 +08:00
En Yi
d947d95247
Fix signed int comparison
2023-11-11 12:44:37 +08:00
En Yi
97714eccf6
Use unsigned int for UI component count
2023-11-11 12:30:42 +08:00
En Yi
ffc890240b
Remove asset argument from entity creation
2023-11-11 12:18:45 +08:00
En Yi
2968172921
Use signed int for water runners
2023-11-11 12:06:19 +08:00
En Yi
15bb9c84ae
Remove unused prev_pos in box edge checking
2023-11-11 11:56:08 +08:00
En Yi
b150b3ad38
Change to manual init for entity tag map
...
The entity tag mapping is not that used often enough.
So, change it to manual init.
2023-11-11 11:14:22 +08:00
En Yi
029415e19f
Add particles for arrow destruction
2023-11-10 23:15:12 +08:00
En Yi
b17c521dfd
Add emitter loading from RRES
2023-11-07 21:58:20 +08:00
En Yi
d9b69aa09d
Draw air meter in main game scene
2023-11-07 21:53:42 +08:00
En Yi
d660b4e5a5
Add sound loading from rres file
...
Also, fixes mistake in raw data size when loading from RRES file
2023-11-07 21:49:15 +08:00
En Yi
4ede1abcc1
Fix crashes in main application
...
Changelog:
- Fix crash on empty emitter config
- Fix engine de-init order
- Update assets file to load for main application
2023-11-07 20:47:30 +08:00
En Yi
716393e9f4
Replace fmemopen when adding zst from rres
...
Changelog:
- Modify zst load function to accept buffer containing the zst data.
- Manually manage the buffer reading
- Reading from zst file will load entire zst in memory first before
passing into load function.
2023-11-07 20:46:05 +08:00
En Yi
26cc567b7f
Add emitter config to asset file loading
2023-11-06 21:36:23 +08:00
En Yi
e39e549cd0
Add sound in asset info
2023-11-06 20:49:30 +08:00
En Yi
0c540d5053
Move frame counter out of sprite component
...
This allows individual animation
2023-11-04 20:32:29 +08:00
En Yi
97f7afc401
Add more particle effects
...
Changelog:
- Add a dedicated tile destroy function
Similar reason to destroy entity
- Add more sprites for particles
2023-11-04 17:05:54 +08:00
En Yi
ebecc68941
Add better support for particle system
...
Changelog:
- Move sprite to emitter itself to allow better reusing emitter config
- Dedicate a function for destroying entity. This is helpful for dealing
with events that only occurs during entity destruction
2023-11-04 14:36:59 +08:00
En Yi
e4bd3fdcab
Update Cmake files
...
Changelog:
- Add Wextra compilation
- Update libzstd link directory
2023-11-02 23:11:28 +08:00
En Yi
a8b62f5aec
Integrate particle system into scenes
...
Changelog:
- Each scene will have its own particle system to maintain
- Crate destruction now emits particles
- Draw particles during screen renders
- May want to make this configurable
- Should be in general scene render
2023-11-02 22:44:52 +08:00
En Yi
43aa821c18
Refactor particle system
...
Changelog:
- Config should contain constants that determine the spawning of an
emitter.
- Move user_data and update_func to emitter, since these values can
change depending on the scene.
- Assets now load in Emitter Configs
2023-11-02 22:42:18 +08:00
En Yi
7939b8753e
Add particle emitter to assets
2023-11-02 21:44:25 +08:00
En Yi
ad421d724a
Add sprite rotation
2023-11-02 21:18:47 +08:00
En Yi
b01edded42
Add chest sprite
2023-11-02 20:37:55 +08:00
En Yi
dc0fcc381c
Add size support for particle
2023-11-01 22:36:44 +08:00
En Yi
edf78412dc
Improve particle system
...
Add support for texture and rotation
2023-11-01 22:18:40 +08:00
En Yi
7c86e0b3c5
Implement initial particle system
...
Changelog:
- Can only to one-shot burst emitter
- Add test for it
2023-10-21 14:37:54 +08:00
En Yi
290dafdf86
Rework scene rendering function
...
Split off- and on-screen rendering. Off-screen rendering would be a
system now
2023-10-21 10:48:21 +08:00
En Yi
7b2c48524d
Add skeleton for particle system
2023-10-18 21:45:19 +08:00
En Yi
b7a6c11b77
Improve scene drawing
...
Changelog:
- Add entity draw culling
- Tweak culling range
- Remove unnecessary draws for game scene, those are debug anyways
- Reorder draw in game scene for entity
2023-10-18 21:44:23 +08:00
En Yi
7dc66945da
Add in engine configuration
...
All engine constants now sits in a single header file for easy tweaking
Also, SFX list fields is now an array rather than a pointer instead.
2023-10-13 21:55:30 +08:00
En Yi
b9b0c11524
Separate out engine from scenes
...
This creates stronger separation the engine stuff from game
implementations.
way overdue tbh
2023-10-13 21:26:42 +08:00
En Yi
b3de60b4bc
Merge EC into engine directly
...
There is not much gained separating EC from engine. Merge it.
sc is still separated though.
2023-10-13 21:21:22 +08:00
En Yi
92555708d7
Put more boilerplate inits into engine init
2023-10-13 21:08:48 +08:00
En Yi
e318c65135
Add some more sfx
2023-10-10 21:57:45 +08:00
En Yi
2b79b5e6bc
implement simple sfx playback for jumping
2023-10-09 21:28:30 +08:00
En Yi
0a4c700bf6
Add camera lookahead when falling
2023-10-08 12:34:35 +08:00
En Yi
ae730ce029
Finish initial camera behaviour
...
x follows a mass-spring-damper system
y is simple lerp. Doesnt follow player when jumping
2023-10-08 12:13:03 +08:00
En Yi
b56e0e7f10
Clamp target position and revert to old behaviour
...
Need to figure out the y direction update. Should not be
the same way as x
2023-10-08 12:13:03 +08:00
En Yi
d1d8033b77
Only apply new behaviour to x direction only
2023-10-08 12:13:03 +08:00
En Yi
f8eab8acec
Adjust parameters for camera
2023-10-08 12:13:03 +08:00