Comandos#
Pause Menu Creator registra dos comandos de chat, un key binding opcional y un diagnóstico. Los nombres de los dos primeros se configuran en shared/config.lua.
Comando | Dónde | Descripción |
|---|---|---|
| En el juego | Abre el menú directamente, sin el hook de ESC; es la forma más rápida de saber si un problema es del menú o solo de su activación. El nombre es |
| En el juego | Abre el creador, y lo cierra si ya está abierto. Solo administradores; consulta Dar acceso al creador. El nombre es |
Tecla extra | Key binding | Configura |
| En el juego (salida en F8) | Diagnóstico de la ruta dibujada en el mapa. Marca un punto de ruta, ejecútalo y la consola F8 imprime la distancia por carretera, qué forma de leer el GPS de GTA respondió y cuántos puntos de la ruta se muestrearon. |
ESC en sí no necesita comando: con Config.Menu.replacePauseMenu activado, al pulsarla se abre este menú en lugar del de GTA.
Exports de cliente#
Para abrir el menú desde tus propios scripts (un menú radial, una app del móvil, una tecla propia) y para nombrar los blips que crean tus scripts.
Abrir y cerrar el menú
exports['qs-pausemenu']:Open() -- also OpenMenu()
exports['qs-pausemenu']:Close() -- also CloseMenu()
local open = exports['qs-pausemenu']:IsOpen() -- booleanOpen() no hace nada si el menú ya está abierto, si el menú de pausa de GTA o el creador están abiertos, o si otro recurso tiene el cursor. A un jugador que está abatido se le indica que no puede abrirlo.
-- Your own key, on top of ESC
RegisterCommand('mymenu', function()
if not exports['qs-pausemenu']:IsOpen() then
exports['qs-pausemenu']:Open()
end
end)
RegisterKeyMapping('mymenu', 'Open the server menu', 'keyboard', 'F1')Abrir los ajustes de GTA
exports['qs-pausemenu']:OpenGameSettings()Cierra este menú y abre el menú de pausa del propio juego en su página de ajustes (Config.Actions.gtaSettingsComponent). El hook de ESC se retira hasta que el jugador sale de él. Es lo mismo que hace el botón Open GTA's settings.
Abrir el creador
exports['qs-pausemenu']:OpenCreator()Lo mismo que /pausecreator, incluida la comprobación de permisos; es un atajo, no una forma de dar acceso.
Nombrar un blip en el mapa
exports['qs-pausemenu']:SetBlipName(blip, 'Central Garage')
exports['qs-pausemenu']:SetBlipName(blip, false) -- forget itDa a la leyenda del mapa el nombre real de un blip creado por tu script. Los códigos de color se eliminan, y los nombres de blips que ya no existen se olvidan solos. Integraciones muestra el hook de una línea que hace esto para todo un recurso.
Exports de servidor#
Para elegir desde tus propios scripts qué tema ve todo el servidor: un tema festivo para un evento, otro distinto el fin de semana.
GetActiveTheme
local id = exports['qs-pausemenu']:GetActiveTheme() -- string or nilEl id del tema activo. nil significa que no se activó ninguno, y los jugadores reciben Config.Menu.defaultTheme.
GetThemes
for _, theme in ipairs(exports['qs-pausemenu']:GetThemes()) do
print(theme.id, theme.name)
endTodos los temas guardados desde el creador, ordenados por nombre. Los ocho temas incluidos no están en esta lista (viven dentro de la interfaz), salvo que hayas guardado tu propia versión de alguno. Un tema creado en el creador recibe un id generado (como theme_1k2f9a), así que búscalo aquí por el nombre que le diste.
SetActiveTheme
local ok = exports['qs-pausemenu']:SetActiveTheme('cyberpunk') -- true on successActiva un tema para todos, al instante y sin reconectarse. El id puede ser un tema incluido (launch, onyx, aurora, carbon, cyberpunk, ivory, hackerman, velvet) o el id de uno que hayas guardado. Se almacena, así que sobrevive a un reinicio. Un id que no coincide con ningún tema deja a los jugadores con el predeterminado.
-- A theme you saved as "Halloween" for October, Onyx the rest of the year
local function themeIdByName(name)
for _, theme in ipairs(exports['qs-pausemenu']:GetThemes()) do
if theme.name == name then return theme.id end
end
end
CreateThread(function()
Wait(5000) -- saved themes are loaded a moment after qs-pausemenu starts
local halloween = themeIdByName('Halloween')
local month = tonumber(os.date('%m'))
exports['qs-pausemenu']:SetActiveTheme((month == 10 and halloween) or 'onyx')
end)Eventos#
Evento | Lado | Descripción |
|---|---|---|
| Cliente, local | Se dispara cuando un jugador pulsa Leave the server con |
| Cliente, local |
|
| Servidor → cliente | Muestra un mensaje mediante el |
Los botones del tema también pueden disparar cualquier evento que indiques: Trigger a client event o Trigger a server event en el inspector. Un botón que abre una función tuya no necesita más que un handler:
-- A theme button with the action "Trigger a server event" and the value myserver:dailyReward
RegisterNetEvent('myserver:dailyReward', function()
local src = source
-- check and hand out the reward
end)Sobre los errores#
Cuando se rechaza el creador o un lugar guardado, el servidor responde con una clave corta en lugar de una frase. El creador muestra su propio mensaje para ella; la clave es lo que debes buscar en Errores comunes, que explica qué significa cada una.



