Added job component and queue system

- Introduced a new JobComponent and JobQueue to manage jobs in the game.
- Created two new jobs: DigJob and InfectJob with their respective scripts.
- Updated CrystalGlowComponent, FreeCameraComponent, MushroomGlowComponent, WaterEffectComponent to improve logging messages.
- Adjusted camera movement limits in FreeCameraGameCameraComponent for better control.
- Added FiniteStateMachine class for managing states of entities.
- Implemented GlowingIdle state as an example of using the state machine.
- Included a utility function to fetch file paths by extension from a directory.
This commit is contained in:
Dan 2024-06-06 15:49:05 +01:00
parent fc896925d6
commit bb5724429a
23 changed files with 311 additions and 29 deletions

View file

@ -15,7 +15,7 @@ func _ready() -> void:
if !tile_map:
Log.err("MushroomGlowComponent: TileMap not set")
Log.pr("MushroomGlowComponent ready")
tile_map.tilemap_updated.connect(add_mushroom_glow)
@ -23,7 +23,9 @@ func _ready() -> void:
tilemap_size = tile_map.get_used_rect().end - tile_map.get_used_rect().position
mushroom_layer = tile_map.get_layer_id_by_name('Mushrooms')
Log.pr(mushroom_layer)
Log.pr("MushroomGlowComponent ready, working on layer:", mushroom_layer)
add_mushroom_glow()
## Look for crystals in the scene and add the glow to the approprirate angle and colour