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
En Yi
939fe7bc4e
Allow boulder pushing when swimming
2023-08-17 21:10:11 +08:00
En Yi
216a0d9f0b
Fix rotation not reset on sandbox restart
2023-08-17 21:03:47 +08:00
En Yi
62ecd3c0fa
Create simple dead player respawn system
...
Changelog:
- Add player dead sprite
- Add function to create dead player entity
- It is easier to create a new entity than to transform an existing
one
- Update existing respawn system
2023-08-16 23:45:34 +08:00
En Yi
cb68c6c6f4
Add toggle to activate crates on spawn
2023-08-16 22:29:17 +08:00
En Yi
27cb6b05c6
Display help text for selection in sandbox
2023-08-16 22:08:11 +08:00
En Yi
86a29ccba8
Add sprite info for explosion
2023-08-16 21:41:50 +08:00
En Yi
d3029316b7
Add spikes sprite support
...
Add tile rotation. This is kind of a temp solution, since any sprite
could use rotation. So, may need to extend this for general sprite
2023-08-16 21:21:55 +08:00
En Yi
bda335fd6a
Fix mouse mode not activating buttons
2023-08-15 21:52:56 +08:00
En Yi
e7c6f9929b
Add sprite info for all crates
2023-08-15 21:08:46 +08:00
En Yi
b980f16def
Add sprite info for arrows and bombs
2023-08-15 20:43:04 +08:00
En Yi
6d97272420
Fix missing grid bound checking in game systems
2023-08-15 20:03:32 +08:00
En Yi
cd8ec0c7ed
Fix grid entities set update bug for OOB entities
...
When entities are marked for deletion, the tilecoord components
still exists, which can update the grid entities set, even if the
entity is not alive
2023-08-15 19:58:14 +08:00
En Yi
e1afdf696a
Add MIT license
2023-08-14 23:10:11 +08:00
En Yi
eec62d4581
Add test assets
2023-08-14 22:21:39 +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
En Yi
e0ea01a4de
Add level switching
...
Changelog:
- Water is now on a separate layer in LDtk
- Update water loading in assets functions
- Add actions to switch levels
2023-08-14 17:05:43 +08:00
En Yi
ca392a0efd
Remove loop when loading level pack
2023-08-14 16:01:10 +08:00
En Yi
f6f3214dc1
Add levelpack loading in asset loader
...
Changelog:
- Update main code to use assets loader
- Update level load test as well
2023-08-14 15:40:48 +08:00
En Yi
9387189927
Refactor out level loading function
2023-08-14 15:03:11 +08:00
En Yi
8e9efc622d
Refactor out level tilemap initialisation
...
- Rename sandbox scene initialisation, which is just a convenience
function
- Also refactor out tilemap related functions to a new file
2023-08-14 13:51:20 +08:00
En Yi
5de188c503
Implement level pack loading and testing
2023-08-14 12:16:15 +08:00
En Yi
5dbe2cc4d0
Add struct for loading in a level pack
2023-08-13 15:02:20 +08:00
En Yi
87c415d52c
Parse entity layer in ldtk script
2023-08-13 15:02:20 +08:00
En Yi
62703c0317
Add arrow sprite
2023-08-13 15:02:20 +08:00
En Yi
396551a572
Add LDtk converter
...
The script generate a levelpack to be parsed into the game
2023-08-13 15:02:20 +08:00
En Yi
cb703877cb
Add simple test for mempool
2023-08-13 14:54:10 +08:00
En Yi
494c9e9e46
Fix incorrect line test
...
By this project convention, the line extend will start from p1 and
end at p2, but not including p2 [p1, p2). Thus, existing tests are
testing a zero-length line, which should assert no collision.
Add test to properly test AABB edge collision with a line
Also update existing collision function to account for this
2023-08-13 12:34:27 +08:00