Config settings

Config = {}
Config.Debug = false -- Set to true if you want to see debug messages
Config.VersionCheck = true -- Set to false if you don't want console notifications when update is available

Config.Framework = "esx"
--[[
    Supported Frameworks:
        • esx | https://github.com/esx-framework/esx-legacy
        • qb | https://github.com/qbcore-framework/qb-core
]]

Config.FrameworkEvents = { -- Change these events if you changed their name in your framework script
    esx = { 
        resource_name = 'es_extended',
        main = 'esx:getSharedObject',
        load = 'esx:playerLoaded',
        job = 'esx:setJob'
    },
    qbcore = { 
        resource_name = 'qb-core',
        main = 'QBCore:GetObject',
        load = 'QBCore:Client:OnPlayerLoaded',
        job = 'QBCore:Client:OnJobUpdate',
        gang = 'QBCore:Client:OnGangUpdate',
    }
}

Config.Target = "ox_target" -- Target script
--[[
    Supported Targets:
        • ox_target
        • qb-target
]]

Config.Notifications = "okokNotify" -- Leave empty and edit extra/notify.lua if you want to use other notifications
--[[
    Supported Notifications:
        • esx
        • qb
        • okokNotify
        • pNotify
        • ps-ui
]]

Config.Items = {
    [1] = {
        itemName = "aceton", -- Has to be the same as name you use to spawn this item
        itemLabel = "Aceton", -- This label will show in selection menu
        price = 1500, -- Price for ONE piece of item
        min = 1, -- Minimum amount of item player that can sell during one mission ⚠️ MUST BE AT LEAST 1 ⚠️
        max = 20, -- Maximum amount of item player that can sell during one mission
    },
    [2] = {
        itemName = "coke",
        itemLabel = "Cocaine",
        price = 5000,
        min = 1, 
        max = 150,
    },
    [3] = {
        itemName = "weed",
        itemLabel = "Weed",
        price = 3000,
        min = 1, 
        max = 150,
    },
    [4] = {
        itemName = "meth",
        itemLabel = "Meth",
        price = 3500,
        min = 1, 
        max = 150,
    },
    [5] = {
        itemName = "opium",
        itemLabel = "Opium",
        price = 3200,
        min = 1, 
        max = 150,
    },
    [6] = {
        itemName = "weed_pooch",
        itemLabel = "Weed pooch",
        price = 15000,
        min = 1, 
        max = 30,
    },
    [7] = {
        itemName = "emerald",
        itemLabel = "Emerald",
        price = 25000,
        min = 1, 
        max = 15,
    },
    [8] = {
        itemName = "egg",
        itemLabel = "Egg",
        price = 500000,
        min = 1, 
        max = 2,
    },
    [9] = {
        itemName = "fish2",
        itemLabel = "Some Fish aye",
        price = 50,
        min = 1, 
        max = 75,
    },
    [10] = {
        itemName = "beer",
        itemLabel = "Beer",
        price = 5,
        min = 1, 
        max = 5,
    },
    [11] = {
        itemName = "meat",
        itemLabel = "Fresh meat",
        price = 20,
        min = 1, 
        max = 100,
    },
    [12] = {
        itemName = "panties",
        itemLabel = "VS panties",
        price = 1337,
        min = 1, 
        max = 20,
    },
}

Config.ImageSource = "nui://ox_inventory/web/build/images/" -- Location of items images - leave empty if you want to upload images to this script folder

Config.Laptop = {
    [1] = { -- You can add multiple laptop positions
        model = `prop_laptop_01a`, --Prop model for interaction
        coords = vector3(1687.19, 3286.29, 41.10), -- Prop coords
        heading = 60.0, -- Prop heading
        requireHacking = true, -- Whether player has to complete a hack to access missions
        notifyPoliceOnFailedHack = true, -- Whether police should be notified when player fails to hack
        whitelistedJobs = { }, -- Only these jobs will be able to access missions
        blacklistedJobs = { }, -- These jobs won't be able to access missions - Leave both empty if you want everyone to be able to open missions
    },
    [2] = {
        model = `prop_laptop_01a`,
        coords = vector3(1542.00, 2178.72, 78.745),
        heading = 120.0, 
        requireHacking = true,
        notifyPoliceOnFailedHack = true,
        whitelistedJobs = { },
        blacklistedJobs = { }, 
    }
}

Config.PlaneSpawnPoints = {
    [1] = { -- You can add multiple spawnpoints that will be chosen randomly when starting the mission
        model = `cuban800`, -- Plane model
        coords = vector3(1730.75, 3312.79, 41.22), -- Plane spawn coords
        heading = 189.93, -- Plane heading
        deleteCoords = vector3(1730.75, 3312.79, 40.30) -- Coords to delete the plane after mission
    },
    [2] = {
        model = `cuban800`,
        coords = vector3(2134.55, 4781.36, 40.97),
        heading = 22.93,
        deleteCoords = vector3(2134.55, 4781.36, 40.05)
    }
}

Config.MinimumPolice = 2 -- Minimum amount of police officers required to start a mission
Config.PoliceJob = "police" -- Name of police job
Config.PoliceBlipTimer = 5 -- Time (in minutes) after which illegal selling blip will dissapear

Config.PaymentMethod = "money"
--[[
    Supported Methods:
        • money
        • bank
        • black_money

]]
Config.BlackMoneyName = "blackmoney" -- ⚠️ QB ONLY ⚠️ Name for black money account

