Configuración
Cada opción de config.lua con su valor por defecto y qué cambia. Iconos, sonidos, traducciones y alias de QBCore.
Puedes abrirlo, leerlo y editarlo. Está comentado línea a línea. Lo único cifrado es la lógica de negocio; la configuración es tuya.
Notificaciones
| Opción | Por defecto | Qué cambia |
|---|---|---|
Config.Position |
'top-center' |
Dónde salen en pantalla |
Config.MaxVisible |
4 |
Cuántas a la vez. El resto hace cola y sale un +N |
Config.Duration |
4500 |
Milisegundos base |
Config.ReadingTime |
true |
Alarga la duración según lo que haya que leer |
Config.Style |
'cristal' |
Forma de la tarjeta: cristal · solido · minima · barra |
Config.Accent |
'#E8B466' |
Color del anillo y de las notificaciones neutras |
Config.Opacity |
1.0 |
Opacidad de la tarjeta, de 0.5 a 1 |
Config.CountdownRing |
true |
La O de ORBE dibujándose como cuenta atrás |
Config.ProgressBar |
false |
Barra lineal en vez del anillo |
Config.Eyebrow |
false |
Cabecera automática con el tipo |
Config.PauseOnHover |
true |
Para el temporizador al pasar el ratón |
Todo lo de esta tabla se puede cambiar desde el juego con /notify, sin editar
el archivo ni reiniciar. Ver Panel en el juego.
Posiciones
Config.Position = 'top-center'top-center · top-right · top-left · bottom-center · bottom-right · bottom-left
top-center no tapa nada en la mayoría de servidores. Si las bajas, cuidado con
el minimapa y la barra de voz; si las mueves a la derecha, con el HUD de
estados.
Duración
Config.Duration = 4500
Config.ReadingTime = trueCon ReadingTime activo se suman 45 ms por palabra sobre la base. Un aviso
de dos palabras no dura lo mismo que uno de treinta, que es lo que quieres.
Un duration explícito en la llamada manda sobre las dos.
TextUI
| Opción | Por defecto | Qué cambia |
|---|---|---|
Config.TextUI.Position |
'right' |
Dónde sale |
Config.TextUI.HighlightKeys |
true |
Dibuja como tecla lo que va entre corchetes |
Config.TextUI.PressFeedback |
220 |
Milisegundos que la tecla se queda hundida |
Posiciones: left · right · top · bottom
Sonido
| Opción | Por defecto | Qué cambia |
|---|---|---|
Config.Sound.Enabled |
false |
Sonidos nativos de GTA al aparecer |
Config.Sound.Set |
'HUD_FRONTEND_DEFAULT_SOUNDSET' |
El conjunto |
Viene apagado a propósito: en un servidor lleno, una notificación con sonido
cada pocos segundos cansa en diez minutos. Se puede forzar por llamada con
sound = true para lo que de verdad importe.
Iconos
27 iconos SVG en línea. Sin emojis: heredan el color del tipo y se ven nítidos a cualquier tamaño.
/obnotify iconosSalen los 27 con su nombre debajo, que es como se pasan.
Alias para QBCore
QBCore mezcla clases de Font Awesome y de Material Icons en el mismo campo. Si un recurso pide un icono que no reconocemos, sale el genérico de su tipo.
Config.IconAliases = {
['fas fa-wrench'] = 'wrench',
['attach_money'] = 'money',
['local_police'] = 'shield'
}Cómo saber cuáles te faltan
Lanza la prueba:
/obnotify qbSalen siete avisos con los iconos que más usa QBCore. Los que caigan al genérico del tipo son los que necesitan alias.
Para uno que no esté en la lista, mira en la consola: ob_notify avisa del
nombre exacto que le llegó y no supo traducir.
Añadir un icono nuevo
Los iconos son <symbol> dentro de web/index.html, que va fuera del escrow.
Copia uno, cámbiale el id y los trazos:
<symbol id="i-mi-icono" viewBox="0 0 24 24">
<path d="M12 2 L22 20 H2 Z"/>
</symbol>El id sin el prefijo i- es el nombre que se pasa: icon = 'mi-icono'.
Trazos al estilo Lucide, sin relleno: heredan el color solos.
Traducciones
En locales/*.json, también fuera del escrow. Español e inglés de serie.
{
"queue_more": "+%s más"
}Añadir un idioma es crear el archivo y apuntarlo:
Config.Locale = 'es'Panel de /notify
| Opción | Por defecto | Qué cambia |
|---|---|---|
Config.Panel.Enabled |
true |
En false el comando deja de existir |
Config.Panel.Command |
'notify' |
El comando que lo abre |
Config.Panel.Ace |
'ob_notify.admin' |
El permiso que enseña la pestaña Servidor |
Config.Panel.Storage |
'auto' |
auto · db · archivo |
Config.Panel.Admins |
{} |
Administradores a dedo, si el ACE no te cuadra |
Config.Panel.PlayerEditable |
— | Qué puede tocar cada jugador |
Se explica entero, con capturas, en Panel en el juego.
Si algo te obliga a tocar client/ o web/
Es un fallo de diseño nuestro, no tuyo. Abre un ticket y lo llevamos a
config.lua: la idea es que nada configurable viva fuera de ahí.