refactor: unify animal content packs

This commit is contained in:
Rijad Zuzo
2026-08-12 21:19:04 +02:00
parent f8734422a0
commit 8707942c75
6 changed files with 114 additions and 10 deletions
+6 -6
View File
@@ -1,8 +1,6 @@
class_name AnimalCatalog
extends Resource
const CORE_CATALOG_PATH := "res://simulation/animals/definitions/core_animals.tres"
@export var animals: Array[AnimalDefinition] = []
var _definitions_by_id: Dictionary = {}
@@ -11,10 +9,12 @@ var _errors: Array[String] = []
static func create_core() -> AnimalCatalog:
var catalog := load(CORE_CATALOG_PATH) as AnimalCatalog
if catalog != null:
catalog.rebuild()
return catalog
var content := ContentCatalog.create_core()
if content == null or not content.is_valid():
return null
var catalog := AnimalCatalog.new()
catalog.animals = content.get_animals()
return catalog if catalog.rebuild().is_empty() else null
func rebuild() -> Array[String]: