Config

Config = {}
-------------------------------------------------------------------------------------------------------------------------------
---
--  ______     ______     __   __   ______     __            ______     ______     ______     __     ______   ______   ______    
-- /\  == \   /\  ___\   /\ \ / /  /\  ___\   /\ \          /\  ___\   /\  ___\   /\  == \   /\ \   /\  == \ /\__  _\ /\  ___\   
-- \ \  __<   \ \  __\   \ \ \'/   \ \  __\   \ \ \____     \ \___  \  \ \ \____  \ \  __<   \ \ \  \ \  _-/ \/_/\ \/ \ \___  \  
--  \ \_\ \_\  \ \_____\  \ \__|    \ \_____\  \ \_____\     \/\_____\  \ \_____\  \ \_\ \_\  \ \_\  \ \_\      \ \_\  \/\_____\ 
--   \/_/ /_/   \/_____/   \/_/      \/_____/   \/_____/      \/_____/   \/_____/   \/_/ /_/   \/_/   \/_/       \/_/   \/_____/ 
---   
-------------------------------------------------------------------------------------------------------------------------------


-- Set to 'true' if you're using a custom framework and want to manually configure it.
-- Leave it as 'false' to let the script auto-detect supported frameworks like QBCore or OX.
Config.CustomFramework = false

-- Set to 'true' to use your own custom notification system.
-- If 'false', it will use the default from your framework (e.g., QBCore or OX).
Config.CustomNotify = false

-- Set to 'true' to use your own custom TextUI system.
-- If 'false', it will use the default from your framework (e.g., QBCore or OX).
Config.CustomTextUI = false

-- Enable or disable 3D text prompts (e.g., press [E] to open menu).
-- Set to 'false' if you don't want to see any 3D text interactions.
Config.DrawText3D = true

-- Interaction key used to open the vehicle shop.
-- Default is 38 which corresponds to the 'E' key.
Config.InteractKey = 38

-- Time (in seconds) allowed for a test drive.
Config.TestDriveTimer = 15
-- Test drive plate custom name.
Config.TestDrivePlate = "TEST"
-- Vehicle return % of the price.
Config.ReturnPrice = 25 -- 25%

-- Markers

Config.Markers = {
    ["Interaction"] = {
        type = 20,
        scaleX = 0.5,
        scaleY = 0.4,
        scaleZ = 0.3,
        color = {
            R = 219,
            G = 177,
            B = 13,
            A = 255,
        }
    },
    ["Return1"] = {
        type = 20,
        scaleX = 0.5,
        scaleY = 0.4,
        scaleZ = 0.3,
        color = {
            R = 219,
            G = 177,
            B = 13,
            A = 255,
        } 
    },
    ["Return2"] = {
        type = 25,
        scaleX = 3.0,
        scaleY = 3.0,
        scaleZ = 3.0,
        color = {
            R = 219,
            G = 177,
            B = 13,
            A = 255,
        } 
    }
}


