23 lines
751 B
GDScript
23 lines
751 B
GDScript
class_name PlanetSurfaceProfiles
|
|
extends RefCounted
|
|
|
|
const DEFAULT_PROFILE_ID: String = "rocky"
|
|
const PROFILES: Dictionary = {
|
|
"rocky": preload("res://surface/RockySurfaceProfile.tres"),
|
|
"gas": preload("res://surface/GasSurfaceProfile.tres"),
|
|
"void": preload("res://surface/VoidSurfaceProfile.tres"),
|
|
"research_lab": preload("res://surface/ResearchLabSurfaceProfile.tres"),
|
|
"boss": preload("res://surface/BossSurfaceProfile.tres"),
|
|
}
|
|
|
|
|
|
static func get_profile(profile_id: String) -> Resource:
|
|
return PROFILES.get(profile_id, PROFILES[DEFAULT_PROFILE_ID])
|
|
|
|
|
|
static func editor_profile_ids() -> Array:
|
|
var result: Array = []
|
|
for profile_id in PROFILES:
|
|
if bool(PROFILES[profile_id].editor_visible):
|
|
result.append(profile_id)
|
|
return result
|