Config

Config = {}

Config.Debug = true -- Enable debug prints and command /create_camera

Config.Notify = 'ox_lib' -- Notification system: 'esx', 'okok', 'ox_lib', 'custom'

Config.UseTarget = false -- Use ox_target for NPC interaction
-- false = drawtext, true = ox_target
-- if you don't use target then it will use drawtext and you have worse performance with lot of locations/NPCs

Config.DrawTextDistance = 2.0 -- Distance for drawtext interaction
Config.WalkthroughLabel = "Open Walkthrough" -- Label for the walkthrough interaction

Config.Key = {
    saveCamera = 191, -- ENTER
    cancelCamera = 194, -- BACKSPACE
    openWalkthrough = 38, -- E
}


Config.Translate = {
    next = "Přeskočit o krok",
    complete = "Dokončit",
    to_the_end = "Do konce",
    close = "Zavřít",
    category = "Kategorie",
    loading = "Načítání obsahu...",
    notify_no_job = "Nemáš potřebnou práci pro přístup k těmto informacím!",
    notify_title = "Walkthrough",
    notify_camera_info = "Stiskni ENTER pro uložení pozice kamery, nebo BACKSPACE pro zrušení.",
    notify_oxlib_inactive = "📋 ox_lib nebyl aktivní — souřadnice zapsány do F8 konzole.",
    notify_camera_saved = "📋 Souřadnice kamery zkopírovány do schránky!",
    notify_camera_is_running = "📷 Camera mód už běží! Ukonči ho klávesou BACKSPACE.",
    notify_ended_without_save = "❌ Camera mód ukončen bez uložení.",
}

-- Walkthrough locations
Config.Locations = {
    {
        name = "Clockinbell Job", -- Name of the location
        coords = vector3(-75.4795, 6266.4819, 31.3656), -- Coordinates for NPC spawn
        requiredJob = false, -- false or "job_name" - false = no job required, "job_name" = specific job required
        npcModel = "A_M_M_Farmer_01", -- Model NPC
        npcHeading = 1.5355, -- Heading NPC
        walkthrough = {
            {
                title = "Start",
                description = "This is where it all begins. After checking in at the office, you’ll need to log in to the service. Then you’ll put on your clothes and you’ll be able to continue further.",
                image = "https://media.discordapp.net/attachments/1431728033685045329/1432070103008149594/image.png?ex=68ffb6b7&is=68fe6537&hm=c9fb9d8a4cc99bec0fe441ddde3a051e37c6224654aea1cae72c2ca69a43e223&=&format=webp&quality=lossless&width=532&height=350", -- Nahraď svým odkazem
                category = "Clockinbell Job",
                cameraCoords = vector3(-73.06, 6278.44, 32.49),
                cameraRotation = vector3(-10.90, -0.00, 179.16),
            },
            {
                title = "Car rental", 
                description = "Here you can then borrow the vehicle you need to transport more chickens, and afterward you’ll drive to the marked location on the map where you’ll collect them.",
                image = "https://media.discordapp.net/attachments/1431728033685045329/1432070103008149594/image.png?ex=68ffb6b7&is=68fe6537&hm=c9fb9d8a4cc99bec0fe441ddde3a051e37c6224654aea1cae72c2ca69a43e223&=&format=webp&quality=lossless&width=532&height=350",
                category = "Clockinbell Job",
                cameraCoords = vector3(-60.12, 6282.71, 32.88),
                cameraRotation = vector3(-15.63, -0.00, 172.45)
            },
            {
                title = "Chicken Pickup",
                description = "After arriving at the marked location, you will need to get out of the vehicle and pick up the chickens. Once you have collected enough chickens, you will return to the starting point.",
                image = "https://media.discordapp.net/attachments/1431728033685045329/1432070103008149594/image.png?ex=68ffb6b7&is=68fe6537&hm=c9fb9d8a4cc99bec0fe441ddde3a051e37c6224654aea1cae72c2ca69a43e223&=&format=webp&quality=lossless&width=532&height=350",
                category = "Clockinbell Job",
                cameraCoords = vector3(2376.22, 5037.34, 49.48),
                cameraRotation = vector3(-14.54, -0.40, -6.85)
            },
            {
                title = "Chicken Processing",
                description = "Once you have returned to the starting point with the chickens, you will need to process them. This involves cleaning and preparing the chickens for packaging. After processing.",
                image = "https://media.discordapp.net/attachments/1431728033685045329/1432070103008149594/image.png?ex=68ffb6b7&is=68fe6537&hm=c9fb9d8a4cc99bec0fe441ddde3a051e37c6224654aea1cae72c2ca69a43e223&=&format=webp&quality=lossless&width=532&height=350",
                category = "Clockinbell Job",
                cameraCoords = vector3(-81.57, 6232.93, 32.00),
                cameraRotation = vector3(-15.76, -0.00, -1.07)
            },
            {
                title = "Chicken Packaging",
                description = "After processing the chickens, the next step is packaging. You will need to carefully pack the chickens into boxes, ensuring they are secure for transport. Once packaged, you can proceed to deliver them to the designated location.",
                image = "https://media.discordapp.net/attachments/1431728033685045329/1432070103008149594/image.png?ex=68ffb6b7&is=68fe6537&hm=c9fb9d8a4cc99bec0fe441ddde3a051e37c6224654aea1cae72c2ca69a43e223&=&format=webp&quality=lossless&width=532&height=350",
                category = "Clockinbell Job",
                cameraCoords = vector3(-94.75, 6212.56, 31.95),
                cameraRotation = vector3(-14.63, 0.00, 106.47)
            },
        }
    },
}

function Notify(title, text, type)
    if Config.Notify == 'esx' then
        ESX.ShowNotification(text)
    elseif Config.Notify == 'okok' then
        exports['okokNotify']:Alert(title, text, 5000, type, true)
    elseif Config.Notify == 'ox_lib' then
        lib.notify({
            title = title,
            description = text,
            type = type,
            duration = 5000,
            showDuration = true,
        })
    elseif Config.Notify == 'custom' then
        -- Add your custom notification code here
    else
        ESX.ShowNotification(text)
    end
end


-- When I start the walkthrough it activates normally even if there's nothing here, but you can add, for example, hiding the HUD or something similar
function WalkthroughStart()
    -- Add your custom code here
    print("Walkthrough started")
end

Last updated