Cómo funcionan las integraciones#
Una pantalla de carga se ejecuta antes de que cualquier framework haya cargado al jugador, así que Loading Screen Creator pide muy poco al resto de tu servidor. Cada framework tiene un pequeño puente abierto en custom/, y solo pasan por él dos cosas: quién es administrador y cómo mostrar una notificación.
Framework | Se detecta por | Comprobación de administrador | Notificaciones |
|---|---|---|---|
ESX |
| El grupo del jugador comparado con | ox_lib si está en ejecución; si no, las de ESX |
QBCore · Qbox |
| La comprobación de permisos del framework, para cada grupo de | ox_lib si está en ejecución; si no, |
qs-core |
| El grupo del jugador comparado con | qs-interface, luego ox_lib, luego las de ESX |
Standalone | No se encuentra nada | Solo ACE | ox_lib si está en ejecución; si no, el chat |
El ACE (
command.loadingcreator) funciona en todos los frameworks; los grupos son una vía adicional. Y si un sistema de notificaciones falla, el mensaje se muestra en el chat, así que un administrador nunca se queda sin respuesta.
Multicharacter y selectores de spawn#
La pantalla de carga está pensada para pasar al jugador directamente a la siguiente pantalla, sin un hueco de mundo vacío entremedias. Para eso, lo que venga después debe indicar cuándo está listo.
Multicharacter#
No hay nada que configurar. Multicharacter cierra la pantalla de carga en cuanto la selección de personaje está lista, y como aparece en Config.HandoffResources, el límite de seguridad sube a tres minutos mientras se ejecuta: un PC lento puede necesitar ese tiempo para cargar la escena del personaje.
Cualquier otro multicharacter o selector de spawn#
Cierra la pantalla, en el lado del cliente, desde el punto en que tu propia interfaz esté lista. Cualquiera de estas líneas funciona:
exports['qs-loadingscreen']:CloseLoadingScreen()
-- or, without a hard dependency on the resource
TriggerEvent('qs-loadingscreen:fadeOut')Si tu recurso necesita más de 45 segundos en un PC lento antes de poder tomar el relevo, añádelo a la lista para que reciba el límite más largo:
Config.HandoffResources = { 'qs-multicharacter', 'my-multicharacter' }Un recurso que llama al propio ShutdownLoadingScreenNui de FiveM también funciona. Loading Screen Creator detecta que el jugador ha cargado (mediante esx:playerLoaded, QBCore:Client:OnPlayerLoaded o el state bag isLoggedIn) y deja de comunicarse con una pantalla que ya no existe.
Forzar la detección#
El framework se detecta la primera vez que se necesita, buscando un recurso iniciado de Config.Frameworks. Establece Config.Framework para omitir la detección; conviene hacerlo cuando hay dos frameworks en ejecución a la vez o el tuyo ha sido renombrado:
-- Auto, the default
Config.Framework = false
-- Forced
Config.Framework = 'qb' -- 'esx' · 'qb' · 'qs' · 'standalone'
-- Which resource maps to which folder in custom/
Config.Frameworks = {
['qs-core'] = 'qs',
['es_extended'] = 'esx',
['qb-core'] = 'qb',
['qbx_core'] = 'qb',
}Añadir un framework#
Dar soporte a un framework que no aparece requiere una carpeta. La superficie es pequeña a propósito: el recurso solo necesita saber si alguien es administrador y cómo mostrarle un mensaje.
Copia la carpeta más parecida
Duplica
custom/esx(oqb,qs,standalone) y ponle cualquier nombre, por ejemplocustom/myframework.Rellena los dos archivos
El archivo de servidor indica quién es administrador; el de cliente muestra un mensaje. Reemplaza las llamadas a
my-corepor las de tu framework:lua -- custom/myframework/server.lua local framework = {} function framework:getGroup(source) return exports['my-core']:GetPlayerGroup(source) end function framework:isAdmin(source, groups) local group = self:getGroup(source) for _, allowed in ipairs(groups) do if group == allowed then return true end end return false end return frameworklua -- custom/myframework/client.lua local framework = {} function framework:notify(message, kind) -- kind is 'error' or nil exports['my-core']:Notify(message, kind or 'inform') end return frameworkApunta la configuración a ella
Establece
Config.Framework = 'myframework', o añade tu recurso principal aConfig.Frameworkspara que se detecte por sí solo. Reinicia el recurso.
Idiomas#
El creador viene en 41 idiomas en locales/: árabe, búlgaro, bengalí, catalán, checo, danés, alemán, griego, inglés, español, estonio, persa, finés, francés, hebreo, hindi, croata, húngaro, indonesio, italiano, japonés, coreano, lituano, letón, malayo, neerlandés, noruego, polaco, portugués, rumano, ruso, eslovaco, esloveno, sueco, suajili, tailandés, turco, ucraniano, urdu, vietnamita y chino.
Establécelo en la configuración, o una sola vez en server.cfg para todos los recursos de Quasar a la vez:
-- shared/config.lua
Config.Locale = 'es'# server.cfg
setr qs:locale "es"Si falta una clave en una traducción, se usa el inglés. El idioma afecta al creador; lo que dice la propia pantalla de carga es lo que escribas en el tema, en el idioma que quieras.



