Skip to main content

Compatibility & Integration

Auto deteccion real

Framework

Cuando Config.Compatibility.framework = 'auto', el recurso prueba en este orden:

  1. qbx
  2. qbcore
  3. esx

Inventory

Orden real:

  1. ox_inventory
  2. qb_inventory
  3. origen_inventory
  4. qs_inventory
  5. codem_inventory

Appearance

Orden real:

  1. illenium
  2. fivem_appearance
  3. qb_clothing

Owned Vehicles

Orden real:

  • siempre intenta primero qbx_vehicles
  • si el framework detectado es qbcore, luego prueba qbcore_vehicles
  • si el framework detectado es esx, luego prueba esx_owned_vehicles
  • si no sabe el framework, prueba ambos fallbacks

Vehicle Keys

Orden real:

  1. qbx_vehiclekeys
  2. qb_vehiclekeys

Regla de compatibilidad del recurso

El propio proyecto documenta esta regla en compat/README.md:

  • fuera de compat/ no se deben usar exports directos de frameworks o recursos
  • el resto del script habla con adapters como ColdBusinessFramework, ColdBusinessInventory, ColdBusinessAppearance, ColdBusinessOwnedVehicles y ColdBusinessVehicleKeys

Integracion con economia e identificadores

El core intenta resolver:

  • identificador de personaje
  • dinero en efectivo
  • dinero en banco
  • dinero usado por la tablet de sociedad

Si tu framework no encaja del todo, puedes sobreescribir:

  • Config.GetPlayerCash
  • Config.RemovePlayerCash
  • Config.AddPlayerCash
  • Config.GetPlayerBank
  • Config.RemovePlayerBank
  • Config.AddPlayerBank
  • Config.GetPlayerOrganizationMoney
  • Config.RemovePlayerOrganizationMoney
  • Config.AddPlayerOrganizationMoney
  • Config.GetCharacterIdentifier

Integracion con items o tablet

El cliente exporta:

exports('bossTablet', function(data, slot) ... end)

Uso tipico:

exports['cold_business']:bossTablet(data, slot)

Si el adapter de inventario cliente soporta useItem, el export respeta ese flujo. Si no, abre el menu directamente.

Integracion del concesionario

El catalogo no depende de una tabla del framework. Sale de:

shared/cardealer/catalog.lua

Eso significa que puedes:

  • editar modelos sin tocar qbx_core
  • cambiar precios base localmente
  • filtrar categorias y tipos desde Config.CarDealer.Catalog

Integracion del taller

El presupuesto de tuneo se calcula en:

shared/mechanic/tuning_quote.lua

Ese modulo usa:

  • precio base de importacion del modelo
  • porcentajes por tipo de mod
  • cuentas de pago permitidas

Eventos y nombres legacy

Aunque el recurso se llame cold_business, el namespace publico sigue siendo:

cold_ownershop:*

Ejemplos:

  • cold_ownershop:setPlayerOrg
  • cold_ownershop:openBusinessAdmin
  • cold_ownershop:cardealer:requestCatalog
  • cold_ownershop:mechanic:beginTuningSession

Migracion de tablas

En el arranque, server/core/core.lua comprueba tablas antiguas cold_ownershop_* y puede renombrarlas a:

  • cold_business_organizations
  • cold_business_members
  • cold_business_logs
  • cold_business_points
  • cold_business_vehicles
  • cold_business_shop_prices
  • cold_business_vehicle_prices
  • cold_business_vehicle_stock
  • cold_business_restock_orders
  • cold_business_vehicle_import_orders
  • cold_business_vehicle_history

Consejo de despliegue

Si vas a usar auto, no fuerces el arranque de cold_business antes que sus dependencias. Si no, los adapters pueden quedar en fallback y parecer que el recurso "arranca bien" aunque una parte del flujo no funcione.