Configuration

shared/sh_main.lua
SHMain = {
    SetLocale = 'en', -- You can make your language in Locale
    UseGroups = false, -- Use groups for work
    Cops = 0, -- If you want ot have cops to start the job
    Items = { -- Items
        Ac = 'bd_ac',
        Screwdriver = 'bd_screwdriver',
    },
    Alarm = { -- Alarm settings
        Link = 'https://youtu.be/BQI1Fvp6rBw?si=RcBx9sAlE92AHofd',
        Volume = 0.4,
        Distance = 10,
    },
    CoolDowns = { -- Cooldowns
        PlayerCooldown = 5, -- Player cooldown (minutes)
        QueueCooldown = 15, -- Queue cooldown (minutes)
    },
    Money = { -- Money settings
        Type = 'cash', -- Money type (cash or bank)
        ScrewdriverPrice = 100, -- Buy price
        SellItemPrice = 300, -- Sell money amaount 100 per 1 item
        Reason = 'RoofRunningJob',
    },
    Objects = { -- Objects
        AcModel = 'prop_aircon_m_06', -- Spawn object model
        AcModel2 = 'bulgar_v_ind_cm_aircomp', -- Hands object model
    },
    AttackingPeds = {
        Model = 'a_m_m_og_boss_01',
        Weapon = 'WEAPON_BAT'
    },
    CheckTimes = { -- Check times
        UpdateCops = 5, -- Update cops count (minutes)
        QueueCheckJob = 2, -- Check for job (minutes)
        WorkCoolDown = 3, -- Check for cooldown (minutes)
        QueueCooldown = 3, -- Check for queue cooldown (minutes)
        CourchCheckStart = 1, -- After the time you set the check for crouch will start (minutes)
    },
    WorkChance = { -- Work chance settings
        Enable = false, -- Enable chance
        GiveWorkChance = 70, -- Chance to get work in %
        Func = function(OtherChance) -- Chance function
        -- If you want you can make your own chance logic here
        -- Just need to return true or false and chance for the debug print
            local chance = math.random(1, 100)
            if chance == OtherChance then
                return true, chance
            end
            return false, chance
        end,
    },
    BlipsSettings = { -- Blips settings
        ["JobBlip"] = {
            ["Sprite"] = 771,
            ["Color"] = 12,
            ["Scale"] = 0.7,
            ["Name"] = "AC Company",
        },
        ["LocationBlip"] = {
            ["Sprite"] = 478,
            ["Color"] = 13,
            ["RouteColor"] = 30,
            ["ZoneColor"] = 30,
            ["Scale"] = 0.7,
            ["Name"] = "Roof",
        },
    },
    NPCS = { -- Npcs
        {
            Enable = true, -- Npc Location Enable
            Blip = true, -- Npc Location Blip
            Name = 'RoofRunningStartNPC', -- Npc id for the target
            Model = "S_M_M_PrisGuard_01",
            coords = vec4(572.5880, 129.1617, 99.4747, 251.8821),
            Target = {
                {
                    event = 'bd-roofruning:[Client]:Addtoqueue', -- If you want to remove that just disable the npc (Enable = false)
                    icon = 'fa-solid fa-clock',
                    label = 'StartFinishWork',
                },
                { -- You can remove that if you want to get it somewhere else
                    event = 'bd-roofruning:[Client]:Buyscrewdriver',
                    icon = 'fa-solid fa-dollar-sign',
                    label = 'BuyScrewdriver',
                },
                { -- You can remove that if you want to sell it somewhere else
                    event = 'bd-roofruning:[Client]:SellComponents',
                    icon = 'fa-solid fa-dollar-sign',
                    label = 'SellComponents',
                },
            }
        },
    },
    JobZones = { -- Locations
        {ZoneCoords = vec4(-169.9280, 317.1354, 102.7419, 206.6713), AcZones = {
            {coords = vec4(-159.5295, 317.8686, 102.1, 268.9396), Done = false},
            {coords = vec4(-172.3174, 311.1785, 102.7, 78.2322), Done = false},
            {coords = vec4(-170.5649, 320.0896, 101.7, 91.7653), Done = false},
            {coords = vec4(-143.7960, 308.1080, 102.1, 268.3657), Done = false},
            {coords = vec4(-159.7069, 295.2910, 102.1, 268.1147), Done = false},
            {coords = vec4(-143.1750, 298.2325, 102.1, 0.3413), Done = false},
        }, AttakingPeds = {
            {coords = vec4(-172.9439, 322.8054, 102.7419, 255.0791)},
            {coords = vec4(-155.2893, 315.0219, 103.1495, 48.6202)},
        }},
        {ZoneCoords = vec4(-173.8446, 231.6511, 100.1802, 5.0214), AcZones = {
            {coords = vec4(-170.0312, 233.5885, 99.15, 266.7047), Done = false},
            {coords = vec4(-170.6841, 228.5154, 99.15, 184.5530), Done = false},
            {coords = vec4(-176.3596, 229.4247, 99.15, 22.8501), Done = false},
            {coords = vec4(-157.4336, 215.6813, 101.4, 178.0863), Done = false},
            {coords = vec4(-163.2721, 213.6566, 101.4, 357.3780), Done = false},
            {coords = vec4(-159.2631, 223.6738, 102.3936, 92.0761), Done = false},
        }, AttakingPeds = {
            {coords = vec4(-179.8402, 231.7355, 100.1796, 269.0043)},
            {coords = vec4(-167.3147, 233.3403, 100.1834, 82.2617)},
        }},
        {ZoneCoords = vec4(-1267.3641, -867.5334, 23.3847, 219.0429), AcZones = {
            {coords = vec4(-1257.1490, -872.7498, 21.2, 214.9030), Done = false},
            {coords = vec4(-1267.6599, -872.9849, 21.2, 128.5175), Done = false},
            {coords = vec4(-1262.8615, -861.6431, 21.2, 306.6536), Done = false},
            {coords = vec4(-1271.7852, -864.4080, 21.2, 37.5196), Done = false},
            {coords = vec4(-1280.1105, -871.1892, 21.2, 32.5614), Done = false},
            {coords = vec4(-1272.8958, -878.5883, 21.2, 216.9241), Done = false},
        }, AttakingPeds = {
            {coords = vec4(-1262.1757, -876.7380, 22.2766, 38.3699)},
            {coords = vec4(-1256.0630, -872.1531, 22.2766, 84.0281)},
        }},
        {ZoneCoords = vec4(185.9743, -172.9532, 63.0796, 262.4092), AcZones = {
            {coords = vec4(179.4580, -167.1403, 62.1, 71.6903), Done = false},
            {coords = vec4(196.9145, -169.7793, 62.1, 249.1541), Done = false},
            {coords = vec4(193.9072, -179.0514, 62.1, 255.8551), Done = false},
            {coords = vec4(188.5044, -181.7398, 62.1, 155.3701), Done = false},
            {coords = vec4(179.1141, -178.5821, 62.1, 161.5321), Done = false},
            {coords = vec4(193.5554, -163.3878, 59.7, 72.6385), Done = false},
        }, AttakingPeds = {
            {coords = vec4(187.7242, -168.1300, 63.0915, 159.6994)},
            {coords = vec4(195.7741, -171.2551, 63.0769, 96.4907)},
        }},
        {ZoneCoords = vec4(120.4228, -1289.8247, 35.0099, 215.7874), AcZones = {
            {coords = vec4(129.7419, -1280.3387, 34.0, 301.0783), Done = false},
            {coords = vec4(126.4772, -1291.3140, 34.0, 209.7029), Done = false},
            {coords = vec4(113.1996, -1294.3650, 34.0, 206.7906), Done = false},
            {coords = vec4(111.0315, -1305.0656, 33.9, 209.7171), Done = false},
            {coords = vec4(102.0045, -1290.3336, 34.0, 36.2898), Done = false},
            {coords = vec4(93.0217, -1290.6400, 35.35, 32.1767), Done = false},
        }}, AttakingPeds = {
            {coords = vec4(124.0483, -1294.0774, 35.0100, 32.2776)},
            {coords = vec4(126.7887, -1280.5490, 35.0100, 119.8414)},
        },
        {ZoneCoords = vec4(206.7790, -1483.4199, 34.8, 227.5984), AcZones = {
            {coords = vec4(206.7790, -1483.4199, 34.8, 227.5984), Done = false},
            {coords = vec4(220.5416, -1471.5662, 34.8, 313.8340), Done = false},
            {coords = vec4(217.9027, -1484.3942, 34.8, 135.8748), Done = false},
            {coords = vec4(232.0812, -1489.3545, 34.8, 226.8833), Done = false},
            {coords = vec4(222.6842, -1499.7805, 34.8, 218.7051), Done = false},
            {coords = vec4(222.2523, -1541.2109, 34.8, 222.2726), Done = false},
        }, AttakingPeds = {
            {coords = vec4(212.5240, -1495.8347, 35.8288, 330.8918)},
            {coords = vec4(241.2315, -1491.7284, 35.8288, 87.0364)},
        }},
    },
    Locale = { -- Locales. You can make your own
        ['en'] = {
            ['JobName'] = 'Roof Running',
            ['TitleMessage'] = 'Head to the location on GPS',
            ['ProgBar'] = 'Stealing AC component',
            ['SearchArea'] = 'Search assigned area',
            ['Collected'] = 'Collected',
            ['LeaveArea'] = "Leave the area. Make sure you aren't followed",
            ['StartFinishWork'] = 'Start/Finish the job',
            ['BuyScrewdriver'] = 'Buy screwdriver',
            ['SellComponents'] = 'Sell AC Components',
            ['FoundWork'] = 'We found work for you!',
            ['Screwdriverno'] = 'No Screwdriver!',
            ['Getacparts'] = 'Get AC Parts',
            ['TimeUntilCrouch'] = "You have %d minutes to get up to the roof and crouch before the alarm activates.",
            ['NotEnoughMoney'] = "You don't have enough money to buy screwdriver.",
            ['NoGroup'] = 'You are not in a group!',
            ['NoLeader'] = 'You are not the group leader!',
            ["JoinedQueue"] = "You joined the queue, Wait for work.",
            ["LeavedQueue"] = "You left the queue.",
            ["NoCops"] = "Not enough cops",
        },
        ['bg'] = {
            ['JobName'] = 'Roof Running',
            ['TitleMessage'] = 'Отидете до мястото, показано на GPS-а',
            ['ProgBar'] = 'Разглобяваш климатика',
            ['SearchArea'] = 'Претърсете определената зона',
            ['Collected'] = 'Събрано',
            ['LeaveArea'] = 'Напуснете зоната. Уверете се, че не ви следят',
            ['StartFinishWork'] = 'Започнете/Завършете работата',
            ['BuyScrewdriver'] = 'Купете отвертка',
            ['SellComponents'] = 'Продайте компоненти.',
            ['FoundWork'] = 'Намерихме работа за вас!',
            ['Screwdriverno'] = 'Нямате отвертка!',
            ['Getacparts'] = 'Вземете компоненти от климатици',
            ['TimeUntilCrouch'] = "Имате %d минути да се качите на покрива и да се наведете, преди да се активира алармата.",
            ['NotEnoughMoney'] = "Нямате достатъчно пари за отвертка.",
            ['NoGroup'] = 'Не сте в група!',
            ['NoLeader'] = 'Не сте лидерът на групата!',
            ["JoinedQueue"] = "Присъединихте се към опашката, чакайте за работа.",
            ["LeavedQueue"] = "Напуснахте опашката.",
            ["NoCops"] = "Няма достатъчно полицаи",
        },
    },
}