Config.ShowAltitudeWarningsAmount = true -- Whether altitude warning amount should be displayed in bottom-right corner
Config.MaxAltitude = 70.0 -- Max altitude above ground where player can fly without getting altitude alerts
Config.AltitudeMaxAlerts = 5 -- Max altitude alerts before police will be informed about delivery (1 alert every 5 seconds so 5*5 = 25 seconds above limit and after that time police will be alarmed) Set to 0 if you don't want to alert police at all
Config.ReportPercent = 15 -- [0-100] Percent chance of sending an alert to police after successfull delivery. Set to 0 if you don't want to inform cops after successfull delivery.
Config.DeliveryProp = `prop_mil_crate_01`
Config.DeliveryRadius = 50.0 -- Radius of delivery point
Config.DeliveryMarker = true -- Whether marker should be shown on delivery point (might look buggy on mountains and water)
Config.DeliveryFlare = true -- Whether red flare should be visible on drop zone (It's recommended to keep it true)
Config.DeliveryPoints = {
    [1] = {
        coords = vector3(586.30, 3947.27, 32.33), -- Delivery coords (if on water than its good to set Z a little bit higher so the waves won't cover the marker)
        isOnWater = true, -- Set to true if the point is on water
        multiplier = 1.0, -- Reward money multiplier (default 1.0)
    },
    [2] = {
        coords = vector3(193.93, 2860.53, 44.87), 
        isOnWater = false, 
        multiplier = 1.0,
    },
    [3] = {
        coords = vector3(1475.15, 6357.71, 23.7), 
        isOnWater = false, 
        multiplier = 1.0,
    },
    [4] = {
        coords = vector3(227.73, 7394.7, 15.51), 
        isOnWater = false, 
        multiplier = 1.0,
    },
    [5] = {
        coords = vector3(500.41, 5594.35, 795.6), 
        isOnWater = false, 
        multiplier = 1.3,
    },
    [6] = {
        coords = vector3(-1319.68, 4454.97, 21.25), 
        isOnWater = false, 
        multiplier = 1.0,
    },
    [7] = {
        coords = vector3(-2942.78, 4164.67, 11.22), 
        isOnWater = true, 
        multiplier = 1.0,
    },
    [8] = {
        coords = vector3(-1533.11, 1382.23, 124.9), 
        isOnWater = false, 
        multiplier = 1.0,
    },
}

Config.MapBlip = { -- For blip settings visit: https://docs.fivem.net/docs/game-references/blips/
    laptop_blip = {
        enabled = true, -- Set to false if you dont want to mark that ped on map
        label = "Selling missions",
        sprite = 306,
        scale = 0.75,
        color = 2,
    },
    police_blip = { -- To edit blip function go to extra/police_cl.lua and extra/police_sv.lua
        label = "Illegal selling in progress",
        sprite = 161,
        scale = 1.4,
        color = 3
    }
}

Language = { -- Customize your translation here ⚠️ EDIT ONLY RIGHT SIDE ⚠️
    ["PROP_INTERACTION"] = "SELLING MISSIONS",
    ["STOP_MISSION"] = "CANCEL MISSION",
    ["NOTIFY_TITLE"] = "SELLING MISSION",
    ["NOT_ENOUGH"] = "You don't have enough items to start this mission!",
    ["MISSION_STARTED"] = "Mission started! Follow the instructions",
    ["MISSION_CANCELED"] = "Mission canceled!",
    ["PLANE_LOCATION"] = "Plane Location",
    ["PLANE_MARKED_ON_MAP"] = "Plane location has been marked on your minimap",
    ["PLANE_DESTROYED"] = "Plane has been destroyed, mission failed!",
    ["DELIVERY_MARKED_ON_MAP"] = "Delivery point has been marked on your minimap",
    ["DELIVERY_LOCATION"] = "Delivery location",
    ["ALTITUDE_WARNINGS"] = "ALTITUDE WARNINGS",
    ["KEEP_LOW_ALTITUDE"] = "Keep the altitude as low as possible so the radars won't detect you!",
    ["TOO_HIGH"] = "You are flying too high, lower your altitude immediately!",
    ["POLICE_ALARMED"] = "Radars had detected your plane! Police will chase you!",
    ["PRESS_TO_DROP"] = "Press ~INPUT_CONTEXT~ to drop a delivery",
    ["DELIVERY_LANDED_WAIT"] = "Delivery deployed, wait for landing confirmation!",
    ["DELIVERY_LANDED_DISTANCE"] = "Delivery landed %s meters from target, good job!",
    ["GO_BACK"] = "Go back to the airport",
    ["AIRPORT_LOCATION"] = "Airport location",
    ["PLANE_DELETE"] = "Press ~INPUT_CONTEXT~ to delete plane",
    ["HACK_FAILED"] = "Hack failed!",
    ["POLICE_NOTIFY"] = "Someone caught you, police will be here soon!",
    ["POLICE_ALERT"] = "Illegal selling caught near %s",
    ["ITEMS_GONE"] = "You don't have these items anymore! Mission canceled",
    ["DELIVERED_AND_GOT"] = "You have delivered %sx %s and got %s$",
    ["NOT_ENOUGH_COPS"] = "There is not enough cops to start this mission!"
}

HTML_Language = {
    ["CHOOSE_THIS_ITEM"] = "CHOOSE",
    ["SELECT_AMOUNT"] = "SELECT AMOUNT",
    ["POTENTIAL_REWARD"] = "POTENTIAL REWARD:",
    ["START_MISSION"] = "START",
    ["CLICK_KEYS"] = "HACK THIS DEVICE TO ACCESS MISSIONS",
    ["HACK_FAILED"] = "HACK FAILED!",
    ["HACK_SUCCESS"] = "HACK SUCCESSFULL!",
    ["HACK_PREPARE"] = "PREPARE YOURSELF!"
}

-- ⚠️DON'T TOUCH THIS⚠️
function L(id) if Language[id] then return Language[id] else return "MISSING LOCALE ("..id..")" end end

Last updated