Refactored to be controller centric; added message buss pattern with early support eent types

This commit is contained in:
2026-10-24 21:41:44 -05:00
parent d70d4de95e
commit 85155df097
49 changed files with 234 additions and 33 deletions
@@ -1,16 +1,21 @@
class_name SpawnController extends Node
class_name SpawnController extends BaseController
@export var jet_factory: JetFactory
func _ready() -> void:
spawn_sides()
pass
func _controller_message(event: BaseEvent) -> void:
if event is BaseCreateJetEvent:
if event is CreateAlliesJetEvent:
spawn_allies_jet()
elif event is CreateAxisJetEvent:
spawn_axis_jet()
elif event is CreateNeutralJetEvent:
spawn_neutral_jet()
func spawn_sides() -> void:
spawn_allies_jet()
spawn_axis_jet()
func spawn_neutral_jet():
var _jet = spawn_jet(
@@ -18,7 +23,7 @@ func spawn_neutral_jet():
)
func spawn_allies_jet():
var _jet = spawn_jet(
var _jet = spawn_jet.call(
Globals.Faction.ALLIES, jet_factory.create_cpu_jet
)
@@ -2,5 +2,5 @@
[ext_resource type="Script" uid="uid://bd8ae65orh663" path="res://scripts/controllers/spawn_system/spawn_controller.gd" id="1_xcv1c"]
[node name="spawn_controller" type="Node3D"]
[node name="spawn_controller" type="Node"]
script = ExtResource("1_xcv1c")