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
GetSeatbelt(): boolean | nulllocal 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
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
GetSeatbeltProvider(): string | nulllocal 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
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 }));