ai-appearance für Entwickler
Die Client-Exports von ai-appearance, die Struktur der Job-Outfits und die Events, die es mit dem Charakterbildschirm von AI Core nutzt.
Rufe ai-appearance nicht auf und lies seine Tabelle nicht aus deinem Skript. Nutze den Appearance-Layer von AI Core: appearance der Lib (Server appearance.get(charId), Client appearance.apply(ped, look), appearance.read(ped), appearance.openMenu(...), appearance.wearOutfit(outfit), appearance.reloadSkin()) oder aiLib.appearance in Lua. Er funktioniert mit jedem Kleidungsskript, das AI Core unterstützt, sodass der Betreiber ai-appearance ersetzen kann. Siehe die Lib-Referenz.
Client-Exports
Typisiert als AiAppearanceClientExports in @aicore-fivem/shared. Der Appearance-Adapter von AI Core ruft sie auf.
ApplyAppearance
Legt einem Ped ein Aussehen von ai-appearance an.
Seite: Client · Wartet: nein
ApplyAppearance(ped: number, appearance: unknown): booleanlocal ok = exports['ai-appearance']:ApplyAppearance(ped, look)Parameter
Prop
Type
Rückgabewert
boolean: true, wenn das Aussehen angelegt wurde. false, wenn das Aussehen ungültig ist oder das Modell des Peds nicht das Modell des Aussehens ist.
GetPedAppearance
Liest das Aussehen, das der lokale Spieler trägt.
Seite: Client · Wartet: nein
GetPedAppearance(ped: number): unknownRückgabewert
Das Appearance des lokalen Spielers oder null für jeden anderen Ped.
WearOutfit
Legt dem lokalen Spieler ein Job-Outfit (Uniform) an. Nur die aufgeführten Teile ändern sich, und das Outfit wird nie als eigenes Aussehen des Spielers gespeichert.
Seite: Client · Wartet: nein
WearOutfit(outfit: JobOutfit): voidexports['ai-appearance']:WearOutfit({ components = { { id = 11, collection = '', index = 55, texture = 0 } }, props = {} })JobOutfit
Prop
Type
OutfitPiece
Prop
Type
Rückgabewert
Nichts.
ReloadSkin
Legt dem lokalen Spieler wieder das gespeicherte Aussehen an (zieht ein Job-Outfit aus). Seite: Client · Wartet: nein.
ReloadSkin(): voidBeispiel
import { appearance } from "@aicore-fivem/lib/client";
import type { JobOutfit } from "@aicore-fivem/shared";
// Über AI Core: funktioniert mit ai-appearance und den anderen unterstützten Kleidungsskripten.
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);Outfit-Teile werden über den Kollektionsnamen und den Index darin angesprochen, nicht über die globale Drawable-Nummer von GTA. Das Basisspiel ist die Kollektion "". Über AI Core antworten appearance.wearOutfit und reloadSkin mit false, wenn das laufende Kleidungsskript keine Job-Outfits unterstützt.
Events
| Event | Seite | Argumente | Was es ist |
|---|---|---|---|
ai-core:client:characterPortrait | Client (lokal) | charId: number, url: string | ai-appearance sendet das Porträt jeder Karte (https://nui-img/...) an den Charakterbildschirm von AI Core. |
ai-appearance hört auf das Server-Event characterScreen (src, charIds) von AI Core, um zu wissen, welche Porträts es erstellen soll, und auf onCharacter der Lib, um einen geladenen Charakter anzukleiden oder den Editor zu starten.
Datenbank
Tabelle ai_appearance_characters: char_id (= ai_core_characters.id) und data (das Appearance-JSON). Nur ai-appearance schreibt sie. Der Adapter von AI Core liest sie für GetCharacterAppearance.
Log-Kanal
purchases: jeder bezahlte Besuch in einem Geschäft (über die Logs von AI Core: Konsole, Discord, Fivemanage, FiveM Stats, wie der Betreiber sie eingestellt hat).
ai-appearance
Der Charaktereditor für neue Charaktere, Kleidungsgeschäfte, Friseure und die Porträts auf dem Charakterbildschirm.
ai-inventory
Raster-Inventar mit Item-Größen, Schnellplätzen, Drops auf dem Boden, Lagern, Kofferräumen und Handschuhfächern, Shops, Crafting und Waffen. Beantwortet die APIs von ox_inventory und qb-inventory.