Notify: documentación
Toda la interfaz de tu servidor con un solo estilo. Notificaciones, burbujas "[E]" flotando sobre el NPC, barras de progreso, avisos de calle y zona, controles en pantalla y anuncios. Y tus otros scripts siguen funcionando como están: toma el control de ox_lib, qb-core y otros sistemas de notificaciones.
Funciones
- 🔷 Burbujas en el mundo: una tecla neón + una píldora de cristal sobre el NPC / vehículo / objeto que tienes delante (o en unas coordenadas exactas). Varias teclas por burbuja, la tecla reacciona al pulsarla, y textos como "Presiona [E] para abrir" se limpian solos.
- 🔔 Notificaciones: éxito, error, aviso, información, dinero, policía, teléfono, admin. Con icono, barra de progreso, sonidos, duplicados agrupados (x2, x3…) y actualizables por id.
- Con imagen (la imagen del item de tu inventario o cualquier URL, iconos de apps del celular).
- Temporizadores (
timer = 120→ cuenta atrás 02:00) y notificaciones fijas con una barra de progreso que tú actualizas.
- ⏳ Barra y círculo de progreso con el mismo estilo: animaciones, escenarios, props, controles bloqueados y cancelar con X. Los mismos datos que
lib.progressBar, además deQBCore.Functions.Progressbar. - 🛣️ Avisos de calle (calle, zona, brújula, código postal con nearest-postal) y avisos de zona ("Entrando en · VINEWOOD"), sin saltar en cada cruce.
- ⌨️ Panel de controles para cualquier script.
- 📢 Anuncios para todos (
/aviso; el chat de rolo_interface deja/anunciopara los anuncios de los jugadores). - 🎛️ Ajustes del jugador (
/ajustesnotify): arrastra las notificaciones y la tarjeta de calle donde quieras, tamaño, fondo oscuro, duración, cuántas a la vez, volumen, tema de color, sonidos, agrupado, avisos de calle / zona, no molestar (/nomolestar) y tipos silenciados. Se guarda en el PC de cada jugador. - 👑 Panel de admin (
/notifyadmin): valores por defecto de todo el servidor con vista previa en vivo (posición, color, fondo, sonidos, altura de la burbuja, tiempos de calle / zona). Sin tocar el config, se aplica a todos al momento. - 🎵 Sonidos: campanas ROLO hechas en la interfaz (sin archivos), sonidos de GTA, tus propios
.oggo ninguno. - 📜 Historial (
/notificaciones) y un comando de prueba (/notifytest) que lo enseña todo en segundos. - 🌍 Español, inglés, portugués y francés · QBCore / Qbox / standalone · 0.00 ms en reposo.
Instalación
Pon
rolo_notifyenresources. Arráncalo justo después de tu core:ensure ox_lib ensure qb-core # o qbx_core ensure rolo_notifyApaga cualquier otro script de notificaciones / text UI que haga lo mismo.
Parches recomendados (1 línea cada uno, mira
patches/) para que el 100 % de tus scripts usen rolo_notify:ox_lib/resource/interface/client/textui.lua→patches/ox_lib_textui.lua(la caja "[E]" → burbuja)ox_lib/resource/interface/client/notify.lua→patches/ox_lib_notify.luaox_lib/resource/interface/client/progress.lua→ líneas enpatches/snippets.luaqb-core/client/functions.lua→ líneas de Notify + Progressbar enpatches/snippets.luaqb-core/client/drawtext.lua→patches/qb-core_drawtext.lua- Menú del target (el ojo), cualquier framework: rolo_notify no puede cambiar la pantalla de otro recurso por sí solo (en FiveM cada recurso tiene su propia NUI), así que el diseño ROLO del menú del target es una carpeta que copias una sola vez. Solo esa carpeta va dentro del target; el resto de
patches/se queda en rolo_notify.- qb-target (QBCore): copia la carpeta
patches/qb-target/htmldentro deqb-target/(reemplaza su carpetahtml, haz backup antes) yrestart qb-target. GPL-3.0 como qb-target. - ox_target (Qbox, ox_core y cualquier server que use ox_target; también el fork de RedM de RSG): copia la carpeta
patches/ox_target/webdentro deox_target/(reemplaza su carpetaweb, haz backup antes) yrestart ox_target. Cubre tambiénqtarget, porque ox_target lo provee. - Todos los menús del target, de cualquier script, salen con el diseño ROLO; el código y las opciones del target no cambian. Mientras qb-target u ox_target corran sin él, la consola te lo recuerda al arrancar (
Config.TargetSkinHint). Si actualizas el target vuelve su menú original: copia la carpeta otra vez. Para deshacerlo, pon tu backup.
- qb-target (QBCore): copia la carpeta
Cada parche solo actúa mientras rolo_notify está encendido: si lo paras, todo vuelve a la normalidad. Al actualizar esos recursos se pierden los parches: vuelve a pegarlos.
Scripts que tienen su propia opción de "sistema de notificaciones" en el config: ponla en
ox_lib/oxlib/qbcore.Admins: grupos del framework en
Config.AdminGroups, o el acerolo_notify.admin.
Comandos
| Comando | |
|---|---|
/ajustesnotify |
los ajustes propios del jugador |
/nomolestar |
no molestar on / off |
/notificaciones |
historial |
/notifytest |
enseña todas las funciones |
/aviso <texto> |
anuncio (admins) |
/notifyadmin |
panel de valores del servidor (admins) |
Exports (cliente)
exports.rolo_notify:Notify('Texto', 'success', 5000, 'Título')
exports.rolo_notify:Notify({ text = 'Te dieron Agua x2', type = 'success', image = 'water' })
exports.rolo_notify:Notify({ id = 'heist', title = 'Robo en curso', text = 'La policía llega en', type = 'police', timer = 120 })
exports.rolo_notify:Notify({ id = 'dl', text = 'Descargando...', sticky = true, progress = 40 }) -- llama otra vez con el mismo id para actualizar
exports.rolo_notify:CloseNotify('dl')
exports.rolo_notify:ShowPrompt('myscript:door', { text = '[E] Abrir puerta', coords = vector3(x, y, z) })
exports.rolo_notify:ShowPrompt('myscript:shop', { rows = { { key = 'E', text = 'Comprar' }, { key = 'G', text = 'Vender' } }, entity = ped })
exports.rolo_notify:HidePrompt('myscript:door')
exports.rolo_notify:ShowHints('driving', { title = 'Controles', keys = { { 'W', 'Acelerar' }, { 'X', 'Cancelar' } } })
exports.rolo_notify:HideHints('driving')
local ok = exports.rolo_notify:Progress({ label = 'Reparando', duration = 5000, canCancel = true,
anim = { dict = 'mini@repair', clip = 'fixing_a_ped' }, disable = { move = true, combat = true } })
Exports (servidor)
exports.rolo_notify:Notify(source, 'Texto', 'error')
exports.rolo_notify:NotifyAll('Texto', 'info')
exports.rolo_notify:CloseNotify(source, 'id')
exports.rolo_notify:Announce('Título', 'Mensaje', 9000)
O TriggerClientEvent('rolo_notify:notify', source, 'Texto', 'success').
Archivos abiertos (sin escrow)
config.lua · locales/*.lua · bridge/*.lua (toma de control de otros sistemas, permisos de admin) · patches/*
Sonidos propios
Pon Config.Sounds.mode = 'custom' y coloca success.ogg, error.ogg, warning.ogg, info.ogg, money.ogg, police.ogg, phone.ogg, admin.ogg en html/sounds/.
ROLO SCRIPT · Soporte y actualizaciones en nuestro Discord.
Escríbenos en el canal de soporte de Discord con el script, tu framework y el error de la consola.
