AI Core
API başvurusuai-core client export’ları

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

İmza
GetSeatbelt(): boolean | null
Lua
local 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

resource/client/crash.ts
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

İmza
GetSeatbeltProvider(): string | null
Lua
local 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

resource/client/hud.ts
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 }));

Bu sayfada