# Plik: res://scripts/GameData.gd extends Node #class_name GameData # Ładowanie kontenera klas danych const CLASSES = preload("res://scripts/GameClasses.gd") # Ustawienie aliasów dla czytelności const PlanetDataClass = CLASSES.PlanetData const StarDataClass = CLASSES.StarData # --- GLOBALNY STAN GRY --- var sectors: Array[StarDataClass] = [] # ... (reszta kodu) ... # === FUNKCJE GENERUJĄCE GALAKTYKĘ === func _ready(): # ... (logika inicjalizacji) generate_galaxy() print(sectors[0].planets[0].name) func generate_galaxy(): sectors.clear() # na wszelki wypadek, żeby nie duplikować for i in range(2): var new_sector_data = StarDataClass.new() # --- Pozycja gwiazdy w przestrzeni galaktyki --- new_sector_data.position = Vector2( randf_range(0, 400), # szerokość galaktyki randf_range(0, 400) ) new_sector_data.randomize_properties() new_sector_data.planets = generate_planets_for_sector() sectors.append(new_sector_data) func generate_planets_for_sector() -> Array: var planets_list: Array = [] var planet_count = randi_range(2, 2) for i in range(planet_count): var p = PlanetDataClass.new() p.name = "Planeta %d" % (i + 1) p.randomize_properties() # --- Ustal promień orbity i kąt --- p.orbit_radius = (i + 1) * randf_range(100.0, 200.0) p.angle = randf_range(0.0, TAU) planets_list.append(p) return planets_list