Framework Integration
Auto-deteccion
Config.Framework = 'auto' intenta cargar en este orden:
qboxqbcoreesx
Integracion con Qbox
Como se integra
- Disponibilidad:
GetResourceState('qbx_core') == 'started' - Logout:
exports.qbx_core:Logout(source) - Crear personaje:
exports.qbx_core:Login(source, nil, newData) - Cargar personaje:
exports.qbx_core:Login(source, citizenId) - Lista de personajes: consulta SQL directa sobre
players - Preview ped data: consulta SQL directa sobre
playerskins
Post-spawn en Qbox
Despues de cargar personaje:
- dispara
QBCore:Server:OnPlayerLoaded - dispara
QBCore:Client:OnPlayerLoaded - resetea metadata de
qb-housesyqb-apartments - si es personaje nuevo, abre el creator configurado en
Config.Appearance
Starter items
Si ox_inventory esta iniciado, el recurso intenta leer starterItems desde qbx_core/config/shared.lua y entregarlos al crear personaje nuevo.
Integracion con QB-Core
Como se integra
- Disponibilidad:
qb_corearrancado yqbx_coreapagado - Logout:
QBCore.Player.Logout(source)oplayer.Functions.Logout() - Crear personaje:
QBCore.Player.Login(source, false, newData) - Cargar personaje:
QBCore.Player.Login(source, citizenId) - Lista de personajes: consulta SQL directa sobre
players - Preview ped data: consulta SQL directa sobre
playerskins
Post-spawn en QB-Core
Despues de cargar personaje:
- dispara
QBCore:Server:OnPlayerLoaded - dispara
QBCore:Client:OnPlayerLoaded - resetea metadata de
qb-housesyqb-apartments - si es personaje nuevo, abre el creator configurado en
Config.Appearance
Starter items
Si ox_inventory esta iniciado, el recurso intenta leer items desde:
QBCore.Shared.StarterItems- o
QBCore.Config.Player.PlayerDefaults.items
Integracion con ESX
Como se integra
- Disponibilidad:
GetResourceState('es_extended') == 'started' - Logout:
TriggerEvent('esx:playerLogout', source) - Crear/cargar personaje:
TriggerEvent('esx:onPlayerJoined', source, ...) - Lista de personajes: consultas SQL directas sobre
users - Preview ped data: lectura de
users.skin - Ultima posicion: lectura de
users.position
Formato de identificadores
En ESX, los personajes secundarios usan:
char<slot>:<baseIdentifier>
Ejemplo:
char2:license:xxxxxxxx
Columnas opcionales que aprovecha
Si existen en users, las usa:
firstnamelastnamedateofbirthsexnationalityaccountsjobjob_gradepositionmoneybankskin
Apariencia en ESX
Si el personaje es nuevo y esta iniciado illenium-appearance o esx_skin, el cliente abre el creator configurado tras el spawn.
Integracion de apariencia y creator
- Preview auto:
illenium-appearance -> fivem-appearance -> custom - Creator auto en
qboxyqbcore:illenium -> qb_clothes -> qb_clothing -> custom - Creator auto en
esx:illenium -> esx_skin -> custom - Si ningun provider funciona, el preview cae a aplicacion nativa o a ped aleatorio.
Integracion con spawn
cinematic_selector: usa el selector interno decold_multicharlast_location: intenta usar posicion en memoria o almacenada del personajedefault: usaConfig.DefaultSpawn
Permisos y comandos
- El comando de slots revisa primero ACE.
- Tambien acepta permisos de
qboxyqbcoresegun la cadenamod -> admin -> god. - Si ejecutas el comando desde consola (
source == 0), la respuesta se imprime en consola.
Notificaciones
- El script envia feedback del comando de slots con
TriggerClientEvent('cold_library:notify', ...). - No hay fallback interno a notificaciones de framework para ese caso.
- Si no tienes un recurso escuchando ese evento, el comando sigue funcionando, pero no veras popup.