izzy HUD v5 – QBCore UI Marco con barras de progreso y notificaciones
Los HUD son complicados. Quieres algo limpio que no domine la pantalla, pero también necesitas que muestre salud, armadura, hambre, estrés y notificaciones sin sentirse abarrotado. izzy HUD v5 maneja todo eso y añade barras de progreso para acciones. Está diseñado específicamente para QBCore, con exportaciones integradas que reemplazan los sistemas de notificación y barra de progreso predeterminados.
Qué está incluido
Obtiene un reemplazo completo de HUD con barras de estado (salud, armadura, hambre, sed, estrés), un sistema de notificaciones con múltiples tipos (éxito, error, información) y barras de progreso para acciones con tiempo. Todo se integra con las funciones nativas de QBCore, por lo que no tiene que reescribir sus scripts existentes. El HUD es completamente personalizable: colores, posiciones, visibilidad, todo configurable.
Características principales
- Integración de QBCore – Reemplazo directo para QBCore.Functions.Notify y QBCore.Functions.Progressbar. Tus scripts existentes funcionan sin modificaciones.
- Notificaciones de múltiples tipos – Estilos de notificación de éxito, error e información. Soporta tanto notificaciones de texto simples como formato de texto dual (título + mensaje).
- Barras de progreso para acciones – Muestra el progreso de tareas como abrir cerraduras, crafting o comer. Incluye soporte para animaciones, props y funcionalidad de cancelación.
- Integración del sistema de estrés – Eventos de ganancia y alivio de estrés integrados. Funciona con los mecanismos de estrés de QBCore o puede adaptarse a sistemas personalizados.
- Visualización de barra de estado – Indicadores de salud, armadura, hambre, sed y otros estados. Diseño visual limpio que no bloquea el juego.
- Deshabilitar controles – Las barras de progreso pueden deshabilitar los controles del jugador durante las acciones. Evita explotaciones donde los jugadores corren o disparan mientras abren cerraduras.
- Soporte para props y animaciones – Las barras de progreso pueden activar animaciones y spawn de props. Hace que las acciones sean más inmersivas (el personaje sostiene un gancho mientras abre la cerradura).
- Duración personalizable – Establecer la duración de las notificaciones por llamada o usar el tiempo predeterminado. Te da control sobre cuánto tiempo permanecen en pantalla los mensajes importantes.
Perfecto para
- Servidores QBCore que desean un HUD predeterminado más limpio
- Servidores que necesitan mejores visualizaciones de barra de progreso para trabajos y acciones
- Servidores Roleplay que utilizan mecánicas de estrés (policía persecuciones, tiroteos)
- Desarrolladores que desean integración plug-and-play de HUD (sin reescritura de scripts)
Detalles Técnicos
- Compatibilidad del marco: QBCore solo. No compatible con ESX sin modificación.
- Funciones de exportación: Reemplaza QBCore.Functions.Notify y QBCore.Functions.Progressbar
- Eventos de estrés: Eventos del lado del cliente para ganar/aliviar estrés (izzy-hudv5:client:gainStress, izzy-hudv5:client:relieveStress)
- Actuación: Renderizado UI ligero. Impacto mínimo en los recursos incluso con notificaciones y barras de progreso activas.
Instalación
- Agrega izzy-hudv5 a tu carpeta de recursos
- Reemplazar la función de notificación QBCore en qb-core/client/functions.lua con la exportación proporcionada
- Reemplazar la función de barra de progreso de QBCore con la exportación de izzy HUD
- Configure los ajustes de HUD (colores, posiciones, visibilidad) en el archivo de configuración
- Prueba las notificaciones y barras de progreso con tus scripts existentes
- Ajuste de los desencadenantes de eventos de estrés si está utilizando mecánicas de estrés personalizadas
Ejemplo de Integración
Reemplace su función de notificación QBCore existente con esta:
function QBCore.Functions.Notify(text, texttype, length)
texttype = texttype == "success" and "success" or texttype == "error" and "error" or "inform"
length = length or 5000
if type(text) == 'table' then
local ttext = text.text or 'Placeholder'
local caption = text.caption or 'Placeholder'
exports['izzy-hudv5']:addNotification(type, ttext, caption, length)
else
exports['izzy-hudv5']:addNotification(type, texttype == 'error' and 'Error' or texttype == 'success' and 'Success' or 'Notify', text, length)
end
end
Para las barras de progreso, use:
function QBCore.Functions.Progressbar(name, label, duration, useWhileDead, canCancel, disableControls, animation, prop, propTwo, onFinish, onCancel)
exports['izzy-hudv5']:Progress({
name = name:lower(),
duration = duration,
label = label,
useWhileDead = useWhileDead,
canCancel = canCancel,
controlDisables = disableControls,
animation = animation,
prop = prop,
propTwo = propTwo,
}, function(cancelled)
if not cancelled then
if onFinish then onFinish() end
else
if onCancel then onCancel() end
end
end)
end
Lo que lo hace destacar
La mayoría de los HUD te obligan a reescribir tus scripts. izzy HUD v5 funciona como un reemplazo directo—modificas dos funciones en QBCore y todo lo demás funciona. El sistema de barra de progreso es particularmente sólido porque maneja animaciones, props y deshabilitaciones de control todo en una llamada. Eso significa que puedes hacer un minijuego de cerradura que congela el movimiento del jugador, muestra un prop de cerradura y reproduce la animación de cerradura sin manejar tres llamadas de script diferentes. Y como está diseñado específicamente para QBCore, no tienes que lidiar con problemas de compatibilidad de marco.
Relacionado QBOX Scripts
- Sistema de música para coche V3 [Independiente]
- Arena de paintball
- Teléfono VIP qbCore
- Llaves de vehículo renovadas
Léame
# Progress bar
function QBCore.Functions.Progressbar(name, label, duration, useWhileDead, canCancel, disableControls, animation, prop, propTwo, onFinish, onCancel)
exports['izzy-hudv5']:Progress({
name = name:lower(),
duration = duration,
label = label,
useWhileDead = useWhileDead,
canCancel = canCancel,
controlDisables = disableControls,
animation = animation,
prop = prop,
propTwo = propTwo,
}, function(cancelled)
if not cancelled then
if onFinish then
onFinish()
end
else
if onCancel then
onCancel()
end
end
end)
end
# Notification
function QBCore.Functions.Notify(text, texttype, length)
texttype = texttype == "success" and "success" or texttype == "error" and "error" or "inform"
length = length or 5000
if type(text) == 'table' then
local ttext = text.text or 'Placeholder'
local caption = text.caption or 'Placeholder'
exports['izzy-hudv5']:addNotification(type, ttext, caption, length)
else
exports['izzy-hudv5']:addNotification(type, texttype == 'error' and 'Error' or texttype == 'success' and 'Success' or 'Notify', text, length)
end
end
# Stress Events (client side)
TriggerEvent("izzy-hudv5:client:gainStress", math.random(1, 3))
TriggerEvent("izzy-hudv5:client:relieveStress", math.random(1, 3))





