Conceptos
Enlace del objetivo
Enlaza un componente Objective de escena con el objetivo ordenado exacto que puede completar, sin copiar identificadores manualmente.
Qué enlaza y qué no enlaza
El enlace relaciona un único componente de escena derivado de Objective con un objetivo ordenado del capítulo padre. El objetivo ordenado conserva el ID, el orden y el estado; el componente detecta una condición física, temporal o externa y solicita la finalización.
Las acciones, servicios, cámaras, diálogos e inventarios no se convierten en objetivos por quedar bajo el mismo objeto. Deben emitir una señal hacia un componente Objective, un UnityEvent o la API pública.
Asignar el enlace
- 1Coloca el componente dentro de la jerarquía de su
Chapter, preferiblemente bajo el contenedor Objective XX generado. - 2Selecciona el componente. En Objective Link, utiliza el desplegable Ordered Objective; no escribas ni pegues el ID.
- 3Elige la fila por título y Identifier. El estado debe cambiar a Linked to Chapter > Objective.
- 4Pulsa Open Chapter & Objectives si quieres abrir la misma fila en la ventana central. Copy Current ID solo aparece cuando existe un ID que otra integración necesita leer.
Estados de diagnóstico
| Estado | Significado | Corrección |
|---|---|---|
| Linked | El capítulo padre contiene exactamente un objetivo ordenado con ese ID y un único componente canónico lo utiliza. | No requiere cambios. |
| Missing | El ID guardado ya no existe en el capítulo. | Selecciona una fila válida en Ordered Objective o utiliza Repair Link desde la fila. |
| Wrong Chapter | El ID existe, pero pertenece a otro capítulo. | Mueve el componente bajo el capítulo correcto o elige un objetivo del capítulo padre. |
| Duplicate Binding | Varios componentes Objective apuntan al mismo registro. | Conserva uno como enlace canónico; convierte los demás en emisores externos. |
| Missing Chapter | El componente no tiene un capítulo padre. | Elige Selected Chapter y usa Move Under Selected Chapter. |
| Missing Manager | El capítulo no pertenece a un ChapterManager cargado. | Corrige la jerarquía o selecciona el Manager propietario. |
| Prefab Stage | El prefab aislado no dispone del contexto de escena. | Configura el enlace en una instancia de escena. |
Mover, duplicar y eliminar
- Mover el componente: el ID permanece, pero Wrong Chapter aparece si el nuevo padre no contiene ese objetivo.
- Mover el objetivo ordenado dentro del capítulo: cambia el orden, no el ID; el enlace sigue siendo válido.
- Duplicar un componente: duplica también su ID y provoca Duplicate Binding hasta que se reasigne o deje de actuar como Objective.
- Duplicar un objetivo desde la ventana: recibe un ID único. Enlaza un componente nuevo con el selector.
- Eliminar el objetivo ordenado: el componente conserva el ID anterior y pasa a Missing; no se reasigna silenciosamente.
Las operaciones de la ventana registran Undo. Tras deshacer, vuelve a abrir el componente si el Inspector aún muestra un resultado anterior y pulsa Refresh en Validation.
Reparar sin ocultar el problema
Empieza por la fila afectada en Ordered Objectives. Su menú contextual puede seleccionar o señalar el componente enlazado, abrir su Inspector, ejecutar Repair Link o crear un contenedor ausente. Utiliza la reparación que conserva la intención del contenido; crear un contenedor no resuelve un ID que pertenece a otro capítulo.
Los cambios de autoría se desactivan mientras Unity ejecuta la escena. Sal de Play Mode para conservar Undo, serialización y la jerarquía correcta.
Componentes personalizados
Una subclase propia de Objective recibe exactamente la misma superficie Objective Link gracias al editor alternativo. Colócala bajo el contenedor, selecciona el objetivo ordenado y llama a RequestObjectiveCompletion() solo cuando su condición se cumpla.