En Yi
f5fa46aeeb
Settle the window size and UIs
2024-10-12 13:35:42 +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
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
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
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
019f39f84c
Implement basic level state management
...
Internal Changelog:
- Remove spawn position for entity
- Not used. If spawning is needed, use a spawning entity
- Put in state machine callback function
- Player spawning system is part of callback function
- Remove player spawning system
- Incorporate state transition in systems
2024-08-19 11:55:48 +08:00
En Yi
acb1b7858c
Add lookahead feature into main game
2024-08-17 14:59:17 +08:00
En Yi
e762f62f40
Decouple player dead and respawn system
2024-08-15 11:55:22 +08:00
En Yi
979533092e
Update main game render
2024-08-13 15:34:31 +08:00
En Yi
65b04523ce
Update game rendering
...
Internal Changelog:
- Port editor scene rendering improvements
- Make game scene ~640x480 for testing
2024-08-12 16:06:36 +08:00
En Yi
f20daa9cce
Update main game sprite rendering
2024-08-06 21:43:40 +08:00
En Yi
33de816841
Replace hardcoded scene values to enum
2024-07-07 16:48:55 +08:00
En Yi
b158bee1e8
Remove unused ActionResult
...
There is only one focused scene at a time as part of the design
limitation. Thus, it is no longer needed
2024-07-01 20:48:48 +08:00
En Yi
0653cbd0a2
Continue plan data struct for scene management
2024-06-20 21:41:14 +08:00
En Yi
0f09a7b2bd
Remove obsolete render function field
2024-05-04 20:40:15 +08:00
En Yi
bef2ee2813
Expose initial window size to scene
...
This is so that each scene does not need to hardcode render layer size
2024-05-04 18:28:53 +08:00
En Yi
75d019aa34
Rework rendering to allow multi-layer render
...
Internal Changelog:
- A scene now has a maximum amount of render texture. It is to be
rendered in order of the array by the engine.
- A scene now needs an explicit render system to draw onto the render
textures. The scene will also init the number of render layers
needed.
- The change is to allow more separate of concerns when it comes to
rendering. A scene can also now compartmentalise the rendered items,
which hopefully make understanding the code easier.
- Update all exisiting code to use the new render system.
2024-05-04 17:57:07 +08:00
En Yi
0d4089d9ce
Tweak scene render function
...
Delegate BeginDrawing and EndDrawing to individual scenes
2024-05-01 19:56:10 +08:00
En Yi
a2c061c5e8
Place position field into Entity
...
Position is so commonly used that placing it into Entity from the
CTransform components reduces the reference to CTransform.
Void Particle proved that it made development much easier.
2024-04-22 22:15:21 +08:00
En Yi
799941ed80
Draw particles before water
2023-11-21 21:01:47 +08:00
En Yi
911663b51f
Update game scene system
2023-11-20 22:19:18 +08:00
En Yi
d947d95247
Fix signed int comparison
2023-11-11 12:44:37 +08:00
En Yi
ffc890240b
Remove asset argument from entity creation
2023-11-11 12:18:45 +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
d9b69aa09d
Draw air meter in main game scene
2023-11-07 21:53:42 +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
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
ad421d724a
Add sprite rotation
2023-11-02 21:18:47 +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
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
064341e2eb
Initial implementation of camera system
...
Changelog:
- Implement effectively a PI controller
2023-10-08 12:13:03 +08:00
En Yi
5398c08782
Integrate air timer in game scene
2023-09-28 20:47:10 +08:00
En Yi
d54fee8935
Fix main game collision issue
...
Changelog:
- Add the refactored system to main game
- Reset coin counter to zero on (re-)start
2023-09-23 14:16:57 +08:00
En Yi
bba12b9b39
Add Sandbox button in main program
...
Changelog:
- First button now loads the levelpack
2023-08-14 21:54:25 +08:00
En Yi
e670af2519
Fix camera for levels smaller that viewport
2023-08-14 21:22:03 +08:00
En Yi
70d7fda22c
Add game scene
...
This is slightly different from the sandbox
- No editting tiles and spawnning
- Can switch levels
2023-08-14 18:37:29 +08:00