Modifications

Remember that this resource has verified DMCA protection, and its illegal use or distribution could imply a claim for protection of Title 17 of Chapter 512 (c) (3) of the Digital Millennium Copyright Act

Create houses

To create a house we must have our realestate job configured by default, we can configure other jobs from qs-housing/config/config.lua
Once we have said job, we can access the housing creation menu using the F6 key by default

Add more shells

Quasar Housing will allow you to add the amount of maps you want, and for that we integrate an exclusive configuration to facilitate your work To add more shells we must do a series of simple steps to find the offset
If even after following these steps you manage to understand it, please contact a trusted developer since it is a long and extensive step

What is the offset?

The offset is the inside coordinate of the shell, that is, the coordinate of the door from the center of the shell

Test the shell

The first step is to find Config.TestShell inside our config_interiors.lua and add the name of the shell we want inside this configuration, giving it a name like in the example below

Find the offset

Once we have our test shell added to config_interiors.lua, we will use the /offset shellname command Once inside the map, we will look for the door and simply press the ENTER key
The name of the shellname will be the one we chose in the configuration above

Add our shell

If all went well, congratulations, you now have the offset coordinate of your new shell Now we just have to create it between the shells, choosing the tier and a name to differentiate it
If by chance you appear too below or too above the shell, play with the Z coordinate, increasing or decreasing it until you find your ideal position

Lock menus in decorate

Because in the middle of the decoration menu, some of the basic menus of your server were opened, we decided to add an optional export that you can add in your menu so that they do not open in the decoration menu
To better understand this export, we must think that the exports['qs-housing']:inDecorate() refers to being in the decoration menu, so we will simply apply this check with a not exports['qs-housing']:inDecorate()
Ask your trusted developer for help if you don't feel able to make such modification
1
if Config.MenuKeybindEnabled then
2
if IsControlPressed(0, Config.MenuKeybind) and not exports['qs-housing']:inDecorate() then
3
OpenEmoteMenu()
4
end
5
end

Add webhooks

To provide greater security to the owners of the servers, a webhook system was recently integrated that will notify you when a house is created, bought or deleted on your server, for this we can find everything in config_discord.lua
To create our webhook we can follow the guide below by clicking here

Logout system

The logout system that our housing brings is very simple, by default it will only drop the player to disconnect him with a custom message, if you want you can choose the custom option in Config.Logout and add your own message or event

Spawn modifications

We made all these modifications so you don't need to modify it yourself, remember that you must use the latest versions of qbcore
qb-spawn.zip
77KB
Binary
If you want to continue with the modification, follow the steps below and you can do it yourself!
In order for qb-spawn to work like the original qb-houses, to allow spawning inside the house, a few things will need to be modified for this to work properly, so we'll go through a list of steps below
In order to spawn inside your house, remember that you must be using the latest versions of both qs-housing and qb-spawn, you can find this resource here
Please, read the steps carefully, IT DOES WORK, but you must follow them to the letter
This housing system is NOT compatible with qb-spawn of old or modified versions, you must use the latest version from its own official repository
You can choose not to use this mod and nothing bad will happen
QB-SPAWN

Remove event

../client.lua
1
RegisterNetEvent('qb-houses:client:setHouseConfig', function(houseConfig)
2
Houses = houseConfig
3
end)
QB-SPAWN
../client.lua
1
label = Houses[houses[i].house].adress

Replace for

../client.lua
1
label = houses[i].house
QB-SPAWN
../client.lua
1
TriggerEvent('qb-houses:client:LastLocationHouse', houseId)

Replace for

../client.lua
1
TriggerEvent('qs-housing:client:LastLocationHouse', houseId)
QB-SPAWN
../client.lua
1
TriggerEvent('qb-houses:client:enterOwnedHouse', location)

Replace for

1
TriggerEvent('qs-housing:client:enterOwnedHouse', location)
QB-SPAWN

Replace event

../server.lua
1
QBCore.Functions.CreateCallback('qb-spawn:server:getOwnedHouses', function(_, cb, cid)
2
if cid ~= nil then
3
local houses = MySQL.query.await('SELECT * FROM player_houses WHERE identifier = ?', {cid})
4
if houses[1] ~= nil then
5
cb(houses)
6
else
7
cb(nil)
8
end
9
else
10
cb(nil)
11
end
12
end)