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).
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
| Export | Was | Lib |
|---|---|---|
GetPlayerData(): AiPlayerData | null | Die Daten des lokalen Spielers: Charakter, Geld, Jobs, Dienst, Job, Gangs, aktive Gang, Metadaten. | getPlayerData, onPlayerData |
IsPlayerLoaded(): boolean | Ob ein Charakter geladen ist. | |
IsDead(): boolean | Der lokale Spieler ist am Boden, in welchem Todesskript auch immer. | medical.isDead |
GetDefinitions(file: "jobs" | "gangs"): Record<string, unknown> | null | Job- oder Gang-Definitionen, wie die Panel-Datei sie hält. |
local data = exports['ai-core']:GetPlayerData()
if data and data.duty == 'police' then
-- on duty
endHUD
| Export | Was | Lib |
|---|---|---|
HideHud(reason: string): void | Blendet jedes HUD aus, solange ein Grund besteht (die Gründe einer gestoppten Ressource gehen mit ihr). | hud.hide |
ShowHud(reason: string): void | Entfernt einen Grund. | hud.show |
IsHudVisible(): boolean | Ob HUDs gerade sichtbar sind. | hud.visible |
OpenHudSettings(): boolean | Öffnet die eigenen Einstellungen des laufenden HUDs; false ohne. | |
HasHudSettings(): boolean | Ob das laufende HUD Einstellungen hat. |
core.HideHud("photo-mode");
// ...
core.ShowHud("photo-mode");exports['ai-core']:HideHud('photo-mode')
exports['ai-core']:ShowHud('photo-mode')Tastenbelegungen und Tastenhinweise
| Export | Was | Lib |
|---|---|---|
GetKeybindKey(name: string): string | null | Die Taste, mit der ein Lib-Keybind registriert wurde; null bis zur Registrierung. | Keybind.currentKey |
ShowKeyHint(id: string, hint: KeyHintRequest): void | Zeigt einen Tastenhinweis (label, keybind?, key?, icon?), bis er ausgeblendet wird. | keyHints.show |
HideKeyHint(id: string): void | Blendet 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. |
exports['ai-core']:ShowKeyHint('noclip_speed', { label = 'Speed', key = 'SHIFT', icon = 'gauge' })Wetter- und Zeit-Sync
| Export | Was | Lib |
|---|---|---|
PauseWorldSync(reason: string): void | Pausiert den Wetter- und Zeit-Sync, solange ein Grund besteht (Innenräume, Szenen). | world.pauseSync |
ResumeWorldSync(reason: string): void | Entfernt einen Grund. | world.resumeSync |
IsWorldSyncPaused(): boolean | Ob der Sync gerade pausiert ist. |
Items
| Export | Was | Lib |
|---|---|---|
OpenInventory(): void | Öffnet den eigenen Inventarbildschirm des Spielers. | inventory.openInventory |
HasItem(item: string, count?: number): boolean | Ob der Spieler das Item hat. | inventory.hasItem |
GetCurrentWeapon(): HeldWeapon | null | Das Waffen-Item in der Hand (name, label, image?). | inventory.currentWeapon |
OpenItemPicker(requestId: number, request: ItemPickerRequest): void | Admin-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.
| Export | Was | Lib |
|---|---|---|
AddRadialItem(item: RadialItem): void | Fügt einen Eintrag hinzu oder ersetzt ihn (id, label, icon?, parent?, items?, canShow?, onPressed?, keepOpen?, whileDead?). | radial.add |
RemoveRadialItem(id: string): void | Entfernt einen Eintrag. | radial.remove |
RefreshRadial(): void | Liest jedes canShow eines offenen Rads erneut. | radial.refresh |
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
| Export | Was | Lib |
|---|---|---|
GetGestureProvider(): string | null | Das Emote-Skript, das Hände hoch und Zeigen beantwortet. | gestures.provider |
IsHandsUp(): boolean | Der lokale Spieler hat die Hände oben. | gestures.isHandsUp |
IsPointing(): boolean | Der lokale Spieler zeigt. | gestures.isPointing |
Aussehen
| Export | Was | Lib |
|---|---|---|
ApplyAppearance(ped: number, look: CharacterAppearance): boolean | Legt ein Aussehen aus GetCharacterAppearance über das aktive Kleidungsskript auf einen Ped desselben Modells. | appearance.apply |
GetPedAppearance(ped: number): CharacterAppearance | null | Das 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.