Refactor systems to use EventBus for communication
- Removed direct dependencies on GameState in multiple systems, replacing them with EventBus for event-driven architecture. - Updated CameraShakeSystem to handle focus changes and trauma through EventBus. - Modified DeadliftSystem to manage lift efforts and hazards using EventBus. - Refactored GameManager to handle lift results and day transitions via EventBus. - Adjusted HazardController and HazardSystem to publish and respond to hazard events through EventBus. - Enhanced PlayerInputSystem to publish lift efforts and focus releases using EventBus. - Updated SoundManager to handle various audio events through EventBus, improving sound management. - Refined TunnelSystem to manage focus changes and lift efforts using EventBus. - Adjusted LiftProgressBar to update progress based on events from EventBus. - Enhanced LiftSyncController to synchronize animations based on lift efforts and focus events via EventBus.
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
[gd_scene load_steps=12 format=3 uid="uid://xtm08af0e82g"]
|
||||
|
||||
[ext_resource type="GameState" uid="uid://2gma8vvisnqo" path="res://Resources/GameState.tres" id="1_bo1nx"]
|
||||
[ext_resource type="Shader" uid="uid://dndm4jfifooyk" path="res://Shaders/TunnelVision.gdshader" id="1_jjgbg"]
|
||||
[ext_resource type="DayConfig" uid="uid://d30pwvrr7m72j" path="res://Resources/Day_Day1.tres" id="2_8gbba"]
|
||||
[ext_resource type="SoundBank" uid="uid://b8ouri8tqw8vp" path="res://Resources/SoundBank.tres" id="2_21xkr"]
|
||||
@@ -27,20 +26,16 @@ shader_parameter/vignette_color = Color(0, 0, 0, 1)
|
||||
[node name="Systems" type="Node" parent="."]
|
||||
|
||||
[node name="PlayerInputSystem" type="PlayerInputSystem" parent="Systems"]
|
||||
game_state = ExtResource("1_bo1nx")
|
||||
|
||||
[node name="TunnelSystem" type="TunnelSystem" parent="Systems" node_paths=PackedStringArray("vignette_overlay")]
|
||||
game_state = ExtResource("1_bo1nx")
|
||||
config = SubResource("TunnelConfig_8gbba")
|
||||
vignette_overlay = NodePath("../../Ui/Vignette")
|
||||
|
||||
[node name="SoundManager" type="SoundManager" parent="Systems"]
|
||||
bank = ExtResource("2_21xkr")
|
||||
game_state = ExtResource("1_bo1nx")
|
||||
|
||||
[node name="GameManager" type="GameManager" parent="Systems" node_paths=PackedStringArray("hazard_system", "minigame_container", "win_screen", "lose_screen")]
|
||||
days = Array[DayConfig]([ExtResource("2_8gbba"), ExtResource("4_344ge")])
|
||||
game_state = ExtResource("1_bo1nx")
|
||||
hazard_system = NodePath("../HazardSystem")
|
||||
minigame_container = NodePath("../../GameContainer")
|
||||
win_screen = NodePath("../../Ui/Win")
|
||||
@@ -49,14 +44,12 @@ main_menu_scene = ExtResource("4_6bp64")
|
||||
|
||||
[node name="CameraShakeSystem" type="CameraShakeSystem" parent="Systems" node_paths=PackedStringArray("camera")]
|
||||
camera = NodePath("../../Camera2D")
|
||||
game_state = ExtResource("1_bo1nx")
|
||||
min_focus_for_shake = 0.7
|
||||
|
||||
[node name="HazardSystem" type="HazardSystem" parent="Systems" node_paths=PackedStringArray("spawn_locations")]
|
||||
possible_hazards = Array[HazardDef]([ExtResource("3_kry3j")])
|
||||
spawn_locations = [NodePath("../../HazardSpots/Right"), NodePath("../../HazardSpots/Left")]
|
||||
hazard_prefab = ExtResource("4_21xkr")
|
||||
game_state = ExtResource("1_bo1nx")
|
||||
|
||||
[node name="GameContainer" type="Node" parent="."]
|
||||
|
||||
@@ -80,7 +73,6 @@ grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="LiftProgressBar" type="LiftProgressBar" parent="Ui"]
|
||||
game_state = ExtResource("1_bo1nx")
|
||||
anchors_preset = 12
|
||||
anchor_top = 1.0
|
||||
anchor_right = 1.0
|
||||
|
||||
Reference in New Issue
Block a user