Apartment
PC-Multicharacter supports various apartment/housing systems.
Supported Apartment Systems
qb-apartments (default QBCore)
qbx_properties (Qbox variant)
0r-apartment-v2
qs-apartments
Custom ESX property systems
Configuration Locations
bridge.lua (lines 316-334):
Bridge.ApartmentSystem = {}
local function setupApartmentSystem()
if GetResourceState('qb-apartments') == 'started' then
Bridge.ApartmentSystem.type = 'qb_apartments'
Bridge.ApartmentSystem.event = 'apartments:client:setupSpawnUI'
elseif GetResourceState('qbx_properties') == 'started' then
Bridge.ApartmentSystem.type = 'qbx_properties'
Bridge.ApartmentSystem.event = 'apartments:client:setupSpawnUI'
elseif GetResourceState('0r-apartment-v2') == 'started' then
Bridge.ApartmentSystem.type = '0r_apartments'
Bridge.ApartmentSystem.event = 'apartments:client:setupSpawnUI'
elseif GetResourceState('qs-apartments') == 'started' then
Bridge.ApartmentSystem.type = 'qs_apartments'
Bridge.ApartmentSystem.isServerEvent = true
Bridge.ApartmentSystem.event = 'apartments:server:CreateApartment'
else
Bridge.ApartmentSystem.type = 'none'
end
end
Adding Custom Apartment System
Add detection in bridge.lua (after line 327):
elseif GetResourceState('your-apartments') == 'started' then
Bridge.ApartmentSystem.type = 'your_apartments'
Bridge.ApartmentSystem.event = 'your-apartments:client:setup'
Bridge.ApartmentSystem.isServerEvent = false -- or true if server event
Handle apartment creation in server/main.lua (lines 421-425):
-- Add after line 422
elseif Bridge.ApartmentSystem.type == 'your_apartments' then
if Bridge.ApartmentSystem.isServerEvent then
TriggerEvent(Bridge.ApartmentSystem.event, src, apartmentData)
else
TriggerClientEvent(Bridge.ApartmentSystem.event, src, newData)
end
For ESX, configure in config.lua (lines 69-75):
Config.ESX.ApartmentResource = 'your-apartment-resource'
Config.ESX.ApartmentEvents = {
setupUI = 'your-apartments:setupUI',
setHome = 'your-apartments:setHome',
enterProperty = 'your-apartments:enterProperty',
}
Last updated