Garages V1
Config File
Configure Garages V1 zones, impound, showroom, vehicle classes, keys, and notification settings.
Use this page to configure garage zones, boats, planes, keys, impound, showroom, and command behavior.
shared/config.lua
Config = {}Config.Debug = falseConfig.ImgDirectory = "nui:/ox_inventory/web/images/"Config.Zones = { Vehicle = { ["Garaz"] = { coords = vec3(240.2, -784.39, 31.0), size = vec3(5.5, 29.0, 6.25), rotation = 339.0, blip = true, spawn = { vec4(245.0965, -773.0219, 30.6815, 68.5623), vec4(244.8812, -775.1188, 30.6820, 68.2942), vec4(243.9712, -777.5682, 30.6486, 70.6967), vec4(243.3046, -780.4046, 30.6116, 65.4426), vec4(242.1883, -782.6904, 30.5891, 65.6714), vec4(240.0125, -787.8524, 30.5489, 70.4421) } }, ["Garaz-2"] = { coords = vec3(43.0, -887.0, 30.0), size = vec3(8.0, 11, 4.0), rotation = 70.0, blip = true, spawn = { vec4(38.5734, -886.7894, 30.2087, 160.4350), vec4(41.6546, -887.8044, 30.2019, 157.1231), vec4(44.6354, -889.0912, 30.1911, 156.6422), vec4(46.1670, -886.2452, 30.2368, 337.5978), vec4(42.6696, -884.7576, 30.2489, 346.9433) } }, ["Garaz-3"] = { coords = vec3(73.0, -1551.7, 29.0), size = vec3(24.5, 7.5, 9.5), rotation = 229.5, blip = true, spawn = { vec4(78.7484, -1548.0414, 29.4602, 46.4354), vec4(77.1717, -1550.2798, 29.4602, 60.7806), vec4(75.2585, -1552.6482, 29.4602, 45.5027), vec4(73.1070, -1554.7800, 29.4602, 42.1315), vec4(71.0703, -1557.2655, 29.4602, 46.9361), vec4(68.8371, -1559.5031, 29.4602, 46.2850) } }, ["Garaz-4"] = { coords = vec3(-1738.0, -717.0, 10.0), size = vec3(20.0, 6.0, 3.0), rotation = 50.0, blip = true, spawn = { vec4(-1743.6824, -723.5439, 10.4405, 231.7864), vec4(-1742.1479, -721.1386, 10.4713, 225.4507), vec4(-1740.0314, -718.5302, 10.4843, 232.2587), vec4(-1738.0873, -716.3501, 10.3248, 232.9500), vec4(-1736.1304, -714.0363, 10.1602, 233.3853), vec4(-1733.9723, -711.2867, 10.1210, 227.1332) } }, ["Garaz-5"] = { coords = vec3(-329.0, 290.0, 86.0), size = vec3(5.0, 32.0, 4.0), rotation = 0.0, blip = true, spawn = { vec4(-328.0578, 274.1467, 86.3959, 94.3711), vec4(-328.4579, 277.7294, 86.3690, 86.5518), vec4(-328.5557, 281.1776, 86.3085, 86.3256), vec4(-328.0930, 285.2073, 86.2436, 84.7030), vec4(-328.2133, 288.8505, 86.2042, 92.3263), vec4(-328.1381, 292.5143, 86.2166, 94.4779), vec4(-327.8456, 295.8951, 86.2343, 93.8588), vec4(-327.7521, 299.1794, 86.2442, 92.0994), vec4(-328.2480, 302.5438, 86.2142, 95.0411) } }, ["Garaz-6"] = { coords = vec3(1704.0, 3766.0, 34.0), size = vec3(13.0, 4.0, 4.0), rotation = 315.0, blip = true, spawn = { vec4(1700.0771, 3767.3992, 34.4609, 316.4050), vec4(1703.5389, 3764.2234, 34.3566, 315.7062), vec4(1706.3672, 3761.3079, 34.2466, 319.8062), } }, ["Garaz-7"] = { coords = vec3(1704.0, 3766.0, 34.0), size = vec3(13.0, 4.0, 4.0), rotation = 315.0, blip = true, spawn = { vec4(1700.0771, 3767.3992, 34.4609, 316.4050), vec4(1703.5389, 3764.2234, 34.3566, 315.7062), vec4(1706.3672, 3761.3079, 34.2466, 319.8062), } }, ["Garaz-8"] = { coords = vec3(122.0, 6597.0, 32.0), size = vec3(34.0, 9.0, 4.0), rotation = 315.0, blip = true, spawn = { vec4(111.3076, 6604.7993, 31.9077, 313.9067), vec4(114.0395, 6601.4453, 31.9779, 316.9619), vec4(117.2028, 6598.2715, 32.0180, 314.4944), vec4(120.4280, 6595.4609, 32.0407, 314.7466), vec4(123.3271, 6592.7354, 32.0080, 315.0645), vec4(125.7010, 6589.6353, 31.9514, 310.0181), } }, ["Garaz-9"] = { coords = vec3(-519.0, -265.25, 35.0), size = vec3(40.5, 4.0, 3.0), rotation = 23.0, blip = true, spawn = { vec4(-534.0101, -271.7541, 35.1884, 290.9157), vec4(-524.3906, -267.9380, 35.2919, 291.6599), vec4(-511.3584, -262.6325, 35.4598, 293.2044), vec4(-498.5895, -257.1266, 35.5744, 293.2630), } }, ["Garaz-10"] = { coords = vec3(-576.31, -1116.01, 22.0), size = vec3(18.0, 35.0, 2), rotation = 0.0, blip = true, spawn = { vec4(-580.6609, -1100.6362, 22.1781, 90.7031), vec4(-580.7639, -1104.4713, 22.1781, 90.1912), vec4(-581.1713, -1107.9551, 22.1781, 95.2846), vec4(-581.1586, -1111.5237, 22.1782, 87.4359), vec4(-581.3420, -1115.0310, 22.1782, 89.7911), vec4(-580.9362, -1119.0411, 22.1782, 87.0790), vec4(-580.8686, -1122.7043, 22.1782, 93.7126), vec4(-580.8450, -1126.4718, 22.1782, 90.1319), vec4(-580.8075, -1130.0839, 22.1782, 95.3151), vec4(-580.9687, -1133.9897, 22.1782, 87.9612), vec4(-573.4276, -1134.0986, 22.1783, 269.5450), vec4(-580.9687, -1133.9897, 22.1782, 87.9612), vec4(-574.3588, -1130.2710, 22.1782, 272.9404), vec4(-574.4694, -1126.9022, 22.1782, 270.0154), vec4(-574.7164, -1123.1445, 22.1782, 270.2430), vec4(-574.6985, -1119.5747, 22.1782, 267.9030), vec4(-574.4849, -1115.8722, 22.1782, 267.0267), vec4(-573.7902, -1112.0356, 22.1782, 254.3110), vec4(-574.6298, -1100.9264, 22.1781, 265.7258), vec4(-574.3740, -1104.6652, 22.1781, 264.7193), vec4(-574.3748, -1108.4877, 22.1781, 271.4465), } }, }, Planes = { ["Plane-1"] = { coords = vec3(-724.0, -1443.0, 5.0), size = vec3(19.0, 17.0, 4.0), rotation = 50.0, blip = true, spawn = { vec4(-724.6353, -1443.5399, 5.0005, 141.9948), } }, }, Boat = { ["Boat-1"] = { coords = vec3(-802.1, -1506.09, 2.0), size = vec3(29.5, 31.5, 4.0), rotation = 290.0, blip = true, spawn = { vec4(-793.5866, -1503.9303, -0.4749, 113.7856), vec4(-805.5475, -1501.1036, -0.4751, 111.0165) } }, }}Config.Blip = { VehicleGarage = { sprite = 50, scale = 0.7, color = 3, label = "Garaż" }, PlanesGarage = { sprite = 50, scale = 0.7, color = 6, label = "Garaż Powietrzny" }, BoatsGarage = { sprite = 50, scale = 0.7, color = 8, label = "Garaż Łodzi" }}Config.Classes = { [1] = "car", [2] = "sea", [3] = "air", [4] = "bike"}Config.TextUi = { KeyControl = 38, -- https://docs.fivem.net/docs/game-references/controls/#controls show = function(type) if type == "Vehicle" then lib.showTextUI("[E] Otwórz garaż", { position = "left-center", iconAnimation = 'beat', icon = "car", style = { borderRadius = 0, backgroundColor = 'rgba(0, 0, 0, 0.75)', color = 'white', fontSize = 18, padding = "10px 20px" } }) elseif type == "Planes" then lib.showTextUI("[E] Otwórz hangar", { position = "left-center", iconAnimation = 'beat', icon = "plane", style = { borderRadius = 0, backgroundColor = 'rgba(0, 0, 0, 0.75)', color = 'white', fontSize = 18, padding = "10px 20px" } }) elseif type == "ExitShowroom" then lib.showTextUI("[E] Opuść pokój", { position = "left-center", iconAnimation = 'beat', icon = "car", style = { borderRadius = 0, backgroundColor = 'rgba(0, 0, 0, 0.75)', color = 'white', fontSize = 18, padding = "10px 20px" } }) end end}Config.Impound = { PedModel = "s_m_y_dockwork_01", Coords = vector4(-177.3660, -1158.4995, 23.8137, 0.1019), Target = { label = 'Zarządzaj pojazdami', icon = 'fa-solid fa-car', distance = 2.0, }, Blip = { sprite = 50, scale = 0.7, color = 5, label = "Odholownik" }}Config.Boats = { PedModel = "mp_f_bennymech_01", Coords = vector4(-797.5081, -1512.0814, 1.5952, 292.2029), Target = { label = 'Otwórz garaż łodzi', icon = 'fa-solid fa-ship', distance = 2.0, }, Blip = { sprite = 50, scale = 0.7, color = 8, label = "Garaż łodzi" }}Config.HideCar = { icon = 'fa fa-car', label = "Schowaj pojazd", distance = 2.0,}Config.ImpoundPrice = { Account = "money", Price = 5000}Config.Keys = { active = true, item = "carkey", ifTrue = { functions = function(source, plate, type) if type == "addKey" then exports['']:AddCarKey(source, plate) elseif type == "removeKey" then exports['']:RemoveCarKey(source, plate) end end }}Config.ShowRoom = { EnterShowroom = vec4(1295.1409, 262.0160, -49.0573, 179.5959), Exit = { coords = vec3(1295.1, 262.3, -49.0), size = vec3(2, 6.0, 1.95), rotation = 0.0, }, Zones = { -- { -- coords = vec4(1280.0762, 258.1658, -49.0573, 286.2376) -- }, { coords = vec4(1280.3691, 250.2542, -49.0573, 269.1620) }, { coords = vec4(1279.4884, 241.6150, -49.0573, 270.5640) }, { coords = vec4(1295.2562, 249.6721, -49.0573, 180.8842) }, { coords = vec4(1295.2518, 241.8650, -49.0573, 179.2212) }, { coords = vec4(1295.2457, 231.5637, -49.0574, 182.2033) }, { coords = vec4(1309.7957, 229.8949, -49.0574, 0.4726) }, { coords = vec4(1310.0377, 241.7893, -49.0573, 179.3614) }, { coords = vec4(1310.0138, 250.3464, -49.0573, 177.1462) }, { coords = vec4(1310.2706, 258.6779, -49.0573, 89.8111) }, }}Config.ChangePlate = { Command = "plate", Price = 5000, Account = "money", -- "money" or "bank" PlateLength = { Min = 6, Max = 8 }, Notify = { NotInVehicle = "Nie jesteś w pojeździe.", NotYourVehicle = "Ten pojazd nie należy do Ciebie", Success = "Tablica została zmieniona na: ", AlreadyExists = "Taka tablica w naszej bazie danych już istnieje!", InvalidLength = "Tablica musi mieć od 6 do 8 znaków.", InvalidCharacters = "Tablica może zawierać tylko wielkie litery i cyfry (bez znaków specjalnych).", BlacklistedWord = "Tablica zawiera niedozwolone słowa.", NotEnoughMoney = "Nie posiadasz wystarczająco pieniędzy.", }, BlackListedWords = { "KURWA" }}Config.GiveCar = { Command = "givecar", Admins = { "best", "admin", "superadmin", }, Notify = { NoPermissions = "Nie masz uprawnień do tej komendy.", BadUse = "Użycie: /givecar [id gracza] [model pojazdu] [typ: car/bike/air/sea]", PlayerNotFound = "Nie znaleziono gracza o podanym ID.", YouReceivedIt = "Otrzymałeś pojazd: %s o tablicy: %s", YouSentIt = "Nadałeś pojazd %s graczowi ID: %d o tablicy: %s", InvalidVehicleModel = "Model pojazdu nie istnieje" }, Helps = { help = 'Nadaj pojazd graczowi', arguments = { { name = 'targetId', help = 'ID gracza', type = 'number' }, { name = 'vehicleModel', help = 'Model pojazdu', type = 'string' }, { name = 'vehicleType', help = 'Typ pojazdu', type = 'string' } } }}Config.SubOwner = { Command = "subowner", Notify = { FailedToAdd = "Nie udało się dodać gracza jako współwłaściciela.", Success = "Dodano współwłaściciela.", SuccessTargetPlayerNotify = "Zostałeś współwłaścicielem pojazdu o tablicy: %s" }}Config.TranslationsUI = { ImpoundVehicleText = "Odholuj", LocateText = "Lokalizuj", PullCar = "Wyjmij", Transfer = "Transfer", FuelLevel = "Ilość Paliwa: ", BodyHealth = "Wytrzymałość: "}Config.Notifications = { AlreadyInVehicle = "Nie możesz wyciągnąć pojazdu będąc w innym pojeździe.", IsParkingFull = "Brak wolnych miejsc parkingowych", VehicleSpawned = "Pojazd został wyciągnięty.", NotCloseEnoughToVehicle = "Nie jesteś wystarczająco blisko pojazdu.", VehicleStored = "Pojazd został schowany do garażu.", VehicleStorageFailed = "Nie udało się schować pojazdu.", VehicleTowed = "Pojazd został odholowany.", VehicleNotInGarage = "Ten pojazd nie jest aktualnie w garażu.", PlayerIdMissing = "Podaj ID gracza!", VehicleTransferred = "Pojazd został przekazany!", VehicleTransferFailed = "Nie udało się przekazać pojazdu!", NotEnoughCash = "Nie masz wystarczająco pieniędzy w portfelu.", NotEnoughBankMoney = "Nie masz wystarczająco pieniędzy na koncie bankowym.", VehicleReceivedMessage = "Otrzymałeś pojazd o tablicy: ", ShowroomFull = "Wszystkie miejsca są zajęte.", VehicleTypeNotAllowed = "Ten garaż nie przyjmuje tego typu pojazdu!"}