HUD
Jedes HUD aus- und einblenden, solange deine Vollbild-UI offen ist, lesen, ob HUDs sichtbar sind, und die eigenen Einstellungen des laufenden HUD öffnen.
Wenn dein Skript eine Vollbild-UI öffnet (einen Shop, ein Handy, einen Fotomodus), sollte das HUD aus dem Weg gehen. Diese Exports blenden das HUD aus und ein, das der Server nutzt: ai-hud oder ein HUD eines Drittanbieters, das ai-core kennt (tgiann-lumihud, tgiann-hudv2, tgiann-modern-hud, tgiann-statushud, jg-hud, 0r-hud-v3, codem-supreme-hud, Codem-BlackHUDV2, wais-hudv6, qb-hud, ps-hud). Ohne bekanntes HUD blendet ai-core stattdessen die Minikarte aus und ein. qb-hud und ps-hud können von einem anderen Skript nicht ausgeblendet werden: Mit ihnen folgt nur die Minikarte.
Das Ausblenden arbeitet mit Gründen. Jede Ressource blendet das HUD unter einem Namen ihrer Wahl aus ("shop", "photo-mode"). HUDs bleiben ausgeblendet, solange mindestens ein Grund von irgendeiner Ressource gesetzt ist, sodass zwei gleichzeitig offene Bildschirme nie gegeneinander arbeiten: Das HUD kommt erst zurück, wenn beide geschlossen sind. Gründe gehören der Ressource, die sie gesetzt hat, und werden entfernt, wenn sie stoppt.
HideHud
Blendet jedes HUD (und die Minikarte, wenn kein bekanntes HUD läuft) unter einem Grund deiner Ressource aus. Rufe es auf, wenn deine Vollbild-UI sich öffnet.
Seite: Client · Wartet: nein
HideHud(reason: string): voidexports['ai-core']:HideHud(reason) -- oder aiLib.hud.hide(reason)Parameter
Prop
Type
Rückgabe
Nichts. Ein reason, der kein String ist, wird ignoriert.
Beispiel
import { hud } from "@aicore-fivem/lib/client";
export function openShop(): void {
hud.hide("shop"); // dasselbe wie resourceExport("ai-core").HideHud("shop")
SetNuiFocus(true, true);
SendNUIMessage({ action: "open" });
}
RegisterNuiCallback("close", (_data: unknown, cb: (r: unknown) => void) => {
SetNuiFocus(false, false);
hud.show("shop");
cb(true);
});Jedes HideHud braucht sein ShowHud mit demselben Grund. ai-core räumt hinter einer Ressource auf, die stoppt, aber nicht hinter einer, die weiterläuft und vergisst, ShowHud aufzurufen: Das HUD bleibt dann für diesen Spieler ausgeblendet.
ShowHud
Löscht einen Ausblende-Grund deiner Ressource. HUDs kommen zurück, wenn keine Ressource mehr einen Grund hat.
Seite: Client · Wartet: nein
ShowHud(reason: string): voidexports['ai-core']:ShowHud(reason) -- oder aiLib.hud.show(reason)Parameter
Prop
Type
Rückgabe
Nichts.
Beispiel
Siehe das Beispiel zu HideHud.
IsHudVisible
Sagt, ob HUDs gerade sichtbar sind, also keine Ressource einen Ausblende-Grund gesetzt hat. Eine HUD-Ressource nutzt es beim Start; danach folgt sie dem Client-Event ai-core:client:hudVisible.
Seite: Client · Wartet: nein
IsHudVisible(): booleanlocal visible = exports['ai-core']:IsHudVisible() -- oder aiLib.hud.visible()Parameter
Keine.
Rückgabe
boolean: true, wenn kein Ausblende-Grund gesetzt ist, false, solange mindestens einer gesetzt ist.
Beispiel
import { hud } from "@aicore-fivem/lib/client";
// Ein eigenes HUD: im richtigen Zustand starten, dann jeder Änderung folgen.
function setVisible(visible: boolean): void {
SendNUIMessage({ action: "visible", data: visible });
}
setVisible(hud.visible);
hud.onChange(setVisible);OpenHudSettings
Öffnet den eigenen Einstellungsbildschirm des laufenden HUD (zum Beispiel /hud von ai-hud oder tgiann-lumihud). Der HUD-Eintrag des Radialmenüs nutzt es; jedes Skript kann es nutzen.
Seite: Client · Wartet: nein
OpenHudSettings(): booleanlocal opened = exports['ai-core']:OpenHudSettings() -- booleanParameter
Keine.
Rückgabe
boolean: true, wenn das laufende HUD einen Einstellungsbildschirm hat und dieser zum Öffnen aufgefordert wurde. false, wenn kein bekanntes HUD läuft oder das laufende keinen Einstellungsbildschirm hat.
Beispiel
import { notify, resourceExport } from "@aicore-fivem/lib/client";
import { Locale } from "common";
const core = resourceExport("ai-core");
RegisterCommand(
"hudsettings",
() => {
if (!core.OpenHudSettings()) notify(Locale("NO_HUD_SETTINGS"), "error");
},
false,
);HasHudSettings
Sagt, ob das laufende HUD einen Einstellungsbildschirm hat, damit du einen Button „HUD-Einstellungen“ ein- oder ausblenden kannst.
Seite: Client · Wartet: nein
HasHudSettings(): booleanlocal has = exports['ai-core']:HasHudSettings() -- booleanParameter
Keine.
Rückgabe
boolean: true, wenn ein bekanntes HUD läuft und es einen Einstellungsbildschirm hat, sonst false.
Beispiel
import { radial, resourceExport } from "@aicore-fivem/lib/client";
const core = resourceExport("ai-core");
// Ein Radial-Eintrag, der nur erscheint, wenn das HUD Einstellungen zum Öffnen hat.
radial.add({
id: "myscript_hud",
label: "HUD",
icon: "sliders",
canShow: () => core.HasHudSettings(),
onPressed: () => void core.OpenHudSettings(),
});Spieler
Charakter, Geld, Jobs, Dienst und Gangs des lokalen Spielers lesen, prüfen, ob ein Charakter geladen ist, und Job- und Gang-Definitionen lesen.
Tastenbelegungen und Tastenhinweise
Die Taste lesen, mit der ein Keybind der Lib registriert wurde, Tastenhinweise im HUD ein- und ausblenden, die Hinweise lesen, die HUDs zeigen, und den Tastenbildschirm öffnen.