# Plik: res://scripts/Planet.gd extends Node2D class_name Planet # Brak zagnieżdżonej klasy. Dane będą przypisane z GameData var data = null @onready var sprite: Sprite2D = $Sprite2D # --- Właściwości ruchu (będą pobierane z 'data') --- var orbit_center: Vector2 = Vector2.ZERO var angle: float = 0.0 func _ready(): _apply_visuals() # Tutaj w _ready synchronizujemy dane orbitalne func _apply_visuals(): # Sprawdza, czy 'data' jest obiektem i ma ścieżkę do tekstury if is_instance_valid(data) and data.texture_path != "": var planet_texture = load(data.texture_path) if planet_texture and sprite: sprite.texture = planet_texture func _process(delta): # Logika ruchu orbitalnego, używająca danych z 'data' if is_instance_valid(data) and data.orbit_radius > 0: data.angle += data.rotation_speed * delta var offset = Vector2(cos(data.angle), sin(data.angle)) * data.orbit_radius self.position = orbit_center + offset