Commit Graph

439 Commits (979533092ef2edd949675db16eb8a4ae5cf5a361)
 

Author SHA1 Message Date
En Yi 835b88f1f4 Fix coyote jump issue
Changelog:
- Add check for coyote timer when jumping
- Set ladder state AFTER the jump check
2023-10-08 12:13:03 +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 533e2998bc Include missing headers in rres packer 2023-10-08 12:07:17 +08:00
En Yi de29201a41 Fix uninitialised overlap value 2023-10-08 12:07:04 +08:00
En Yi 9f3061bae3 Implement coyote time 2023-09-29 21:18:08 +08:00
En Yi c2c00cfa51 Add quake-style jump buffering 2023-09-28 21:31:52 +08:00
En Yi 5398c08782 Integrate air timer in game scene 2023-09-28 20:47:10 +08:00
En Yi d4d3b317e2 Complete level data packing and loading 2023-09-28 16:10:20 +08:00
En Yi 359ac0a0ae Implement air meter
Changelog:
- Add air timer component
- Update movement component to keep track of x direction
    - This indicate the facing direction
- Implement air timer update system
- Add air timer component to player
- Render player's air timer
2023-09-27 22:08:16 +08:00
En Yi 26fa9af6b8 Allow null input for overlap for AABB check 2023-09-25 22:08:31 +08:00
En Yi ce8284ab39 Implement level ending
Internal Changelog:
- Activate on collected chest == all chest
- Add spawning level end entity
- Level ending in sandbox will just reset the scene
2023-09-25 22:04:13 +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 e6784a4d71 Fix crates hitbox collision with player 2023-09-23 13:39:18 +08:00
En Yi e8ebe0f89c Improve player collision to chests vs crates
Internal Changelog:
- Delay zeroing velocity on edge check to after hitbox update
- Update player velocity on hitting a crate explicitly
    - This is due to the zeroing velocity changes above
    - This essentially allow 'phasing' through chest but not wooden
      crates
- Render crates using material instead of fragile flag
2023-09-23 00:28:03 +08:00
En Yi a8e0d99870 Implement collecting chests
Internal Changelog:
- Set chest limit to 65535
- Handle (de-)spawning chest on coin counter
- Add coin increment to chest collision with player
2023-09-21 22:08:02 +08:00
En Yi e1a0c6e4e0 Implement Chest Entity
Internal Changelog:
- chest entity: Basically crates, but high def, and fragile
- Add new spawn type for chest
- Add atk modifier for player->chest
- Make crate non-fragile
- Ignore chest for collision check and move with player
2023-09-21 21:48:32 +08:00
En Yi 57f6a154b0 Add missing CMakeLists in res 2023-09-16 20:49:11 +08:00
En Yi 6d1dbc0084 Replace level data will compressed version 2023-09-02 19:58:46 +08:00
En Yi 9134fde7dc Add in rres packer
Packer will pack a rres file based on assets.info
It will also pack in player_spr.info

Will need to figure a way to incorporate sprite info for entities
2023-09-02 19:55:08 +08:00
En Yi 51618cadc6 Reset ZSTD context before starting 2023-09-02 19:54:17 +08:00
En Yi 789d1b2577 Fix incorrect check for invalid assets 2023-09-02 19:51:36 +08:00
En Yi e32fd0fc55 Modify main to use rres loading 2023-09-02 14:34:43 +08:00
En Yi 5cfa0c0fc0 Add id check for each chunk load 2023-09-02 14:34:24 +08:00
En Yi 20d5bd4ac7 Integrate loading RRES data pack
Changelog:
- Add in rres
    - Split rres header only into two files. Easier to deal with. Sorry
      Raysan...
- Add function to load assets from rres chunk
- Add function to load player sprite info from rres chunk
- Test loading rres in scene test
2023-09-01 20:50:45 +08:00
En Yi 044a5831ff Integrate ZSTD decompression to load level 2023-08-26 22:17:53 +08:00
En Yi 3ab442169a Update README 2023-08-22 20:41:18 +08:00
En Yi c283071eff Update README 2023-08-20 19:23:36 +08:00
En Yi 62de96609b Fix (hopefully) one way collision 2023-08-20 16:40:51 +08:00
En Yi 8dde1d5344 Fix quitting from game scene quits the game 2023-08-20 16:40:19 +08:00
En Yi 5cbacf8516 Change keybinds to be more convenient
Also, remove asan compile flag for web build
2023-08-20 11:47:51 +08:00
En Yi 3df97bce95 Merge web build and pc build 2023-08-19 20:47:24 +08:00
En Yi e2bce62a9d Update editor scene to be larger
also prevent last row to be modified
2023-08-19 20:33:31 +08:00
En Yi 7dcc142a2d Correct CMakeLists for web build 2023-08-19 20:33:07 +08:00
En Yi dee5ebd178 Revert to original CMakeLists 2023-08-19 19:42:57 +08:00
En Yi 567b7ab173 Update instruction on metal toggling 2023-08-19 19:34:36 +08:00
En Yi e26f972600 Update crate colour when toggling metal 2023-08-19 19:30:39 +08:00
En Yi cf8e2ca1be Revert some changes for sandbox drawing
Changelog:
- Remove entity culling when drawing, not good right now
- Put back number of entity in each tile
2023-08-19 19:20:02 +08:00
En Yi fae37eeecd Test out compilation for the web 2023-08-19 18:21:27 +08:00
En Yi 99c34b4107 Reduce the number of line draws 2023-08-19 17:42:50 +08:00
En Yi 731a84273a Render the selection tiles only once
This is not pretty as this does not allow double (de-)init of the
sandbox scene, but should suffice for now
2023-08-19 17:38:13 +08:00
En Yi e6683dfec1 Draw only things within the game rectangle
Testing it out on sandbox for now
2023-08-19 16:40:12 +08:00
En Yi 963ba34164 Make water runner travel faster
Changelog:
- introduce travel speed: how many move can the water runner make
    - normal movement cost : 2
    - water movement cost : 1
2023-08-19 13:03:13 +08:00
En Yi d2a19c5405 Refactor out engine init, deinit, and key handling
To avoid repeated code
2023-08-19 12:20:16 +08:00
En Yi b30646103d Remove velocity check in moveable system
It's funner that way
2023-08-18 23:26:47 +08:00
En Yi 42e5caf695 Implement quit function in main menu
Will need to revise this in the future
2023-08-18 23:10:48 +08:00
En Yi 209f09e307 Add WASD control for sandbox scene 2023-08-18 00:29:02 +08:00
En Yi 4d12a02f91 Tweak player's movement
Changelog:
- Increase ground friction generally.
- Reduce friction when the player is moving on the ground. To compensate,
  reduce player acceleration as well. Now, the player stops faster
  without losing too much max speed.
2023-08-17 23:20:52 +08:00
En Yi 3a4671cecc Add hurtbox to player
Changelog:
- Update player bbox update
- Update hitbox update system to account for player
- Reduce explosion size to allow better chaining behaviour
- Reduce lifetime of destroyed crates
2023-08-17 22:19:01 +08:00
En Yi 8c889690e8 Add null checks when creating new entity
Also, fix player spawn to reuse the player
2023-08-17 21:51:11 +08:00
En Yi 93e3b24e40 Fix transition out of water collision check 2023-08-17 21:24:52 +08:00