create StaticNodeManager to hold all the nodes that need to get accessed globally

This commit is contained in:
2024-10-13 15:17:31 +10:00
parent be13b9dbfb
commit a9aed09bfa
15 changed files with 56 additions and 48 deletions

View File

@@ -16,11 +16,8 @@ var spawned_honeydews: Dictionary = {}
var honeydew_scene := preload("res://scenes/items/honeydew.tscn")
@onready var holder: Node = $/root/World/Items/Honeydew
func _ready() -> void:
assert(holder != null, "holder missing!")
super._ready()
_set_spawn_timer()
@@ -62,7 +59,7 @@ func _handle_honeydew_spawn(delta: float) -> void:
new_honeydew.HEIGHT_OFFSET,
randf_range(-HONEYDEW_SPAWN_SPREAD, HONEYDEW_SPAWN_SPREAD),
)
holder.add_child(new_honeydew)
StaticNodesManager.honeydew_holder.add_child(new_honeydew)
new_honeydew.global_position = global_position + new_pos
_put_honeydew(new_honeydew)

View File

@@ -11,7 +11,6 @@ var selected: bool = false
var is_relocating: bool = false
var ground_plane: Plane = Plane(Vector3.UP, 0)
@onready var camera: Camera3D = get_viewport().get_camera_3d()
@onready var selection_indicator: VisualInstance3D = $SelectionIndicator
@@ -26,7 +25,6 @@ func _init() -> void:
func _ready() -> void:
assert(camera != null, "camera missing!")
assert(selection_indicator != null, "selection_indicator missing!")
nav_agent.navigation_finished.connect(_on_nav_agent_navigation_finished)
super._ready()
@@ -95,8 +93,8 @@ func _set_target_click(mouse_pos: Vector2) -> void:
func _click_raycast(mouse_pos: Vector2) -> Vector3:
var from := camera.global_position
var to := camera.project_ray_normal(mouse_pos)
var from := StaticNodesManager.main_camera.global_position
var to := StaticNodesManager.main_camera.project_ray_normal(mouse_pos)
return ground_plane.intersects_ray(from, to)

View File

@@ -24,7 +24,6 @@ var advance_anim_delta_accum: float = 0
@onready var visibility_notifier: VisibleOnScreenNotifier3D = (
$VisibleOnScreenNotifier3D
)
@onready var main_camera: MainCamera = $/root/World/MainCamera
@onready var audio_player: SoundEffectsPlayer = (
$SoundEffectsPlayer
)
@@ -35,7 +34,6 @@ func _ready() -> void:
assert(animation_tree != null, "animation_tree missing!")
assert(visibility_notifier != null, "visibility_notifier missing!")
assert(ui_origin != null, "ui_origin missing!")
assert(main_camera != null, "main_camera missing!")
assert(anim_advance_indicator != null, "anim_advance_indicator missing!")
assert(audio_player != null, "audio_player missing!")
super._ready()
@@ -110,7 +108,7 @@ func _animate(delta: float) -> void:
advance_anim_delta_accum += delta
var advance_anim_step := maxi(
main_camera.advance_anim_step,
StaticNodesManager.main_camera.advance_anim_step,
SelectionManager.advance_anim_step
)
var frame := Engine.get_frames_drawn()