Emniyet kemeri
Sunucu hangi emniyet kemeri script’ini ya da HUD’ı çalıştırırsa çalıştırsın, yerel oyuncunun emniyet kemeri takıp takmadığını ve hangi script’in cevap verdiğini söyle.
Emniyet kemeri ai-smallresources’tan, qbx_seatbelt’ten ya da kendi kemeri olan bir HUD’dan (tgiann-lumihud, tgiann-hudv2, tgiann-modern-hud) gelebilir. ai-core hangisi çalışıyorsa onu okur; birkaçı çalışıyorsa bir HUD’ın kendi kemeri ai-smallresources’a üstün gelir. Kemere ihtiyaç duyan script’ler (kazada fırlama, bir "kemerini tak" ipucu, bir HUD ikonu) ai-core’a sorar ve hepsiyle çalışır.
ai-core kemer değişikliklerini, değişiklikleri bildiren script’lerden (ai-smallresources ve qbx_seatbelt) ai-core:client:seatbelt client event’i olarak iletir (lib seatbelt.onChange). HUD kemerleri için durumu ihtiyacın olduğunda oku.
GetSeatbelt
Yerel oyuncunun şu an emniyet kemeri takıp takmadığını söyler. Her karede değil, ihtiyacın olduğunda oku (bir kaza, bir aksiyon).
Taraf: Client · Bekler: hayır
GetSeatbelt(): boolean | nulllocal worn = exports['ai-core']:GetSeatbelt() -- ya da aiLib.seatbelt.isOn()Parametreler
Yok.
Dönüş değeri
boolean | null: kemer takılıyken true, değilken false. Desteklenen bir emniyet kemeri script’i çalışmıyorsa ya da çalışan net bir cevap vermiyorsa (örneğin kemerli bir aracın dışında) null (Lua’da nil).
Örnek
import { cache, seatbelt } from "@aicore-fivem/lib/client";
// Kaza algılaman tarafından çağrılır: sürücüyü yalnızca kemer yokken dışarı fırlat.
export function onHardCrash(): void {
if (cache.vehicle === false) return;
if (seatbelt.isOn() === true) return; // null = kemer script’i yok: kemer yok say
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
ai-core’un okuduğu emniyet kemeri script’inin resource adını döndürür.
Taraf: Client · Bekler: hayır
GetSeatbeltProvider(): string | nulllocal provider = exports['ai-core']:GetSeatbeltProvider() -- ya da aiLib.seatbelt.provider()Parametreler
Yok.
Dönüş değeri
string: resource adı ("ai-smallresources", "tgiann-lumihud"). Desteklenen script’lerden hiçbiri çalışmıyorsa null.
Örnek
import { seatbelt } from "@aicore-fivem/lib/client";
// Yalnızca bir script kemer sağladığında kemer ikonu çizen bir HUD.
const hasBelt = seatbelt.provider() !== null;
SendNUIMessage({ action: "beltIcon", data: hasBelt });
if (hasBelt) seatbelt.onChange((worn) => SendNUIMessage({ action: "belt", data: worn }));