-- Vehicle lists categorized by shop name.
Config.Vehicles = {
    ["Stand"] = {
        Categories = {"super","sedans","muscle","compact","off-road","classic"}, -- Categories that will be shown in this shop.
        Vehicles = {
            { model = "furiawb", label = "furiawb", price = "1000", capacity = "25", category = "super" },
            { model = "adder", label = "adder", price = "10000", capacity = "27", category = "super" },
            { model = "blista", label = "blista", price = "100000", capacity = "50", category = "sedans" },
            { model = "entityxf", label = "entityxf", price = "1000000", capacity = "15", category = "super" },
            { model = "zentorno", label = "zentorno", price = "100", capacity = "100", category = "muscle" },
        }
    },
    ["Dock"] = { -- Boats / Watercraft shop
        Categories = {"boats","waterbikes"},
        Vehicles = {
            { model = "dinghy", label = "Dinghy", price = "1000", capacity = "32", category = "boats" },
            { model = "suntrap", label = "Suntrap", price = "2500", capacity = "67", category = "boats" },
            { model = "squalo", label = "Squalo", price = "5000", capacity = "55", category = "boats" },
            { model = "speeder2", label = "Speeder 2", price = "10000", capacity = "23", category = "boats" },
            { model = "jetmax", label = "Jetmax", price = "1000000", capacity = "15", category = "boats" },
            { model = "toro", label = "Toro", price = "100000", capacity = "17", category = "boats" },
            { model = "patrolboat", label = "Ptrolboat", price = "1000", capacity = "15", category = "boats" },
            { model = "seashark", label = "Seashark", price = "1000", capacity = "15", category = "waterbikes" },
            { model = "seashark2", label = "Seashark 2", price = "1300", capacity = "18", category = "waterbikes" },
            { model = "seashark3", label = "Seashark 3", price = "1500", capacity = "25", category = "waterbikes" },
           
        }
    },
    ["Hangar"] = { -- Aircraft shop (planes and helicopters)
        Categories = {"planes","helicopters"},
        Vehicles = {
            { model = "alphaz1", label = "Alphaz1", price = "1000", capacity = "15", category = "planes" },
            { model = "cuban800", label = "Cuban", price = "10000", capacity = "13", category = "planes" },
            { model = "luxor", label = "Luxor", price = "100000", capacity = "17", category = "planes" },
            { model = "mammatus", label = "Mammatus", price = "1000000", capacity = "25", category = "planes" },
            { model = "nokota", label = "Nokota", price = "35000", capacity = "33", category = "planes" },
            { model = "nimbus", label = "Nimbus", price = "953000", capacity = "55", category = "planes" },
            { model = "mogul", label = "Mogul", price = "53000", capacity = "67", category = "planes" },
            { model = "pyro", label = "Pyro", price = "500000", capacity = "53", category = "planes" },
            { model = "vestra", label = "Vestra", price = "1000000", capacity = "13", category = "planes" },
            { model = "buzzard", label = "Buzzard", price = "564330", capacity = "23", category = "helicopters" },
            { model = "frogger", label = "Frogger", price = "15000", capacity = "55", category = "helicopters" },
            { model = "seasparrow", label = "Seasparrow", price = "13000", capacity = "63", category = "helicopters" },
            { model = "supervolito", label = "Supervolito", price = "25000", capacity = "25", category = "helicopters" },
            { model = "swift", label = "Swift", price = "250000", capacity = "54", category = "helicopters" },
            { model = "valkyrie", label = "Valkyrie", price = "55000", capacity = "15", category = "helicopters" },
            { model = "maverick", label = "Maverick", price = "75000", capacity = "67", category = "helicopters" },
        }
    },
}

