Changelog:
- Draw calls are now in rendering function of a scene
- This is to allow flexibility on how a scene is rendered
- Modify level scene to render level using RenderTexture
- This is to prepare for camera implementation later
- CloseWindow is called after all de-init functions is called
Squashed commit of the following:
commit 249fb96c63f68913ef632b8d1006e8a2d1c1b6d3
Author: En Yi <en.yi@tutanota.com>
Date: Sat Apr 15 22:51:08 2023 +0800
Ensure 120 column width limit
Changelog:
- this is just to avoid overly long line of code
commit 4b1ffa8fc89f17418de15f5fc3f0e73040f1d40c
Author: En Yi <en.yi@tutanota.com>
Date: Sat Apr 15 20:05:07 2023 +0800
Ensure style consistency in For loop
commit dcb41960407224592f78278313e97c2cc4bf66a5
Author: En Yi <en.yi@tutanota.com>
Date: Sat Apr 15 17:26:20 2023 +0800
Ensure consistency in code style
Internal Changelog:
- Use char* var instead of char *var. Preference
Changelog:
- Move Sprite struct into components
- Add asset field in engine
- Update scene test code to add engine for assets
- This fixes the crash when q is pressed
- Add sprite component to player
- Update render function to draw the sprite
Changelog:
- Add new component: container
- Add function to spawn a crate
- Refactor player spawning into level scene init
- Modify tile collision to work on bbox components
- Add actions to switch entity to spawn
- Update spawn system to spawn a crate
Changelog:
- Refactor ground and water state as a separate component
- Refactor upthrust and gravity calc. as a separate system targetting
the new component
- General modification to use the new component
Changelog:
- Add function to calculate offset needed to maintain anchor when
changing bbox size
- Simplify down bbox changing for player
- Some minor fix from last commit
Changelog:
- Adjust Gravity and movement accelaration
- Replace friction with acceleration instead of fractions of velocity
- Add upthrust in water
- Cut movement acceleration in water
Changelog:
- Add player state component to keep track of crouching
- Add crouch key handling
- Crouch mechanics:
- Reduce vertical bbox, slightly stretch horizontally
- Offset position to be on ground
- Reverse for un-crouching
- Can jump out of a crouch, reverting the bbox
- Dont allow un-crouch if there is something overhead (maybe should
check directly overhead, instead of a full overhead?)
- Above also apply for jump out of crouch
Changelog:
- Store player dir input in LevelScene Data instead of pointer,
to avoid use-after-free (non-fatal as mempool is used, but can cause
unintended behaviour)
- Only process player movement in system update. This is done in the
movement update system
- Normalise before apply acceleration, duh
Changelog:
- Add double buffer to handle key presses and release
- Add more actions
- Update action mapping of level scene
- Implement action function for level scene
- Remove action queue for Scene struct. This is handled by raylib
and the game engine
- Update scene struct with action function field
Internal Changelog:
- Implement scene boundary bounce system (subject to change)
- Add tilemap in preparation for collision system
- Allow early exit of scene testing
Internal Changelog:
- Update BBox component to use Vector2
- Add new CTransform component
- Implement level scene movement system and render system
- Implement scene test procedure
Changelog:
- Add actions and assets headers, not implemented and not used
- move original main to entManager_test
- Add proper main to create window and display nothing
- Implement scene base class and level scene
- Add a simple level scene test
- Update CMakeLists to compile main and tests