feat: author emergent situations and dialogue
This commit is contained in:
@@ -13,6 +13,9 @@ extends Resource
|
||||
@export var storages: Array[StorageDefinition] = []
|
||||
@export var enemies: Array[EnemyDefinition] = []
|
||||
@export var animals: Array[AnimalDefinition] = []
|
||||
@export var situations: Array[SituationDefinition] = []
|
||||
@export var dialogue_intents: Array[ConversationIntentDefinition] = []
|
||||
@export var dialogue_template_catalogs: Array[ConversationTemplateCatalog] = []
|
||||
|
||||
|
||||
func validate() -> Array[String]:
|
||||
@@ -33,6 +36,9 @@ func validate() -> Array[String]:
|
||||
_validate_storages(errors)
|
||||
_validate_enemies(errors)
|
||||
_validate_animals(errors)
|
||||
_validate_situations(errors)
|
||||
_validate_dialogue_intents(errors)
|
||||
_validate_dialogue_template_catalogs(errors)
|
||||
return errors
|
||||
|
||||
|
||||
@@ -108,6 +114,32 @@ func _validate_animals(errors: Array[String]) -> void:
|
||||
errors.append("AnimalDefinition: " + error)
|
||||
|
||||
|
||||
func _validate_situations(errors: Array[String]) -> void:
|
||||
for definition in situations:
|
||||
if definition == null:
|
||||
errors.append("situations contains a null definition")
|
||||
continue
|
||||
for error in definition.validate():
|
||||
errors.append("SituationDefinition: " + error)
|
||||
|
||||
|
||||
func _validate_dialogue_intents(errors: Array[String]) -> void:
|
||||
for definition in dialogue_intents:
|
||||
if definition == null:
|
||||
errors.append("dialogue_intents contains a null definition")
|
||||
continue
|
||||
for error in definition.validate():
|
||||
errors.append("ConversationIntentDefinition: " + error)
|
||||
|
||||
|
||||
func _validate_dialogue_template_catalogs(errors: Array[String]) -> void:
|
||||
for catalog in dialogue_template_catalogs:
|
||||
if catalog == null:
|
||||
errors.append("dialogue_template_catalogs contains a null catalog")
|
||||
elif catalog.catalog_id.is_empty():
|
||||
errors.append("ConversationTemplateCatalog: catalog_id is empty")
|
||||
|
||||
|
||||
static func _validate_dependency_ids(
|
||||
ids: Array[StringName], label: String, errors: Array[String]
|
||||
) -> void:
|
||||
|
||||
Reference in New Issue
Block a user