class_name PlanetSurfaceProfile extends Resource # Declarative recipe for a landed planet surface. The host scene only knows # how to apply one of these; the feature scene owns the actual resource nodes. @export var profile_id: String = "rocky" @export var features_scene: PackedScene # Which shader draws this surface's backdrop. Every profile names one - the # old "null means keep whatever the scene already had" convention is what let # the game and the setup editor drift apart, since each scene "already had" a # different shader. SurfaceBackground.apply_profile() is the only consumer. @export var background_shader: Shader = null @export var base_color: Color = Color(0.75, 0.75, 0.76, 1.0) @export var crater_color: Color = Color(0.44, 0.44, 0.45, 1.0) @export var highlight_color: Color = Color(0.89, 0.89, 0.9, 1.0) @export var caption_color: Color = Color(0.08, 0.16, 0.2, 1.0) @export var caption_outline_color: Color = Color(0.9, 0.95, 0.96, 0.8)