Exports

Server-side exports

House Interface

interface House {
    house: {
        i: string,
        v: number
    },
    owner: string,
    keys: Array<{ identifier: string, name: string } | null>,
    stashes: Array<{ [key: string]: number }> | false,
    purchasedAt: number,
    rented: boolean
}

GetApartmentsInfo

Returns all informations about apartments in specific hotel

exports['oi_housing']:GetApartmentsInfo(motel, rented)
  • motel: string

  • rented?: boolean

    • If you want to fetch data also about rented apartments

Returns:

  • houses: House[]

Example:

local apartments = exports['oi_housing']:GetApartmentsInfo("Pinkcage", true)

for k,v in pairs(apartments) do
    print(("Apartment's %s data: %s"):format(k, json.encode(v)))
end

GetPlayerApartmets

Retuns player's all apartments or these in specific motel

exports['oi_housing']:GetPlayerApartments(player, motel)
  • player: number

  • motel?: string

Returns:

  • apartments: House[] | {[key: string]: House[]}

Example:

local pinkcage = exports['oi_housing']:GetPlayerApartments(source, "Pinkcage")
local all = exports['oi_housing']:GetPlayerApartments(source)

for k,v in pairs(pinkcage) do
    print(("Pinkcage Apartment #%s: %s"):format(k, json.encode(v)))
end

for k,v in pairs(all) do
    for n,m in pairs(v) do
        print(("%s Apartment #%s: %s"):format(k, n, json.encode(m)))
    end
end

ChangeOwner

Faster way to change owner of specific apartment. Returns if apartment has been transferred successfuly

exports['oi_housing']:ChangeOwner(motel, apartmentIndex, identifier)
  • motel: string

  • apartmentIndex: number

  • identifier: string

Returns:

  • success: boolean

Example:

local xPlayer = ESX.GetPlayerFromId(source)
local success = exports['oi_housing']:ChangeOwner("Pinkcage", 3, xPlayer.identifier)

xPlayer.showNotification(success and "Apartment Transfered" or "Failed to transfer the apartment")

Last updated