SCRIPT

Documentación de Menu radial

Otra Vida Menu Radial (ov_radial)

Que hace

ov_radial es un menu radial para servidores FiveM con qb-core: una rueda de accesos rapidos con inventario, telefono, emotes, ropa, vehiculo, mapa, filtros de pantalla, audio, comandos propios y acciones de trabajo (policia y ambulancia). Reemplaza a qb-radialmenu y a codem-supreme-radialmenu, y mantiene sus exports para que los scripts que agregaban opciones sigan funcionando.

Lo mas importante:

Requisitos

RequisitoDetalle
Frameworkqb-core
Dependencias declaradas en el fxmanifestqb-core, ox_lib
Lua5.4 (lua54 'yes')
Base de datosNo usa
Recursos opcionalesCada entrada aparece solo si su recurso existe. Ver la lista al final de esta seccion

El fxmanifest declara provide 'qb-radialmenu' y provide 'codem-supreme-radialmenu': no debes tener esos radiales activos a la vez.

Recursos opcionales que activan entradas del menu:

EntradaRecurso o comando que la activa
Cambiar de trabajoexport OpenWheel de ov_multijob
Limpiar llavesox_inventory
Sector Policiafrkn-policejob (y frkn-dispatch para el boton de panico), trabajo police en servicio
Sector Ambulancia0r-ambulancejob, trabajo ambulance en servicio
Microfonopma-voice
Musica (silenciar)xsound
Parkourbeeju_parkour
Cambiar ropa (admin)illenium-appearance
Inventario, telefono, billetera, emotes, reportar, etc.Que exista el comando correspondiente (ver Comandos y permisos)

Instalacion

  1. Descarga el recurso desde el Portal de Cfx.re (seccion de assets comprados) con la cuenta Cfx.re con la que hiciste la compra. El recurso viene protegido con Asset Escrow de Cfx.re: solo funciona en servidores cuya clave de licencia pertenece a tu cuenta.
  2. Detiene y retira de server.cfg tu radial anterior (qb-radialmenu o codem-supreme-radialmenu).
  3. Copia la carpeta ov_radial dentro de resources.
  4. Agrega en server.cfg, despues de ox_lib y qb-core:
   ensure ov_radial
  1. Inicia el servidor. No hay archivo .sql, no se crean tablas y no hay convars que configurar. No necesita permisos ACE propios.

