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
@@ -12,6 +12,7 @@ extends Resource
@export var resources: Array[ResourceDefinition] = []
@export var storages: Array[StorageDefinition] = []
@export var enemies: Array[EnemyDefinition] = []
@export var animals: Array[AnimalDefinition] = []
func validate() -> Array[String]:
@@ -31,6 +32,7 @@ func validate() -> Array[String]:
_validate_resources(errors)
_validate_storages(errors)
_validate_enemies(errors)
_validate_animals(errors)
return errors
@@ -97,6 +99,15 @@ func _validate_enemies(errors: Array[String]) -> void:
errors.append("EnemyDefinition: " + error)
func _validate_animals(errors: Array[String]) -> void:
for definition in animals:
if definition == null:
errors.append("animals contains a null definition")
continue
for error in definition.validate():
errors.append("AnimalDefinition: " + error)
static func _validate_dependency_ids(
ids: Array[StringName], label: String, errors: Array[String]
) -> void: