AI Core
API-Referenzai-core: Client-Exports

Sicherheitsgurt

Feststellen, ob der lokale Spieler angeschnallt ist und welches Skript antwortet, egal welches Gurt-Skript oder HUD der Server nutzt.

Ein Sicherheitsgurt kann von ai-smallresources, von qbx_seatbelt oder von einem HUD mit eigenem Gurt kommen (tgiann-lumihud, tgiann-hudv2, tgiann-modern-hud). ai-core liest das, das läuft; wenn mehrere laufen, gewinnt der eigene Gurt eines HUD gegen ai-smallresources. Skripte, die den Gurt brauchen (ein Herausschleudern bei einem Unfall, ein Hinweis „Anschnallen“, ein HUD-Icon), fragen ai-core und funktionieren mit jedem von ihnen.

ai-core gibt Gurtänderungen als Client-Event ai-core:client:seatbelt weiter (Lib seatbelt.onChange), von den Skripten, die Änderungen melden: ai-smallresources und qbx_seatbelt. Für die HUD-Gurte lies den Zustand, wenn du ihn brauchst.

GetSeatbelt

Sagt, ob der lokale Spieler gerade angeschnallt ist. Lies es, wenn du es brauchst (ein Unfall, eine Aktion), nicht in jedem Frame.

Seite: Client · Wartet: nein

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

Parameter

Keine.

Rückgabe

boolean | null: true, wenn der Gurt angelegt ist, false, wenn nicht. null (nil in Lua), wenn kein unterstütztes Gurt-Skript läuft oder das laufende keine klare Antwort gibt (zum Beispiel außerhalb eines Fahrzeugs mit Gurt).

Beispiel

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

// Von deiner Unfallerkennung aufgerufen: den Fahrer nur ohne Gurt hinausschleudern.
export function onHardCrash(): void {
  if (cache.vehicle === false) return;
  if (seatbelt.isOn() === true) return; // null = kein Gurt-Skript: als nicht angeschnallt behandeln
  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

Gibt den Ressourcennamen des Gurt-Skripts zurück, das ai-core liest.

Seite: Client · Wartet: nein

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

Parameter

Keine.

Rückgabe

string: der Ressourcenname ("ai-smallresources", "tgiann-lumihud"). null, wenn keines der unterstützten Skripte läuft.

Beispiel

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

// Ein HUD, das ein Gurt-Icon nur zeichnet, wenn irgendein Skript einen Gurt bereitstellt.
const hasBelt = seatbelt.provider() !== null;
SendNUIMessage({ action: "beltIcon", data: hasBelt });
if (hasBelt) seatbelt.onChange((worn) => SendNUIMessage({ action: "belt", data: worn }));

Auf dieser Seite