Immerse yourself in missions to rob all the "AmmuNation" stores in the city, make contact with the mission handler, engage in a conversation with them, and set your sights on your next big score. You'll need to hack the surveillance systems to gain access to the premises, disable the surveillance systems, and then intimidate the store manager into giving you what you truly desire... that elusive safe. Wishing you the best of luck, thief.
Features
Targeting System: This script is compatible with various targeting systems, including qb-target, ox target, or q-target, among others.
Built-In Interactions: If you prefer not to use the targeting system, we have designed a Draw3D interaction system within our script (please note that this may consume additional resources).
Framework: This script has been designed to work with any version of QB-CORE or ESX. If you have another framework, we recommend acquiring the open-source version to adapt it to your framework.
Police Alerts: It includes a configurable police alert system for adaptation if you want to integrate it with scripts like ps-dispatch, cd_dispatch, or another dispatch script.
Alert Sound: If you have "xsound" installed in your resources folder, you can use the alert that starts sounding after a hacking attack.
Optimization: The script includes excellent optimization.
Configuration: It includes a configuration file with all the necessary parameters to provide you with the best immersion.
Dependencies
Framework: A qb-core or ESX framework is required for the resource to start correctly.
Scripts: , and a target script(if you wanna enjoy script with targeting system).
Showcase
âââ
INSTALLATION
Edit qb-shops to avoide duplicated peds into.
1. Find For createPeds() function inside qb-shops/client/main.lua and change for the code below!
```lua
local function createPeds()
if pedSpawned then return end
for k, v in pairs(Config.Locations) do
local current = type(v["ped"]) == "number" and v["ped"] or joaat(v["ped"])
RequestModel(current)
while not HasModelLoaded(current) do
Wait(0)
end
if v["ped"] ~= 's_m_y_ammucity_01' then
ShopPed[k] = CreatePed(0, current, v["coords"].x, v["coords"].y, v["coords"].z-1, v["coords"].w, false, false)
TaskStartScenarioInPlace(ShopPed[k], v["scenario"], 0, true)
FreezeEntityPosition(ShopPed[k], true)
SetEntityInvincible(ShopPed[k], true)
SetBlockingOfNonTemporaryEvents(ShopPed[k], true)
if Config.UseTarget then
exports['qb-target']:AddTargetEntity(ShopPed[k], {
options = {
{
label = v["targetLabel"],
icon = v["targetIcon"],
item = v["item"],
action = function()
openShop(k, Config.Locations[k])
end,
job = v.requiredJob,
gang = v.requiredGang
}
},
distance = 2.0
})
end
end
end
local models = {'s_m_y_ammucity_01', 's_m_m_ammucountry'}
exports['qb-target']:AddTargetModel(models, { -- This defines the models, can be a string or a table
options = {
{
label = 'Open Ammunation',
icon = 'fas fa-gun',
action = function()
openShop('ammunation', Config.Locations['ammunation'])
end,
}
},
distance = 2.0
})
local current = type(Config.SellCasinoChips.ped) == 'number' and Config.SellCasinoChips.ped or joaat(Config.SellCasinoChips.ped)
RequestModel(current)
while not HasModelLoaded(current) do
Wait(0)
end
ShopPed["casino"] = CreatePed(0, current, Config.SellCasinoChips.coords.x, Config.SellCasinoChips.coords.y, Config.SellCasinoChips.coords.z-1, Config.SellCasinoChips.coords.w, false, false)
FreezeEntityPosition(ShopPed["casino"], true)
SetEntityInvincible(ShopPed["casino"], true)
SetBlockingOfNonTemporaryEvents(ShopPed["casino"], true)
if Config.UseTarget then
exports['qb-target']:AddTargetEntity(ShopPed["casino"], {
options = {
{
label = 'Sell Chips',
icon = 'fa-solid fa-coins',
action = function()
TriggerServerEvent("qb-shops:server:sellChips")
end
}
},
distance = 2.0
})
end
pedSpawned = true
end
```