-- Configuration for each vehicle shop location
Config.VehicleLocations = {
    {
        name = "VehicleShop", -- Cosmetic Name just to show on 3D text.
        job = 'all', -- Who can access this shop: 'all' for everyone, or specific jobs like 'police' or {"police","sheriff"}.
        type = "car", -- Type of shop: "car", "boats", or "air".
        vehicles = "Stand", -- Reference to the vehicle list defined in Config.Vehicles.
        blip = {
            show = true,        -- Whether to show a blip on the map.
            name = "Revel - VehicleShop", -- Name shown on the blip.
            color = 5,          -- Blip color.
            sprite = 225,       -- Blip sprite.
            size = 0.8          -- Blip size.
        },
        InteractPos = {x = -57.15, y =  -1097.07, z = 26.42}, -- Position where players press the interaction key to open the shop.
        PreviewPos = {x = -74.45, y = -821.06, z = 283.59, heading = 45.21}, -- Position where the vehicle is previewed before purchase.
        PlayerCamPos = {x = -75.92, y = -812.36, z = 285.93, heading = 186.7}, -- Camera position to view the previewed vehicle.
        TestDrivePos = {x = -1043.63, y = -3124.41, z = 13.53, heading = 58.1}, -- Spawn position for test drives.
        BuyCarPos = {x = -47.1, y = -1077.34, z = 26.34, heading = 65.14}, -- Position where the car is delivered after purchase.
        ReturnCarPos = {x = -30.73, y = -1090.71, z = 26.42}, -- Position where the player returns the vehicle.
    },
     {
        name = "BoatShop", -- Cosmetic Name just to show on 3D text.
        job = 'all', -- Who can access this shop: 'all' for everyone, or specific jobs like 'police' or {"police","sheriff"}.
        type = "boats", -- Type of shop: "car", "boats", or "air".
        vehicles = "Dock", -- Reference to the vehicle list defined in Config.Vehicles.
        blip = {
            show = true,        -- Whether to show a blip on the map.
            name = "Revel - BoatShop", -- Name shown on the blip.
            color = 3,          -- Blip color.
            sprite = 410,       -- Blip sprite.
            size = 0.8          -- Blip size.
        },
        InteractPos = {x = -781.52, y =  -1506.13, z = 1.6}, -- Position where players press the interaction key to open the shop.
        PreviewPos = {x = -797.27, y = -1502.12, z = -0.09, heading = 106.82}, -- Position where the vehicle is previewed before purchase.
        PlayerCamPos = {x = -787.33, y = -1504.7, z = 2.72, heading = 206.71}, -- Camera position to view the previewed vehicle.
        TestDrivePos = {x = -947.88, y = -1648.02, z = -0.09, heading = 134.51}, -- Spawn position for test drives.
        BuyCarPos = {x = -825.01, y = -1478.28, z = -0.09, heading = 175.11}, -- Position where the car is delivered after purchase.
        ReturnCarPos = {x = -802.45, y = -1484.58, z = 1.0}, -- Position where the player returns the vehicle.
    },
     {
        name = "AirShop", -- Cosmetic Name just to show on 3D text.
        job = 'all', -- Who can access this shop: 'all' for everyone, or specific jobs like 'police' or {"police","sheriff"}.
        type = "air", -- Type of shop: "car", "boats", or "air".
        vehicles = "Hangar", -- Reference to the vehicle list defined in Config.Vehicles.
        blip = {
            show = true,        -- Whether to show a blip on the map.
            name = "Revel - AirShop", -- Name shown on the blip.
            color = 69,          -- Blip color.
            sprite = 307,       -- Blip sprite.
            size = 0.8          -- Blip size.
        },
        InteractPos = {x = -941.75, y =  -2955.36, z = 13.95}, -- Position where players press the interaction key to open the shop.
        PreviewPos = {x = -986.32, y = -2991.48, z = 14.55, heading = 55.99}, -- Position where the vehicle is previewed before purchase.
        PlayerCamPos = {x = -974.62, y = -3026.01, z = 20.61, heading = 158.45}, -- Camera position to view the previewed vehicle.
        TestDrivePos = {x = -966.2, y = -3163.19, z = 13.94, heading = 54.39}, -- Spawn position for test drives.
        BuyCarPos = {x = -1036.81, y = -2921.62, z = 13.96, heading = 148.36}, -- Position where the car is delivered after purchase.
        ReturnCarPos = {x = -1006.62, y = -3016.15, z = 13.95}, -- Position where the player returns the vehicle.
    },
}

Config.Translate = {
    ["NoPermission"] = "You don't have permission to open this shop",
    ["NotDriving"] = "You are not driving a vehicle",
    ["NoMoney"] = "You don't have the currently amount to buy the vehicle",
    ["VehicleReturned_1"] = "Your vehicle has been returned for ",
    ["VehicleReturned_2"] = "€.",
    ["VehicleNotYours"] = "This vehicle is not yours, you cannot return it.",
    ["VehicleBuyed"] = "This vehicle now belongs to you",
    -- 3D TEXT
    ["InteractionMenu"] = "~y~[~w~E~y~]~w~ to ~y~OPEN~w~ ",
    ["ReturnVehicle"] = "~y~[~w~E~y~]~w~ to ~y~RETURN~w~ vehicle",
}

-------------------------------------------------------------------------------------------------------------------------------
---
--  ______     ______     __   __   ______     __            ______     ______     ______     __     ______   ______   ______    
-- /\  == \   /\  ___\   /\ \ / /  /\  ___\   /\ \          /\  ___\   /\  ___\   /\  == \   /\ \   /\  == \ /\__  _\ /\  ___\   
-- \ \  __<   \ \  __\   \ \ \'/   \ \  __\   \ \ \____     \ \___  \  \ \ \____  \ \  __<   \ \ \  \ \  _-/ \/_/\ \/ \ \___  \  
--  \ \_\ \_\  \ \_____\  \ \__|    \ \_____\  \ \_____\     \/\_____\  \ \_____\  \ \_\ \_\  \ \_\  \ \_\      \ \_\  \/\_____\ 
--   \/_/ /_/   \/_____/   \/_/      \/_____/   \/_____/      \/_____/   \/_____/   \/_/ /_/   \/_/   \/_/       \/_/   \/_____/ 
---   
-------------------------------------------------------------------------------------------------------------------------------

Last updated