extends Node2D # sector.gd - spawns a star and several planets and connects signals @export var planet_scene: PackedScene = preload("res://scenes/planet.tscn") func _ready(): # create a simple star visual (Circle) - using a Node2D as placeholder var star = Node2D.new() star.name = "StarSprite" star.position = Vector2(480, 240) add_child(star) # Spawn planets for i in range(3): var p = planet_scene.instantiate() p.name = "Planet_%d" % i var angle = i * (PI * 2 / 3) var radius = 160 p.position = Vector2(480,240) + Vector2(cos(angle), sin(angle)) * radius add_child(p) p.connect("planet_selected", Callable(self, "_on_planet_selected")) func _on_planet_selected(planet): # find the PlanetMenu in the scene tree and open it var ui = get_tree().get_root().get_node("Main/UI/PlanetMenu") if get_tree().get_root().has_node("Main/UI/PlanetMenu") else null if ui: ui.open_for(planet) else: print("PlanetMenu not found, but selected: ", planet.name)