Vehicle Armoury | Mobile Armoury [ESX/QB]

Looking for a great mobile armoury script that works with vehicles based on jobs and ranks ? This script allows you to easily grab weapons from your vehicle instead of having to carry them in your inventory. It’s an essential tool for any roleplay server.

Features

  • Access the armoury by opening the vehicle’s trunk
  • Grab the weapons you want to add to your inventory
  • The stock system will store the data of each vehicle in the database
  • Unlimited stocking features are also available
  • You can access items and weapons on a job and rank-based system
  • Restock the armoury after usage
  • The features in the configuration are easily customizable

Supported Inventory

  • ox_inventory
  • qs-inventory
  • qb-inventory
  • ps-inventory
  • lj-inventory
  • ox_lib (if you are not using any above inventory)
Configuration

-- This function will auto detect the target script that is running
local function DetectTarget()
    local IS_ox_target = GetResourceState('ox_target') == 'started'
    local IS_qb_target = GetResourceState('qb-target') == 'started'
    if IS_ox_target then
        return 'ox_target'
    elseif IS_qb_target then
        return 'qb-target'
    else
        return 'none'
    end
end

-- This function will auto detect the inventory script that is running
local function DetectInventory()
    local IS_qb_inventory = GetResourceState('qb-inventory') == 'started'
    local IS_qs_inventory = GetResourceState('qs-inventory') == 'started'
    local IS_lj_inventory = GetResourceState('lj-inventory') == 'started'
    local IS_ox_inventory = GetResourceState('ox_inventory') == 'started'
    if IS_qb_inventory then
        return 'qb-inventory'
    elseif IS_qs_inventory then
        return 'qs-inventory'
    elseif IS_lj_inventory then
        return 'lj-inventory'
    elseif IS_ox_inventory then
        return 'ox_inventory'
    else
        return 'none'
    end
end

--[[
***********************************************
*                                             *
*            EDIT THE CONFIG BELOW            *
*                                             *
***********************************************
--]]

Config = {}

Config.Target = DetectTarget()  -- 'qb-target', 'ox_target' or DetectTarget() [Auto Detect]

Config.Inventory = DetectInventory() -- 'none', 'qb-inventory', 'qs-inventory', 'lj-inventory', 'ox_inventory or DetectInventory() [Auto Detect]

Config.Jobs = { ['police'] = 0, ['sheriff'] = 0 } -- To restock the armoury (Only Works if Config.UnlimitedStock is false)

Config.ImageOnMenu = true -- If true, the item image will be shown on the menu(Only Works if Config.Inventory is 'none')

Config.Images = 'qb-inventory/html/images/' -- The path to the images folder, ONLY PNG is supported

Config.VehicleCategory = {
    ["class1"] = { -- The Category of the vehicle
        'police',  -- The vehicle that will be added to the category
        'police2',
    },
    ["class2"] = {
        'policeold1',
        'police3',  
    },
}

Config.Weapons = {
    ["class1"] = {  -- The items that will be added to the vehicle
        [1] = {name = "WEAPON_PISTOL", job = {['police'] = 0, ['sheriff'] = 0}, amount = 10}, -- Job = {['job_name'] = minimum_job_grade} OR Job = false
        [2] = {name = "WEAPON_APPISTOL", job = {['police'] = 0, ['sheriff'] = 0}, amount = 10},
        [3] = {name = "WEAPON_ASSAULTRIFLE", job = {['police'] = 3, ['sheriff'] = 3}, amount = 10},
        [4] = {name = "WEAPON_ASSAULTRIFLE_MK2", job = {['police'] = 2, ['sheriff'] = 2}, amount = 10},
        [5] = {name = "WEAPON_ASSAULTSMG", job = {['police'] = 1, ['sheriff'] = 1}, amount = 10},
        [6] = {name = "WEAPON_CARBINERIFLE", job = {['police'] = 1, ['sheriff'] = 1}, amount = 10},
        [7] = {name = "WEAPON_GRENADE", job = {['police'] = 1, ['sheriff'] = 1}, amount = 10},
    },
    ["class2"] = {  -- The items that will be added to the vehicle
        [1] = {name = "WEAPON_SMG", job = {['police'] = 0, ['sheriff'] = 0}, amount = 10},
        [2] = {name = "WEAPON_ASSAULTRIFLE", job = {['police'] = 0, ['sheriff'] = 0}, amount = 10},
        [3] = {name = "WEAPON_STICKYBOMB", job = {['police'] = 3, ['sheriff'] = 3}, amount = 10},
        [4] = {name = "WEAPON_ASSAULTRIFLE_MK2", job = {['police'] = 2, ['sheriff'] = 2}, amount = 10},
        [5] = {name = "WEAPON_ASSAULTSMG", job = {['police'] = 1, ['sheriff'] = 1}, amount = 10},
        [6] = {name = "WEAPON_CARBINERIFLE", job = {['police'] = 1, ['sheriff'] = 1}, amount = 10},
        [7] = {name = "WEAPON_GRENADE", job = {['police'] = 1, ['sheriff'] = 1}, amount = 10},
    },
}

Config.UnlimitedStock = false -- If true, the stock will be unlimited and the restocking charge will be ignored.

Config.RestockingCharge = { -- The price to restock each vehicle (Only Works if Config.UnlimitedStock is false)
    ['class1'] = 10000,
    ['class2'] = 20000,
}

Config.RestockingLocations = {   -- The locations to restock the vehicle (Only Works if Config.UnlimitedStock is false)
    vector4(458.6814, -1022.4894, 28.2769, 93.0602),
    vector4(-482.1316, 6018.5972, 31.3405, 317.6908),
}

Updates

QB

  • v1.0.1 - Added ps-inventory support (26 April 2024)

Check out Documentation for Config and Exports: README

Buy Now: https://highqez.tebex.io/

Code is accessible Partially
Subscription-based No
Lines (approximately) 1050+
Requirements ox_lib, es_extended/qb-core, qb-target/ox_target
Support Yes

Our Resources

highqez_phonesnatcherhighqez_cashitemhighqez_AFKzone highqez_crawldead highqez_headgear