Keybinds
Keybind - una tecla que el jugador puede reasignar en los ajustes de GTA y cuya tecla por defecto puede cambiar el dueño del servidor en el panel de administración de ai-core.
Cada tecla que escucha un script es un Keybind: el jugador puede cambiarla en los ajustes de GTA (Settings > Key Bindings > FiveM), el dueño del servidor puede cambiar su valor por defecto en el panel de administración de ai-core (pestaña Keybinds), y nada sondea las teclas en cada frame.
new Keybind
Registra una tecla reasignable. La tecla por defecto viene del panel de administración de ai-core cuando el dueño fijó una allí; si no, de defaultKey. La lib registra la asignación de tecla en cuanto ai-core respondió (un viaje de ida y vuelta al arrancar); sin ai-core usa defaultKey al momento.
Lado: Cliente · Espera: no (el registro termina en segundo plano)
new Keybind(options: KeybindOptions)local key = aiLib.Keybind.new(options)Parámetros
Prop
Type
KeybindOptions
Prop
Type
El tipo de la ayuda es KeyHintWhen.
Miembros
Prop
Type
Ejemplo
import { createLocale, Keybind, NuiScreen } from "@aicore-fivem/lib/client";
const Locale = createLocale<typeof import("../../locales/en.json")>();
const screen = new NuiScreen("tablet");
const openKey = new Keybind({
name: "mytablet_open",
description: Locale("KEYBIND_OPEN_TABLET"),
defaultKey: "F5",
hint: "foot",
icon: "tablet-screen-button",
hintLabel: Locale("HINT_TABLET"),
onPressed: () => {
if (screen.isOpen) return;
// Indica a la página qué tecla la cierra de nuevo.
screen.open({ action: "open", data: { closeKey: openKey.currentKey } });
},
});
// Mientras está esposado, la tecla no hace nada.
export const setCuffed = (cuffed: boolean): void => openKey.disable(cuffed);El comando de la asignación lleva la tecla: +<name>_<key> (+mytablet_open_F5). Cuando el dueño cambia el valor por defecto en el panel, la nueva tecla recibe su propia asignación, que reciben todos los jugadores, y la antigua deja de actuar. FiveM conserva las asignaciones antiguas y la asignación propia de cada jugador por comando, por eso la tecla forma parte del nombre. Otro recurso que necesite la tecla de este keybind pregunta al export de cliente de ai-core GetKeybindKey(name).
Mantén name estable: renombrarlo crea un keybind nuevo, y cada jugador pierde la tecla que asignó al antiguo. Nunca crees dos keybinds con el mismo nombre, ni siquiera en recursos distintos.
Pantallas y controles
NuiScreen, hud, keyHints y controls - tu propia NUI a pantalla completa, ocultar todos los HUD, líneas de ayuda de teclas y controles desactivados.
Capas a través de ai-core
medical, appearance, gestures, seatbelt, fuel, mdt, radial, world e inventory - llamadas de cliente que llegan al script de muerte, ropa, emotes, cinturón, combustible, MDT, menú radial, clima o inventario que use el servidor.