spaceship/PlanetSurfaceProfiles.gd
Loïc Wisniewski cbe07bbb55 Add black hole planet and dark matter resource (#55)
A rare, deterministically-seeded landable body yielding a fourth
resource, dark matter, obtainable only through an extractor - never a
surface pickup. Reuses every existing generic system (resource/planet
definitions, surface profiles, extractor/transporter pipeline) with no
type-switch branching.

Also fixes a latent conquest-gating gap: a surface profile with no
authored PlanetSetup (like the black hole's "void") never registered
capture points at all, permanently blocking extractor placement.
register_capture_points() now treats zero required points as vacuously
conquered, and PlanetSurfaceController registers that zero-point state
explicitly when no setup exists.
2026-08-16 13:13:38 +02:00

13 lines
404 B
GDScript

class_name PlanetSurfaceProfiles
extends RefCounted
const DEFAULT_PROFILE_ID: String = "rocky"
const PROFILES: Dictionary = {
"rocky": preload("res://RockySurfaceProfile.tres"),
"gas": preload("res://GasSurfaceProfile.tres"),
"void": preload("res://VoidSurfaceProfile.tres"),
}
static func get_profile(profile_id: String) -> Resource:
return PROFILES.get(profile_id, PROFILES[DEFAULT_PROFILE_ID])