AI Core
Grundlagenai-appearance

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

Signatur
ApplyAppearance(ped: number, appearance: unknown): boolean
Lua
local 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

Signatur
GetPedAppearance(ped: number): unknown

Rü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

Signatur
WearOutfit(outfit: JobOutfit): void
Lua
exports['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.

Signatur
ReloadSkin(): void

Beispiel

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

EventSeiteArgumenteWas es ist
ai-core:client:characterPortraitClient (lokal)charId: number, url: stringai-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).

Auf dieser Seite