HUD
Masquer et afficher chaque HUD pendant que votre interface plein écran est ouverte, savoir si les HUD s’affichent, et ouvrir les réglages propres au HUD en cours.
Quand votre script ouvre une interface plein écran (un magasin, un téléphone, un mode photo), le HUD doit s’effacer. Ces exports masquent et affichent le HUD qu’utilise le serveur : ai-hud, ou un HUD tiers qu’ai-core connaît (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). Sans HUD connu, ai-core masque et affiche la minicarte à la place. qb-hud et ps-hud ne peuvent pas être masqués par un autre script : avec eux, seule la minicarte suit.
Le masquage fonctionne avec des raisons. Chaque ressource masque le HUD sous un nom de son choix ("shop", "photo-mode"). Les HUD restent masqués tant qu’au moins une raison est posée par une ressource, si bien que deux écrans ouverts en même temps ne se battent jamais : le HUD ne revient qu’après la fermeture des deux. Les raisons appartiennent à la ressource qui les a posées et sont retirées quand elle s’arrête.
HideHud
Masque chaque HUD (et la minicarte quand aucun HUD connu ne tourne) sous une raison de votre ressource. Appelez-le quand votre interface plein écran s’ouvre.
Côté : Client · Attend : non
HideHud(reason: string): voidexports['ai-core']:HideHud(reason) -- ou aiLib.hud.hide(reason)Paramètres
Prop
Type
Retour
Rien. Une reason qui n’est pas une chaîne est ignorée.
Exemple
import { hud } from "@aicore-fivem/lib/client";
export function openShop(): void {
hud.hide("shop"); // identique à 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);
});Chaque HideHud a besoin de son ShowHud avec la même raison. ai-core nettoie derrière une ressource qui s’arrête, mais pas derrière une ressource qui continue de tourner et oublie d’appeler ShowHud : le HUD reste alors masqué pour ce joueur.
ShowHud
Efface une raison de masquage de votre ressource. Les HUD reviennent quand plus aucune ressource n’a de raison.
Côté : Client · Attend : non
ShowHud(reason: string): voidexports['ai-core']:ShowHud(reason) -- ou aiLib.hud.show(reason)Paramètres
Prop
Type
Retour
Rien.
Exemple
Voir l’exemple de HideHud.
IsHudVisible
Indique si les HUD s’affichent en ce moment, c’est-à-dire qu’aucune ressource n’a posé de raison de masquage. Une ressource de HUD l’utilise au démarrage ; ensuite elle suit l’événement client ai-core:client:hudVisible.
Côté : Client · Attend : non
IsHudVisible(): booleanlocal visible = exports['ai-core']:IsHudVisible() -- ou aiLib.hud.visible()Paramètres
Aucun.
Retour
boolean : true quand aucune raison de masquage n’est posée, false tant qu’au moins une l’est.
Exemple
import { hud } from "@aicore-fivem/lib/client";
// Un HUD personnalisé : démarrer dans le bon état, puis suivre chaque changement.
function setVisible(visible: boolean): void {
SendNUIMessage({ action: "visible", data: visible });
}
setVisible(hud.visible);
hud.onChange(setVisible);OpenHudSettings
Ouvre l’écran de réglages propre au HUD en cours (le /hud d’ai-hud ou de tgiann-lumihud, par exemple). L’entrée HUD du menu radial l’utilise ; n’importe quel script le peut.
Côté : Client · Attend : non
OpenHudSettings(): booleanlocal opened = exports['ai-core']:OpenHudSettings() -- booleanParamètres
Aucun.
Retour
boolean : true quand le HUD en cours a un écran de réglages et qu’on lui a demandé de l’ouvrir. false quand aucun HUD connu ne tourne ou que celui en cours n’a pas d’écran de réglages.
Exemple
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
Indique si le HUD en cours a un écran de réglages, pour que vous puissiez afficher ou masquer un bouton « réglages du HUD ».
Côté : Client · Attend : non
HasHudSettings(): booleanlocal has = exports['ai-core']:HasHudSettings() -- booleanParamètres
Aucun.
Retour
boolean : true quand un HUD connu tourne et qu’il a un écran de réglages, false sinon.
Exemple
import { radial, resourceExport } from "@aicore-fivem/lib/client";
const core = resourceExport("ai-core");
// Une entrée radiale qui n’apparaît que quand le HUD a des réglages à ouvrir.
radial.add({
id: "myscript_hud",
label: "HUD",
icon: "sliders",
canShow: () => core.HasHudSettings(),
onPressed: () => void core.OpenHudSettings(),
});Joueur
Lire le personnage, l’argent, les métiers, le service et les gangs du joueur local, vérifier qu’un personnage est chargé, et lire les définitions des métiers et des gangs.
Raccourcis et aides de touches
Lire la touche avec laquelle un Keybind de la lib a été enregistré, afficher et masquer des aides de touches sur le HUD, lire les aides qu’affichent les HUD, et ouvrir l’écran des touches.