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

HUD

Tam ekran arayüzün açıkken her HUD’ı gizle ve göster, HUD’ların görünüp görünmediğini oku ve çalışan HUD’ın kendi ayarlarını aç.

Script’in tam ekran bir arayüz açtığında (bir dükkan, bir telefon, bir fotoğraf modu) HUD aradan çekilmelidir. Bu export’lar sunucu hangi HUD’ı çalıştırıyorsa onu gizler ve gösterir: ai-hud ya da ai-core’un tanıdığı üçüncü taraf bir HUD (tgiann-lumihud, tgiann-hudv2, tgiann-modern-hud, tgiann-statushud, jg-hud, 0r-hud-v3, codem-supreme-hud, Codem-BlackHUDV2, wais-hudv6, qb-hud, ps-hud). Tanınan bir HUD yokken ai-core bunun yerine minimap’i gizler ve gösterir. qb-hud ve ps-hud başka bir script tarafından gizlenemez: onlarla yalnızca minimap uyar.

Gizleme sebeplerle çalışır. Her resource HUD’ı kendi seçtiği bir adla gizler ("shop", "photo-mode"). Herhangi bir resource tarafından en az bir sebep ayarlıyken HUD’lar gizli kalır, böylece aynı anda açık iki ekran asla çatışmaz: HUD ancak ikisi de kapandıktan sonra geri gelir. Sebepler onları ayarlayan resource’a aittir ve o durduğunda kaldırılır.

HideHud

Resource’unun bir sebebiyle her HUD’ı (ve tanınan bir HUD çalışmıyorsa minimap’i) gizler. Tam ekran arayüzün açıldığında çağır.

Taraf: Client · Bekler: hayır

İmza
HideHud(reason: string): void
Lua
exports['ai-core']:HideHud(reason) -- ya da aiLib.hud.hide(reason)

Parametreler

Prop

Type

Dönüş değeri

Hiçbir şey. String olmayan bir reason yok sayılır.

Örnek

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

export function openShop(): void {
  hud.hide("shop"); // resourceExport("ai-core").HideHud("shop") ile aynı
  SetNuiFocus(true, true);
  SendNUIMessage({ action: "open" });
}

RegisterNuiCallback("close", (_data: unknown, cb: (r: unknown) => void) => {
  SetNuiFocus(false, false);
  hud.show("shop");
  cb(true);
});

Her HideHud aynı sebeple kendi ShowHud’ına ihtiyaç duyar. ai-core duran bir resource’un arkasını toplar, ama çalışmaya devam edip ShowHud çağırmayı unutan birinin arkasını toplamaz: HUD o zaman o oyuncu için gizli kalır.

ShowHud

Resource’unun tek bir gizleme sebebini temizler. Hiçbir resource’un sebebi kalmadığında HUD’lar geri gelir.

Taraf: Client · Bekler: hayır

İmza
ShowHud(reason: string): void
Lua
exports['ai-core']:ShowHud(reason) -- ya da aiLib.hud.show(reason)

Parametreler

Prop

Type

Dönüş değeri

Hiçbir şey.

Örnek

HideHud örneğine bak.

IsHudVisible

HUD’ların şu an görünüp görünmediğini, yani hiçbir resource’un ayarlı bir gizleme sebebi olmadığını söyler. Bir HUD resource’u bunu açılışta kullanır; sonrasında ai-core:client:hudVisible client event’ini izler.

Taraf: Client · Bekler: hayır

İmza
IsHudVisible(): boolean
Lua
local visible = exports['ai-core']:IsHudVisible() -- ya da aiLib.hud.visible()

Parametreler

Yok.

Dönüş değeri

boolean: hiçbir gizleme sebebi ayarlı değilse true, en az biri ayarlıyken false.

Örnek

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

// Özel bir HUD: doğru durumda başla, sonra her değişikliği izle.
function setVisible(visible: boolean): void {
  SendNUIMessage({ action: "visible", data: visible });
}

setVisible(hud.visible);
hud.onChange(setVisible);

OpenHudSettings

Çalışan HUD’ın kendi ayar ekranını açar (örneğin ai-hud’ın ya da tgiann-lumihud’ın /hud’ı). Radyal menünün HUD girişi bunu kullanır; her script kullanabilir.

Taraf: Client · Bekler: hayır

İmza
OpenHudSettings(): boolean
Lua
local opened = exports['ai-core']:OpenHudSettings() -- boolean

Parametreler

Yok.

Dönüş değeri

boolean: çalışan HUD’ın bir ayar ekranı varsa ve açması istendiyse true. Tanınan bir HUD çalışmıyorsa ya da çalışanın ayar ekranı yoksa false.

Örnek

resource/client/index.ts
import { notify, resourceExport } from "@aicore-fivem/lib/client";
import { Locale } from "common";

const core = resourceExport("ai-core");

RegisterCommand(
  "hudsettings",
  () => {
    if (!core.OpenHudSettings()) notify(Locale("NO_HUD_SETTINGS"), "error");
  },
  false,
);

HasHudSettings

Çalışan HUD’ın bir ayar ekranı olup olmadığını söyler, böylece bir "HUD ayarları" düğmesini gösterebilir ya da gizleyebilirsin.

Taraf: Client · Bekler: hayır

İmza
HasHudSettings(): boolean
Lua
local has = exports['ai-core']:HasHudSettings() -- boolean

Parametreler

Yok.

Dönüş değeri

boolean: tanınan bir HUD çalışıyorsa ve ayar ekranı varsa true, aksi halde false.

Örnek

resource/client/menu.ts
import { radial, resourceExport } from "@aicore-fivem/lib/client";

const core = resourceExport("ai-core");

// Yalnızca HUD’ın açılacak ayarları olduğunda görünen bir radyal öğe.
radial.add({
  id: "myscript_hud",
  label: "HUD",
  icon: "sliders",
  canShow: () => core.HasHudSettings(),
  onPressed: () => void core.OpenHudSettings(),
});

Bu sayfada