<aside>
<img src="/icons/key-antique_gray.svg" alt="/icons/key-antique_gray.svg" width="40px" />
<aside>
<img src="/icons/triangle-alternate_gray.svg" alt="/icons/triangle-alternate_gray.svg" width="40px" />
Eventos e Inputs (API)
</aside>
Esta sección detalla la API completa del sistema: cómo se gestionan los controles mediante el contexto de salud y cómo fluye la lógica de eventos replicados.
<aside>
<img src="/icons/triangle_lightgray.svg" alt="/icons/triangle_lightgray.svg" width="40px" />
1. Inputs (IMC_Health)
</aside>
El sistema utiliza su propio Input Mapping Context llamado 🟦 IMC_Health. Este contexto gestiona las acciones de supervivencia y cooperación.
<aside>
🟥 IA_Interact: Acción de interacción mantenida.
- Lógica: Al mantener pulsado el botón sobre un aliado abatido, se carga una Barra de Interacción en la UI.
- Finalización: El input NO detiene el desangrado por sí mismo. Solo cuando la barra se completa al 100%, se dispara el evento de servidor 🟪 CES_Reanimation, que ejecuta toda la lógica para levantar y recuperar al aliado.
</aside>
<aside>
🟥 IA_Heal: Acción de autocuración.
- Funcionamiento: Llama al evento de cliente 🟪 CEOC_Heal.
- Efecto: No reproduce un Montage complejo. Simplemente genera el efecto visual de curación y restaura la cantidad de vida definida en la variable 🟩 Heal.
</aside>
<aside>
<img src="/icons/triangle_lightgray.svg" alt="/icons/triangle_lightgray.svg" width="40px" />
2. Recepción de Daño (Unificación)
</aside>
Para optimizar el ancho de banda y centralizar la lógica, el 🟦 BPC_Health_System descarta los eventos específicos (PointDamage, RadialDamage) y utiliza una única vía de entrada.
<aside>
🟥 Event AnyDamage: El "Embudo" de daño.
- Función: Actúa como el único punto de entrada para cualquier fuente de daño (Disparos, Explosiones, Caídas).
- Ventaja: Unifica la validación de estados (Escudos, Inmunidad) y la replicación en un solo flujo lógico, evitando duplicidad de código.
</aside>
<aside>
<img src="/icons/triangle_lightgray.svg" alt="/icons/triangle_lightgray.svg" width="40px" />
3. Eventos del Sistema (State Machine)
</aside>
Estos eventos gestionan los cambios de estado críticos y su replicación.
<aside>
- 🟪 CEOC_Downed: Punto de entrada al estado "Abatido".
- Se ejecuta en el cliente propietario para gestionar la UI y las restricciones de movimiento locales antes de notificar al servidor.
</aside>
<aside>
- 🟪 CES_Reanimation: Evento de Servidor.
- Se dispara únicamente cuando IA_Interact ha completado la carga.
- Restaura al jugador abatido y lo devuelve al estado de combate.
</aside>
<aside>
- 🟪 CE_Death: Lógica lógica de muerte.
- Gestiona las variables de estado y UI.
- Ragdoll: La activación física NO se hace por código aquí. Se delega al 🟥 AN_Character_Death incluido en el Montage de muerte. Esto asegura una sincronización perfecta entre la animación y la caída física.
</aside>
<aside>
- 🟪 CES_Respawn: Evento de Servidor para la reaparición.
- Reinicia las variables vitales.
- Teletransporte: La actualización de la posición del actor al
*PlayerStart* se ejecuta mediante 🟥 AN_Character_Respawn dentro del Montage de reaparición, evitando "popping" visual antes de que termine la animación.
</aside>
<aside>
<img src="/icons/triangle_lightgray.svg" alt="/icons/triangle_lightgray.svg" width="40px" />
4. Macros Internas
</aside>
<aside>
🟪 MCR_Update_Actor_Status:
- Macro encargada de la gestión temporal de estados.
- Define cuánto tiempo permanece el actor en estados especiales (como Inmunidad tras
respawn o interacciones) antes de volver al estado *Standard*.
</aside>
<aside>
<img src="/icons/backward_gray.svg" alt="/icons/backward_gray.svg" width="40px" />
Página Anterior
REQUISITOS DEL PROYECTO
</aside>
<aside>
<img src="/icons/forward_gray.svg" alt="/icons/forward_gray.svg" width="40px" />
Página Siguiente
DAÑO Y VISUALES
</aside>