Catálogo / Utilidades / jex_interactions
jex_interactions
v1.0.0 StandaloneTodos los avisos de «pulsa E» de tu servidor, con un mismo estilo y personalizables al detalle.
[captura del script en juego · 1600 × 900]
Un solo recurso para todos los avisos de interacción de tu servidor, controlado desde un único sitio. Tecla, texto, texto secundario, color, forma y posición se ajustan al detalle desde config.lua: puedes dejarlo tal cual viene o afinarlo hasta que parezca hecho a medida, y el cambio se aplica a la vez en todos los scripts que lo usen.
Incluye Orbit Follow, el modo que saca el aviso de la esquina y lo coloca junto al personaje: sigue al jugador con un movimiento suave, cambia de lado cuando no tiene espacio y se mantiene siempre dentro de pantalla. Si prefieres algo clásico, tienes cinco posiciones fijas más.
Varios recursos pueden mostrar sus propios avisos a la vez: se ordenan por prioridad, cada recurso usa su propio espacio de identificadores y, si se detiene, sus avisos se eliminan solos. Es standalone —sin framework, sin ox_lib, sin dependencias— y en uso normal se mantiene en 0.00 ms.
- Orbit Follow: el aviso acompaña al personaje sin salirse de pantalla
- Seis posiciones: cuatro esquinas, inferior central y Orbit Follow
- Varios avisos a la vez, ordenados por prioridad
- Estados ok, warn y bad para señalar si la acción está disponible
- Avisos permanentes o con duración automática
- Tecla, texto principal y texto secundario personalizables
- Forma redonda o cuadrada, marco exterior opcional y colores a tu gusto
- API de 6 exports y 2 eventos, con limpieza automática por recurso
- Standalone, Lua 5.4 y listo para Asset Escrow con config.lua editable
- NUI ya compilada: no hace falta Node.js ni compilar nada
- 0.00 ms en uso normal
Instalación
- Copia la carpeta jex_interactions dentro de tu carpeta de recursos.
- Añade ensure jex_interactions a tu server.cfg, por encima de los scripts que vayan a usar su API.
- Abre config.lua y ajusta el estilo por defecto: posición, colores, forma, tecla, avisos visibles a la vez y duración máxima.
- Desde tus scripts, llama a exports['jex_interactions']:show{} con el id, la tecla y el texto de cada interacción.
- Usa update para cambiar un aviso en caliente y hide o hideAll para retirarlo.
- Comprueba el consumo con resmon 1: sin ningún aviso visible tiene que marcar 0.00 ms.
Exports principales
server.lua
-- Un aviso sencillo: "Pulsa E para abrir el garaje"
exports['jex_interactions']:show({
id = 'garage',
key = 'E',
label = 'Abrir garaje',
hint = 'Selecciona uno de tus vehiculos',
priority = 10,
})
-- Actualiza solo lo que cambia, sin reiniciar la animacion
exports['jex_interactions']:update('garage', {
state = 'bad',
label = 'Garaje no disponible',
})
-- Oculta uno concreto, o todos los de tu recurso
exports['jex_interactions']:hide('garage')
exports['jex_interactions']:hideAll()
Los 6 exports y los 2 eventos están documentados con sus parámetros y su valor de retorno en la documentación.
Changelog
El historial completo, versión a versión, está en la documentación.
Ver el changelogRequisitos
- Frameworks: Standalone
- Dependencias: Ninguna
Probado en la build recomendada de FiveM en la fecha de la última actualización.
Rendimiento medido
Medido en [hardware] con FiveM build [build] · [datos de ejemplo]