Archivos editables: en el fxmanifest.lua, escrow_ignore deja sin cifrar la carpeta web/** (interfaz) y shared/config.lua. Los demas archivos, incluido shared/blips.lua y la definicion del menu en client/menu.lua, no estan en escrow_ignore, asi que van cifrados por Asset Escrow. Para agregar o quitar opciones sin editar esos archivos, usa los exports descritos mas abajo.

Configuracion

Todo esta en shared/config.lua. Opciones principales:

ClaveValor por defectoPara que sirve
Config.Key'F3'Tecla por defecto (cada jugador puede cambiarla en Ajustes, Teclas, FiveM, "Menu radial")
Config.Command'radial'Comando que abre la rueda ya fija
Config.TapToStickMs250Un toque mas corto que esto deja la rueda fija
Config.DistanciaVehiculo5.0Distancia maxima para acciones de vehiculo
Config.VelocidadMaximaCambioAsiento100.0Velocidad maxima para cambiar de asiento
Config.TiempoVoltear12000Duracion (ms) de la accion de voltear un vehiculo
Config.MaxComandosPropios12Comandos propios por jugador
Config.ItemsLlave{ 'car_key', 'vehiclekeys' }Items que borra "Limpiar llaves"
Config.EsperaLimpiarLlaves5000Espera (ms) entre limpiezas de llaves
Config.Vozrangos = { 3.0, 15.0, 25.0 }, nombres, inicial = 2Rangos de voz (susurro, normal, grito)
Config.Filtros5 filtrosFiltros de pantalla: sin filtro, cinematografico, calido, noir y grano de cine
Config.ComandosIniciales{ label = 'Reportar', command = 'reporte' }Comando que traen los jugadores nuevos
Config.Baul.distancia3.0Distancia al baul
Config.Baul.distanciaJugador2.0Distancia a la persona que se mete en el baul
Config.Baul.modelosBloqueados17 deportivos (por ejemplo zentorno, infernus)Vehiculos sin baul accesible
Config.Baul.clasestabla por clase de vehiculoSi la clase permite entrar al baul y el desplazamiento de la posicion

Comandos y permisos

ElementoDetalle
Tecla F3 (mantener)Abre la rueda; soltar sobre un sector lo elige
Tecla F3 (toque rapido)La rueda se queda abierta y eliges con clic
/radialAbre la rueda fija
/radialdebugImprime en F8 las opciones ocultas y el motivo de cada una

Comandos que ejecuta el menu (los de otros recursos solo aparecen si estan registrados): inventory o inv, phone o telefono, wallet o billetera, emotemenu o emotes, reporte, checkjob o job, hub, reloadskin, saveSkin, logout, cambiarvip, clearstuckprops, pdaction, pdcuff, pduncuff, prisontablet, dispatch, facilitypanel, revivep, 911e, qadmin / admin / adminmenu, reportesadmin y crafting_creator.

Sector Administracion: se muestra a quien el servidor reconoce como staff: ACE group.admin, qbcore.god o qbcore.admin, o permiso de qb-core god o admin.

Exports del cliente (para otros scripts)

ExportUso
AddMenuItem(item)Agrega una opcion o un submenu
RemoveMenuItem(id)La retira
AddOption(data, id)Igual que AddMenuItem, con el id como segundo parametro
RemoveOption(id)La retira
OpenMenu() / CloseMenu()Abre o cierra la rueda
IsOpen()true si esta abierta

Campos que acepta un item: id (obligatorio), label o title, icon, desc, canOpen (funcion que devuelve true o false), shouldClose = false (mantener abierta tras elegir), items (submenu), y la accion: type = 'command' o 'qbcommand' con event = nombre del comando, o event con type = 'server' para evento de servidor (el evento de cliente es el valor por defecto), mas args opcionales.

exports.ov_radial:AddMenuItem({
    id = 'mi_opcion',
    label = 'Mi opcion',
    icon = 'star',
    type = 'command',
    event = 'micomando',
})

Como se usa

  1. Manten F3, mueve el raton hacia un sector y suelta para elegirlo. O da un toque rapido para que la rueda quede fija y elige con clic.
  2. Algunos sectores abren un submenu. Para volver atras puedes usar la tecla de retroceso del mando o la opcion de volver de la interfaz.
  3. Personaje: inventario, telefono, billetera, emotes, reportar, trabajo (cambiar de trabajo, mi trabajo, centro de empleo), apariencia (recargar y guardar skin), cuenta (cambiar de personaje, cambiar VIP, limpiar llaves) y ayuda (destrabar la interfaz, limpiar props, parkour).
  4. Limpiar llaves borra todas las llaves de vehiculos del inventario del jugador. El servidor lo limita con una espera entre usos.
  5. Vehiculo: abre puertas, ventanas, asientos, extras o luz interior, enciende o apaga el motor, voltea un vehiculo volcado y usa el baul.
  6. Comandos: el jugador agrega hasta 12 atajos (nombre de hasta 24 caracteres y un comando de hasta 60) desde "Editar comandos". Se guardan en su propio cliente.
  7. Las entradas de policia y ambulancia solo aparecen con el trabajo correspondiente y en servicio.

Para administradores

  1. Si una opcion no aparece, ejecuta /radialdebug y revisa F8: indica si falta un recurso, un comando o una condicion de trabajo.
  2. Para agregar opciones propias, usa el export AddMenuItem desde tus scripts (ver ejemplo arriba). No hace falta editar el recurso.
  3. Cambia la tecla por defecto con Config.Key (los jugadores que ya la cambiaron conservan su propia tecla).
  4. Ajusta los rangos de voz, filtros, comandos iniciales y modelos sin baul en shared/config.lua y reinicia el recurso.
  5. Si cambias de recurso de policia, ambulancia u otros, ten en cuenta que esas entradas estan ligadas a los recursos y comandos listados en Requisitos. Las opciones de tu recurso las puedes anadir con AddMenuItem.

Preguntas frecuentes

Es compatible con scripts que agregaban opciones a qb-radialmenu o a codem-supreme-radialmenu? Si: el recurso declara provide de ambos y ofrece AddMenuItem, RemoveMenuItem, AddOption y RemoveOption. Verifica con tu script concreto.

Falta el sector de policia o ambulancia. Solo aparece con el trabajo police o ambulance en servicio, y con los recursos que usa (frkn-policejob, 0r-ambulancejob). Revisa /radialdebug.

Como cambio la tecla? Cada jugador, en Ajustes, Teclas, FiveM, "Menu radial". El valor por defecto se cambia en Config.Key.

Los comandos propios se pierden? Se guardan localmente en el cliente de cada jugador (no en la base de datos), por lo que dependen de su instalacion de FiveM.

El baul no deja entrar en ciertos vehiculos. Revisa Config.Baul.modelosBloqueados y Config.Baul.clases.

Donde veo los errores? En la consola F8 del cliente (mensajes [ov_radial]) y en la consola del servidor.

Actualizaciones y soporte

Las versiones nuevas aparecen en el Portal de Cfx.re (en tus recursos comprados) y en la tienda. Descargalas con la misma cuenta Cfx.re de la compra y reemplaza la carpeta, conservando tus cambios en shared/config.lua. Para soporte, abre un ticket en el Discord de la tienda: [enlace de soporte]. Indica la version del recurso, el error de consola y los pasos para reproducirlo.