AI Core
Referencia de la APIExports de cliente de ai-core

Cinturón de seguridad

Indica si el jugador local lleva el cinturón puesto y qué script responde, sea cual sea el script de cinturón o el HUD del servidor.

Un cinturón puede venir de ai-smallresources, de qbx_seatbelt o de un HUD con su propio cinturón (tgiann-lumihud, tgiann-hudv2, tgiann-modern-hud). ai-core lee el que esté en marcha; cuando hay varios, el cinturón propio de un HUD tiene prioridad sobre ai-smallresources. Los scripts que necesitan el cinturón (salir despedido en un choque, una ayuda de "abróchate", un icono en el HUD) preguntan a ai-core y funcionan con cualquiera de ellos.

ai-core transmite los cambios de cinturón como el evento de cliente ai-core:client:seatbelt (seatbelt.onChange de la lib), desde los scripts que avisan de los cambios: ai-smallresources y qbx_seatbelt. Para los cinturones de HUD, lee el estado cuando lo necesites.

GetSeatbelt

Indica si el jugador local lleva el cinturón puesto ahora mismo. Léelo cuando lo necesites (un choque, una acción), no en cada frame.

Lado: Cliente · Espera: no

Firma
GetSeatbelt(): boolean | null
Lua
local worn = exports['ai-core']:GetSeatbelt() -- o aiLib.seatbelt.isOn()

Parámetros

Ninguno.

Devuelve

boolean | null: true cuando el cinturón está puesto, false cuando no. null (nil en Lua) cuando no hay ningún script de cinturón compatible en marcha, o el que está en marcha no da una respuesta clara (por ejemplo fuera de un vehículo con cinturón).

Ejemplo

resource/client/crash.ts
import { cache, seatbelt } from "@aicore-fivem/lib/client";

// Lo llama tu detección de choques: saca despedido al conductor solo si no lleva cinturón.
export function onHardCrash(): void {
  if (cache.vehicle === false) return;
  if (seatbelt.isOn() === true) return; // null = no hay script de cinturón: se trata como sin cinturón
  const [x, y, z] = GetEntityCoords(cache.ped, true);
  SetEntityCoords(cache.ped, x, y, z + 1.0, false, false, false, false);
  SetPedToRagdoll(cache.ped, 3000, 3000, 0, false, false, false);
}

GetSeatbeltProvider

Devuelve el nombre de recurso del script de cinturón que lee ai-core.

Lado: Cliente · Espera: no

Firma
GetSeatbeltProvider(): string | null
Lua
local provider = exports['ai-core']:GetSeatbeltProvider() -- o aiLib.seatbelt.provider()

Parámetros

Ninguno.

Devuelve

string: el nombre del recurso ("ai-smallresources", "tgiann-lumihud"). null cuando no hay en marcha ninguno de los scripts compatibles.

Ejemplo

resource/client/hud.ts
import { seatbelt } from "@aicore-fivem/lib/client";

// Un HUD que dibuja un icono de cinturón solo cuando algún script ofrece cinturón.
const hasBelt = seatbelt.provider() !== null;
SendNUIMessage({ action: "beltIcon", data: hasBelt });
if (hasBelt) seatbelt.onChange((worn) => SendNUIMessage({ action: "belt", data: worn }));

En esta página