Objective Components
Detectores de escena que heredan de Objective y solicitan la finalización de una fila enlazada.
Componentes
Elige cada componente por su responsabilidad: detectar una finalización, ayudar a otro detector, ejecutar una acción o prestar un servicio compartido.
Detectores de escena que heredan de Objective y solicitan la finalización de una fila enlazada.
Ayudantes y puentes serializables que colaboran con otro detector o sistema.
Ver componentes auxiliaresOperaciones reutilizables que se ejecutan desde el ciclo o desde código.
Ver accionesServicios compartidos, como el sonido de finalización de objetivos y capítulos.
Ver servicios| Señal del juego | Componente | No conviene cuando |
|---|---|---|
| Elección válida de interfaz | ButtonObjective | La interfaz ya completa desde código |
| Todos los objetos destruidos | DestructionObjective | Se desactivan o reciclan en lugar de destruirse |
| Varias señales con nombre | MultiActionObjective | Son tareas consecutivas completas |
| Objetos en destinos | ObjectPlacementObjective | La colocación depende de reglas ajenas al trigger |
| Cuenta atrás | TimedObjective | No existe una señal que inicie el tiempo |
| Collider dentro de una zona | TriggerObjective | Necesitas ruta o semántica de llegada del jugador |
| Jugador en un destino | WalkToObjective | El objeto aceptado no es el jugador |
Todos los detectores incluidos utilizan un Objective Link exacto, un estado local IsCompleted y un UnityEvent OnCompleted. Pueden detectar su condición en cualquier momento, pero solo avanzan cuando la fila enlazada es la posición Active del Chapter seleccionado. Las solicitudes tempranas, tardías, repetidas o con otro ID se rechazan sin repetir eventos.
Reset restaura el estado temporal del detector; no borra todo el progreso guardado. Cada referencia explica qué ocurre con temporizadores, ramas, triggers y referencias destruidas.
Si ningún componente representa bien la mecánica, crea una clase propia con Crear un componente Objective personalizado.
| Categoría | Tipos publicados | Papel en la progresión |
|---|---|---|
| Objective Components | Objective, ButtonObjective, DestructionObjective, MultiActionObjective, ObjectPlacementObjective, TimedObjective, TriggerObjective y WalkToObjective | Solicitan completar un objetivo ordenado enlazado |
| Supporting Components | PlacementTrigger e IntegratedObjective | Informan de una colocación u ofrecen un puente serializable para un sistema externo |
| Actions | Detonator y ObjectTransportAction | Ejecutan efectos o delegan movimiento, pero no eligen el orden |
| Services | ChapterAudioPlayer | Reproduce sonidos de objetivo y capítulo sin controlar su estado |
V1 no contiene ninguna clase PickupObjective en Runtime ni en la distribución. El componente anterior no detectaba recogidas ni aportaba un comportamiento propio. Conecta esa mecánica mediante un Objective personalizado, un IntegratedObjective o la API de finalización externa.
ChapterManager, Chapter, ChapterObjective, sus estados y los servicios de progresión se explican en Modelo del sistema y en Ejecución. No se mezclan con la lista de detectores y acciones. IProgressStore, IPathMovementAdapter e INpcRouteAdapter son contratos de programación, no Objective Components para añadir desde el Inspector.