AI Core
API-Referenz

Client-Exports von ai-core

Jeder Client-Export von ai-core - Spielerdaten, HUD, Tastenhinweise, Welt-Sync, Items, Radialmenü, Gesten, Aussehen und Dialoge.

Typisiert als AiCoreClientExports in @aicore-fivem/shared (exports.ts).

TypeScript
import { resourceExport } from "@aicore-fivem/lib/client";
const core = resourceExport("ai-core");

Für die meisten gibt es einen einfacheren Lib-Helfer (in der letzten Spalte); Lua-Ressourcen haben dieselben Helfer auf aiLib.

Spieler

ExportWasLib
GetPlayerData(): AiPlayerData | nullDie Daten des lokalen Spielers: Charakter, Geld, Jobs, Dienst, Job, Gangs, aktive Gang, Metadaten.getPlayerData, onPlayerData
IsPlayerLoaded(): booleanOb ein Charakter geladen ist.
IsDead(): booleanDer lokale Spieler ist am Boden, in welchem Todesskript auch immer.medical.isDead
GetDefinitions(file: "jobs" | "gangs"): Record<string, unknown> | nullJob- oder Gang-Definitionen, wie die Panel-Datei sie hält.
Lua
local data = exports['ai-core']:GetPlayerData()
if data and data.duty == 'police' then
  -- on duty
end

HUD

ExportWasLib
HideHud(reason: string): voidBlendet jedes HUD aus, solange ein Grund besteht (die Gründe einer gestoppten Ressource gehen mit ihr).hud.hide
ShowHud(reason: string): voidEntfernt einen Grund.hud.show
IsHudVisible(): booleanOb HUDs gerade sichtbar sind.hud.visible
OpenHudSettings(): booleanÖffnet die eigenen Einstellungen des laufenden HUDs; false ohne.
HasHudSettings(): booleanOb das laufende HUD Einstellungen hat.
TypeScript
core.HideHud("photo-mode");
// ...
core.ShowHud("photo-mode");
Lua
exports['ai-core']:HideHud('photo-mode')
exports['ai-core']:ShowHud('photo-mode')

Tastenbelegungen und Tastenhinweise

ExportWasLib
GetKeybindKey(name: string): string | nullDie Taste, mit der ein Lib-Keybind registriert wurde; null bis zur Registrierung.Keybind.currentKey
ShowKeyHint(id: string, hint: KeyHintRequest): voidZeigt einen Tastenhinweis (label, keybind?, key?, icon?), bis er ausgeblendet wird.keyHints.show
HideKeyHint(id: string): voidBlendet ihn aus.keyHints.hide
GetKeyHints(): KeyHintView[]Die Hinweise, die HUDs gerade zeigen (id, key, label, icon?).
OpenKeyboard(): voidÖffnet den Tastenbildschirm: jede Taste mit einer Aktion.
Lua
exports['ai-core']:ShowKeyHint('noclip_speed', { label = 'Speed', key = 'SHIFT', icon = 'gauge' })

Wetter- und Zeit-Sync

ExportWasLib
PauseWorldSync(reason: string): voidPausiert den Wetter- und Zeit-Sync, solange ein Grund besteht (Innenräume, Szenen).world.pauseSync
ResumeWorldSync(reason: string): voidEntfernt einen Grund.world.resumeSync
IsWorldSyncPaused(): booleanOb der Sync gerade pausiert ist.

Items

ExportWasLib
OpenInventory(): voidÖffnet den eigenen Inventarbildschirm des Spielers.inventory.openInventory
HasItem(item: string, count?: number): booleanOb der Spieler das Item hat.inventory.hasItem
GetCurrentWeapon(): HeldWeapon | nullDas Waffen-Item in der Hand (name, label, image?).inventory.currentWeapon
OpenItemPicker(requestId: number, request: ItemPickerRequest): voidAdmin-Werkzeuge: das durchsuchbare Item-Raster; das Ergebnis kommt als MENU_EVENTS.menuResult.itemPicker

Radialmenü

Einträge erreichen das laufende Radialmenü; ai-core entfernt sie, wenn die hinzufügende Ressource stoppt.

ExportWasLib
AddRadialItem(item: RadialItem): voidFügt einen Eintrag hinzu oder ersetzt ihn (id, label, icon?, parent?, items?, canShow?, onPressed?, keepOpen?, whileDead?).radial.add
RemoveRadialItem(id: string): voidEntfernt einen Eintrag.radial.remove
RefreshRadial(): voidLiest jedes canShow eines offenen Rads erneut.radial.refresh
Lua
exports['ai-core']:AddRadialItem({
  id = 'myscript_engine', label = 'Engine', icon = 'power-off', parent = 'vehicle',
  canShow = function() return IsPedInAnyVehicle(PlayerPedId(), false) end,
  onPressed = function() ExecuteCommand('engine') end,
})

Gesten

ExportWasLib
GetGestureProvider(): string | nullDas Emote-Skript, das Hände hoch und Zeigen beantwortet.gestures.provider
IsHandsUp(): booleanDer lokale Spieler hat die Hände oben.gestures.isHandsUp
IsPointing(): booleanDer lokale Spieler zeigt.gestures.isPointing

Aussehen

ExportWasLib
ApplyAppearance(ped: number, look: CharacterAppearance): booleanLegt ein Aussehen aus GetCharacterAppearance über das aktive Kleidungsskript auf einen Ped desselben Modells.appearance.apply
GetPedAppearance(ped: number): CharacterAppearance | nullDas Aussehen, das ein Ped gerade trägt.appearance.read

Menüs, Eingabedialoge, Benachrichtigungen, Prompts, Fortschrittsbalken und Minispiele gehören zu ai-lib, nicht zu ai-core: siehe Skript-Exports.

Auf dieser Seite