fix: wire movement controller before state machine; harden machine lookup
This commit is contained in:
@@ -65,6 +65,11 @@ func _build_player() -> void:
|
||||
shape.shape.height = 1.8
|
||||
player.add_child(shape)
|
||||
|
||||
# Movement controller MUST be attached first, before machine/children
|
||||
var mover_script = load("res://movement/player_movement_controller.gd")
|
||||
if mover_script:
|
||||
player.set_script(mover_script)
|
||||
|
||||
# State machine
|
||||
var sm := Node.new()
|
||||
sm.name = "MovementStateMachine"
|
||||
@@ -91,14 +96,6 @@ func _build_player() -> void:
|
||||
if st_script:
|
||||
st.set_script(st_script)
|
||||
|
||||
# Movement controller
|
||||
var mover_script = load("res://movement/player_movement_controller.gd")
|
||||
if mover_script:
|
||||
player.set_script(mover_script)
|
||||
# set_script does not auto-call _ready(); do it manually
|
||||
if player.has_method("_ready"):
|
||||
player._ready()
|
||||
|
||||
# Camera
|
||||
var camera := Camera3D.new()
|
||||
camera.name = "Camera3D"
|
||||
|
||||
Reference in New Issue
Block a user