AI Core
Temelai-appearance

Geliştiriciler için ai-appearance

ai-appearance’ın client export’ları, meslek kıyafeti şekli ve AI Core’un karakter ekranıyla kullandığı event’ler.

Script’inden ai-appearance’ı çağırma ya da tablosunu okuma. AI Core’un appearance katmanını kullan: lib appearance (server appearance.get(charId), client appearance.apply(ped, look), appearance.read(ped), appearance.openMenu(...), appearance.wearOutfit(outfit), appearance.reloadSkin()) ya da Lua’da aiLib.appearance. AI Core’un desteklediği her kıyafet script’iyle çalışır; böylece sunucu sahibi ai-appearance’ı değiştirebilir. Bkz. lib referansı.

Client export’ları

@aicore-fivem/shared içinde AiAppearanceClientExports olarak tiplenmiştir. AI Core’un appearance adaptörü bunları çağırır.

ApplyAppearance

Bir ped’e ai-appearance görünümü giydirir.

Taraf: Client · Bekler: hayır

Signature
ApplyAppearance(ped: number, appearance: unknown): boolean
Lua
local ok = exports['ai-appearance']:ApplyAppearance(ped, look)

Parametreler

Prop

Type

Dönüş değeri

boolean: görünüm uygulandıysa true. Görünüm geçersizse ya da ped’in modeli görünümün modeli değilse false.

GetPedAppearance

Yerel oyuncunun giydiği görünümü okur.

Taraf: Client · Bekler: hayır

Signature
GetPedAppearance(ped: number): unknown

Dönüş değeri

Yerel oyuncunun Appearance’ı, başka her ped için null.

WearOutfit

Yerel oyuncuya bir meslek kıyafeti (üniforma) giydirir. Sadece listelenen parçalar değişir ve kıyafet asla oyuncunun kendi görünümü olarak kaydedilmez.

Taraf: Client · Bekler: hayır

Signature
WearOutfit(outfit: JobOutfit): void
Lua
exports['ai-appearance']:WearOutfit({ components = { { id = 11, collection = '', index = 55, texture = 0 } }, props = {} })

JobOutfit

Prop

Type

OutfitPiece

Prop

Type

Dönüş değeri

Hiçbir şey.

ReloadSkin

Kayıtlı görünümü yerel oyuncuya geri giydirir (meslek kıyafetini çıkarır). Taraf: Client · Bekler: hayır.

Signature
ReloadSkin(): void

Örnek

import { appearance } from "@aicore-fivem/lib/client";
import type { JobOutfit } from "@aicore-fivem/shared";

// AI Core üzerinden: ai-appearance ve desteklenen diğer kıyafet script’leriyle çalışır.
const uniform: JobOutfit = {
  components: [
    { id: 11, collection: "", index: 55, texture: 0 },
    { id: 4, collection: "", index: 35, texture: 0 },
  ],
  props: [{ id: 0, collection: "", index: 46, texture: 0 }],
};

RegisterCommand("uniform", () => appearance.wearOutfit(uniform), false);
RegisterCommand("ownclothes", () => appearance.reloadSkin(), false);

Kıyafet parçaları GTA’nın global drawable numarasıyla değil, koleksiyon adı ve içindeki indeksle belirtilir. Temel oyun "" koleksiyonudur. AI Core üzerinden, çalışan kıyafet script’inin meslek kıyafeti desteği yoksa appearance.wearOutfit ve reloadSkin false cevap verir.

Event’ler

EventTarafArgümanlarNe olduğu
ai-core:client:characterPortraitClient (yerel)charId: number, url: stringai-appearance her kartın portresini (https://nui-img/...) AI Core’un karakter ekranına gönderir.

ai-appearance hangi portreleri yapacağını bilmek için AI Core’un server event’i characterScreen (src, charIds)’i, yüklenen bir karakteri giydirmek ya da oluşturucuyu başlatmak için de lib onCharacter’ı dinler.

Veritabanı

ai_appearance_characters tablosu: char_id (= ai_core_characters.id) ve data (Appearance JSON’u). Ona sadece ai-appearance yazar. AI Core’un adaptörü GetCharacterAppearance için onu okur.

Log kanalı

purchases: her ücretli mağaza ziyareti (AI Core’un logları üzerinden: sunucu sahibinin ayarladığı şekilde konsol, Discord, Fivemanage, FiveM Stats).

Bu sayfada