[{"data":1,"prerenderedAt":1373},["ShallowReactive",2],{"/docs/jobs/mechanicjob/reference/ox-vehicle-properties":3,"/docs/jobs/mechanicjob/reference/ox-vehicle-properties-surround":1361,"/docs/jobs/mechanicjob/reference/ox-vehicle-properties-implemented-suggestions":1372},{"id":4,"title":5,"body":6,"description":1352,"extension":1353,"head":1354,"implementedSuggestions":1354,"meta":1355,"navigation":200,"path":1356,"schemaOrg":1354,"seo":1357,"sitemap":1358,"stem":1359,"__hash__":1360},"docs/1.docs/0.jobs/2.mechanicjob/4.reference/8.ox-vehicle-properties.md","ox_lib Vehicle Properties",{"type":7,"value":8,"toc":1342},"minimark",[9,27,49,54,59,76,94,100,104,111,116,144,149,213,217,221,225,243,247,272,276,281,285,625,629,1007,1011,1015,1019,1050,1054,1206,1210,1214,1218,1259,1263,1296,1302,1306,1315,1318,1322,1338],[10,11,12,13,17,18,22,23,26],"p",{},"Use this page for ",[14,15,16],"strong",{},"Overextended ox_lib 3.39.0",". You can find your version in\n",[19,20,21],"code",{},"ox_lib/fxmanifest.lua",", on the line that starts with ",[19,24,25],{},"version",".",[10,28,29,30,33,34,37,38,41,42,45,46,26],{},"For Qbox, make these changes in ",[14,31,32],{},"ox_lib",". Keep your existing\n",[19,35,36],{},"exports.ox_lib:getVehicleProperties(vehicle)"," and\n",[19,39,40],{},"exports.ox_lib:setVehicleProperties(vehicle, props)"," calls.\nYou do not need to edit ",[19,43,44],{},"ox_lib/init.lua"," or ",[19,47,48],{},"qbx_core",[10,50,51,52,26],{},"This guide uses the current Overextended repository. An older CommunityOx download may have\ndifferent code even though its resource folder is also called ",[19,53,32],{},[55,56,58],"h2",{"id":57},"_1-open-the-file","1. Open the file",[60,61,62,66,73],"ol",{},[63,64,65],"li",{},"Stop the server and make a backup of the file below, outside the server's resources folder.",[63,67,68,69,72],{},"Open ",[19,70,71],{},"ox_lib/resource/vehicleProperties/client.lua"," in your host's file editor or your usual code editor.",[63,74,75],{},"Keep that file open for every step on this page.",[10,77,78,81,82,85,86,89,90,93],{},[14,79,80],{},"How to use each step:"," press ",[14,83,84],{},"Ctrl+F"," to find the first line of the ",[14,87,88],{},"Find"," block.\nSelect the entire shown block in your file, then paste the complete ",[14,91,92],{},"Replace with"," block over it.\nLeave the surrounding code in place. You do not need to understand or rewrite the code.",[10,95,96,97,99],{},"If the ",[14,98,92],{}," block is already there, skip that step. If neither block matches, stop\nediting and restore your backup before starting the server. Send the file and your version to\nsupport. Versions and edited files can differ; do not guess where to paste.",[55,101,103],{"id":102},"_2-read-custom-headlight-colours","2. Read custom headlight colours",[10,105,106,107,110],{},"Inside ",[19,108,109],{},"lib.getVehicleProperties",":",[10,112,113],{},[14,114,115],{},"Find:",[117,118,123],"pre",{"className":119,"code":120,"language":121,"meta":122,"style":122},"language-lua shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","        local extras = {}\n","lua","",[19,124,125],{"__ignoreMap":122},[126,127,130,134,138,141],"span",{"class":128,"line":129},"line",1,[126,131,133],{"class":132},"sMK4o","        local",[126,135,137],{"class":136},"sTEyZ"," extras ",[126,139,140],{"class":132},"=",[126,142,143],{"class":136}," {}\n",[10,145,146],{},[14,147,148],{},"Replace with:",[117,150,152],{"className":119,"code":151,"language":121,"meta":122,"style":122},"        local hasCustomXenonColor, xenonR, xenonG, xenonB = GetVehicleXenonLightsCustomColor(vehicle)\n        local customXenonColor = hasCustomXenonColor and { xenonR, xenonG, xenonB } or nil\n\n        local extras = {}\n",[19,153,154,170,195,202],{"__ignoreMap":122},[126,155,156,158,161,163,167],{"class":128,"line":129},[126,157,133],{"class":132},[126,159,160],{"class":136}," hasCustomXenonColor, xenonR, xenonG, xenonB ",[126,162,140],{"class":132},[126,164,166],{"class":165},"s2Zo4"," GetVehicleXenonLightsCustomColor",[126,168,169],{"class":136},"(vehicle)\n",[126,171,173,175,178,180,183,186,189,192],{"class":128,"line":172},2,[126,174,133],{"class":132},[126,176,177],{"class":136}," customXenonColor ",[126,179,140],{"class":132},[126,181,182],{"class":136}," hasCustomXenonColor ",[126,184,185],{"class":132},"and",[126,187,188],{"class":136}," { xenonR, xenonG, xenonB } ",[126,190,191],{"class":132},"or",[126,193,194],{"class":132}," nil\n",[126,196,198],{"class":128,"line":197},3,[126,199,201],{"emptyLinePlaceholder":200},true,"\n",[126,203,205,207,209,211],{"class":128,"line":204},4,[126,206,133],{"class":132},[126,208,137],{"class":136},[126,210,140],{"class":132},[126,212,143],{"class":136},[55,214,216],{"id":215},"_3-include-custom-headlight-colours-in-the-save","3. Include custom headlight colours in the save",[10,218,106,219,110],{},[19,220,109],{},[10,222,223],{},[14,224,115],{},[117,226,228],{"className":119,"code":227,"language":121,"meta":122,"style":122},"            xenonColor = GetVehicleXenonLightsColor(vehicle),\n",[19,229,230],{"__ignoreMap":122},[126,231,232,235,237,240],{"class":128,"line":129},[126,233,234],{"class":136},"            xenonColor ",[126,236,140],{"class":132},[126,238,239],{"class":165}," GetVehicleXenonLightsColor",[126,241,242],{"class":136},"(vehicle),\n",[10,244,245],{},[14,246,148],{},[117,248,250],{"className":119,"code":249,"language":121,"meta":122,"style":122},"            xenonColor = GetVehicleXenonLightsColor(vehicle),\n            customXenonColor = customXenonColor,\n",[19,251,252,262],{"__ignoreMap":122},[126,253,254,256,258,260],{"class":128,"line":129},[126,255,234],{"class":136},[126,257,140],{"class":132},[126,259,239],{"class":165},[126,261,242],{"class":136},[126,263,264,267,269],{"class":128,"line":172},[126,265,266],{"class":136},"            customXenonColor ",[126,268,140],{"class":132},[126,270,271],{"class":136}," customXenonColor,\n",[55,273,275],{"id":274},"_4-restore-colours-and-the-paint-finish","4. Restore colours and the paint finish",[10,277,106,278,110],{},[19,279,280],{},"lib.setVehicleProperties",[10,282,283],{},[14,284,115],{},[117,286,288],{"className":119,"code":287,"language":121,"meta":122,"style":122},"    if props.color1 then\n        if type(props.color1) == 'number' then\n            ClearVehicleCustomPrimaryColour(vehicle)\n            SetVehicleColours(vehicle, props.color1 --[[@as number]], colorSecondary --[[@as number]])\n        else\n            if props.paintType1 then SetVehicleModColor_1(vehicle, props.paintType1, 0, props.pearlescentColor or 0) end\n\n            SetVehicleCustomPrimaryColour(vehicle, props.color1[1], props.color1[2], props.color1[3])\n        end\n    end\n\n    if props.color2 then\n        if type(props.color2) == 'number' then\n            ClearVehicleCustomSecondaryColour(vehicle)\n            SetVehicleColours(vehicle, props.color1 or colorPrimary --[[@as number]], props.color2 --[[@as number]])\n        else\n            if props.paintType2 then SetVehicleModColor_2(vehicle, props.paintType2, 0) end\n\n            SetVehicleCustomSecondaryColour(vehicle, props.color2[1], props.color2[2], props.color2[3])\n        end\n    end\n",[19,289,290,306,338,345,368,374,419,424,462,468,474,479,491,514,522,546,551,578,583,615,620],{"__ignoreMap":122},[126,291,292,296,299,303],{"class":128,"line":129},[126,293,295],{"class":294},"s7zQu","    if",[126,297,298],{"class":136}," props.",[126,300,302],{"class":301},"sBMFI","color1",[126,304,305],{"class":294}," then\n",[126,307,308,311,314,317,319,322,325,328,332,335],{"class":128,"line":172},[126,309,310],{"class":294},"        if",[126,312,313],{"class":165}," type",[126,315,316],{"class":136},"(props.",[126,318,302],{"class":301},[126,320,321],{"class":136},") ",[126,323,324],{"class":132},"==",[126,326,327],{"class":132}," '",[126,329,331],{"class":330},"sfazB","number",[126,333,334],{"class":132},"' ",[126,336,337],{"class":294},"then\n",[126,339,340,343],{"class":128,"line":197},[126,341,342],{"class":165},"            ClearVehicleCustomPrimaryColour",[126,344,169],{"class":136},[126,346,347,350,353,355,359,362,365],{"class":128,"line":204},[126,348,349],{"class":165},"            SetVehicleColours",[126,351,352],{"class":136},"(vehicle, props.",[126,354,302],{"class":301},[126,356,358],{"class":357},"sHwdD"," --[[@as number]]",[126,360,361],{"class":136},", colorSecondary ",[126,363,364],{"class":357},"--[[@as number]]",[126,366,367],{"class":136},")\n",[126,369,371],{"class":128,"line":370},5,[126,372,373],{"class":294},"        else\n",[126,375,377,380,382,385,388,391,393,395,398,402,405,408,411,414,416],{"class":128,"line":376},6,[126,378,379],{"class":294},"            if",[126,381,298],{"class":136},[126,383,384],{"class":301},"paintType1",[126,386,387],{"class":294}," then",[126,389,390],{"class":165}," SetVehicleModColor_1",[126,392,352],{"class":136},[126,394,384],{"class":301},[126,396,397],{"class":136},", ",[126,399,401],{"class":400},"sbssI","0",[126,403,404],{"class":136},", props.",[126,406,407],{"class":301},"pearlescentColor",[126,409,410],{"class":132}," or",[126,412,413],{"class":400}," 0",[126,415,321],{"class":136},[126,417,418],{"class":294},"end\n",[126,420,422],{"class":128,"line":421},7,[126,423,201],{"emptyLinePlaceholder":200},[126,425,427,430,432,434,437,440,443,445,447,450,452,454,456,459],{"class":128,"line":426},8,[126,428,429],{"class":165},"            SetVehicleCustomPrimaryColour",[126,431,352],{"class":136},[126,433,302],{"class":301},[126,435,436],{"class":136},"[",[126,438,439],{"class":400},"1",[126,441,442],{"class":136},"], props.",[126,444,302],{"class":301},[126,446,436],{"class":136},[126,448,449],{"class":400},"2",[126,451,442],{"class":136},[126,453,302],{"class":301},[126,455,436],{"class":136},[126,457,458],{"class":400},"3",[126,460,461],{"class":136},"])\n",[126,463,465],{"class":128,"line":464},9,[126,466,467],{"class":294},"        end\n",[126,469,471],{"class":128,"line":470},10,[126,472,473],{"class":294},"    end\n",[126,475,477],{"class":128,"line":476},11,[126,478,201],{"emptyLinePlaceholder":200},[126,480,482,484,486,489],{"class":128,"line":481},12,[126,483,295],{"class":294},[126,485,298],{"class":136},[126,487,488],{"class":301},"color2",[126,490,305],{"class":294},[126,492,494,496,498,500,502,504,506,508,510,512],{"class":128,"line":493},13,[126,495,310],{"class":294},[126,497,313],{"class":165},[126,499,316],{"class":136},[126,501,488],{"class":301},[126,503,321],{"class":136},[126,505,324],{"class":132},[126,507,327],{"class":132},[126,509,331],{"class":330},[126,511,334],{"class":132},[126,513,337],{"class":294},[126,515,517,520],{"class":128,"line":516},14,[126,518,519],{"class":165},"            ClearVehicleCustomSecondaryColour",[126,521,169],{"class":136},[126,523,525,527,529,531,533,536,538,540,542,544],{"class":128,"line":524},15,[126,526,349],{"class":165},[126,528,352],{"class":136},[126,530,302],{"class":301},[126,532,410],{"class":132},[126,534,535],{"class":136}," colorPrimary ",[126,537,364],{"class":357},[126,539,404],{"class":136},[126,541,488],{"class":301},[126,543,358],{"class":357},[126,545,367],{"class":136},[126,547,549],{"class":128,"line":548},16,[126,550,373],{"class":294},[126,552,554,556,558,561,563,566,568,570,572,574,576],{"class":128,"line":553},17,[126,555,379],{"class":294},[126,557,298],{"class":136},[126,559,560],{"class":301},"paintType2",[126,562,387],{"class":294},[126,564,565],{"class":165}," SetVehicleModColor_2",[126,567,352],{"class":136},[126,569,560],{"class":301},[126,571,397],{"class":136},[126,573,401],{"class":400},[126,575,321],{"class":136},[126,577,418],{"class":294},[126,579,581],{"class":128,"line":580},18,[126,582,201],{"emptyLinePlaceholder":200},[126,584,586,589,591,593,595,597,599,601,603,605,607,609,611,613],{"class":128,"line":585},19,[126,587,588],{"class":165},"            SetVehicleCustomSecondaryColour",[126,590,352],{"class":136},[126,592,488],{"class":301},[126,594,436],{"class":136},[126,596,439],{"class":400},[126,598,442],{"class":136},[126,600,488],{"class":301},[126,602,436],{"class":136},[126,604,449],{"class":400},[126,606,442],{"class":136},[126,608,488],{"class":301},[126,610,436],{"class":136},[126,612,458],{"class":400},[126,614,461],{"class":136},[126,616,618],{"class":128,"line":617},20,[126,619,467],{"class":294},[126,621,623],{"class":128,"line":622},21,[126,624,473],{"class":294},[10,626,627],{},[14,628,148],{},[117,630,632],{"className":119,"code":631,"language":121,"meta":122,"style":122},"    -- Preserve paint finishes, palette resets and mixed RGB/palette colours.\n    local primaryIndex = type(props.color1) == 'number' and props.color1 or colorPrimary\n    local secondaryIndex = type(props.color2) == 'number' and props.color2 or colorSecondary\n    if props.paintType1 ~= nil then\n        SetVehicleModColor_1(vehicle, props.paintType1, primaryIndex, props.pearlescentColor or pearlescentColor)\n    end\n    if props.paintType2 ~= nil then\n        SetVehicleModColor_2(vehicle, props.paintType2, secondaryIndex)\n    end\n    if type(props.color1) == 'number' or type(props.color2) == 'number' then\n        SetVehicleColours(vehicle, primaryIndex, secondaryIndex)\n    end\n    if props.color1 ~= nil then\n        if type(props.color1) == 'table' then\n            SetVehicleCustomPrimaryColour(vehicle, props.color1[1], props.color1[2], props.color1[3])\n        else\n            ClearVehicleCustomPrimaryColour(vehicle)\n        end\n    end\n    if props.color2 ~= nil then\n        if type(props.color2) == 'table' then\n            SetVehicleCustomSecondaryColour(vehicle, props.color2[1], props.color2[2], props.color2[3])\n        else\n            ClearVehicleCustomSecondaryColour(vehicle)\n        end\n    end\n",[19,633,634,639,676,712,728,747,751,765,777,781,821,829,833,847,870,900,904,910,914,918,932,954,985,990,997,1002],{"__ignoreMap":122},[126,635,636],{"class":128,"line":129},[126,637,638],{"class":357},"    -- Preserve paint finishes, palette resets and mixed RGB/palette colours.\n",[126,640,641,644,647,649,651,653,655,657,659,661,663,665,667,669,671,673],{"class":128,"line":172},[126,642,643],{"class":132},"    local",[126,645,646],{"class":136}," primaryIndex ",[126,648,140],{"class":132},[126,650,313],{"class":165},[126,652,316],{"class":136},[126,654,302],{"class":301},[126,656,321],{"class":136},[126,658,324],{"class":132},[126,660,327],{"class":132},[126,662,331],{"class":330},[126,664,334],{"class":132},[126,666,185],{"class":132},[126,668,298],{"class":136},[126,670,302],{"class":301},[126,672,410],{"class":132},[126,674,675],{"class":136}," colorPrimary\n",[126,677,678,680,683,685,687,689,691,693,695,697,699,701,703,705,707,709],{"class":128,"line":197},[126,679,643],{"class":132},[126,681,682],{"class":136}," secondaryIndex ",[126,684,140],{"class":132},[126,686,313],{"class":165},[126,688,316],{"class":136},[126,690,488],{"class":301},[126,692,321],{"class":136},[126,694,324],{"class":132},[126,696,327],{"class":132},[126,698,331],{"class":330},[126,700,334],{"class":132},[126,702,185],{"class":132},[126,704,298],{"class":136},[126,706,488],{"class":301},[126,708,410],{"class":132},[126,710,711],{"class":136}," colorSecondary\n",[126,713,714,716,718,720,723,726],{"class":128,"line":204},[126,715,295],{"class":294},[126,717,298],{"class":136},[126,719,384],{"class":301},[126,721,722],{"class":132}," ~=",[126,724,725],{"class":132}," nil",[126,727,305],{"class":294},[126,729,730,733,735,737,740,742,744],{"class":128,"line":370},[126,731,732],{"class":165},"        SetVehicleModColor_1",[126,734,352],{"class":136},[126,736,384],{"class":301},[126,738,739],{"class":136},", primaryIndex, props.",[126,741,407],{"class":301},[126,743,410],{"class":132},[126,745,746],{"class":136}," pearlescentColor)\n",[126,748,749],{"class":128,"line":376},[126,750,473],{"class":294},[126,752,753,755,757,759,761,763],{"class":128,"line":421},[126,754,295],{"class":294},[126,756,298],{"class":136},[126,758,560],{"class":301},[126,760,722],{"class":132},[126,762,725],{"class":132},[126,764,305],{"class":294},[126,766,767,770,772,774],{"class":128,"line":426},[126,768,769],{"class":165},"        SetVehicleModColor_2",[126,771,352],{"class":136},[126,773,560],{"class":301},[126,775,776],{"class":136},", secondaryIndex)\n",[126,778,779],{"class":128,"line":464},[126,780,473],{"class":294},[126,782,783,785,787,789,791,793,795,797,799,801,803,805,807,809,811,813,815,817,819],{"class":128,"line":470},[126,784,295],{"class":294},[126,786,313],{"class":165},[126,788,316],{"class":136},[126,790,302],{"class":301},[126,792,321],{"class":136},[126,794,324],{"class":132},[126,796,327],{"class":132},[126,798,331],{"class":330},[126,800,334],{"class":132},[126,802,191],{"class":132},[126,804,313],{"class":165},[126,806,316],{"class":136},[126,808,488],{"class":301},[126,810,321],{"class":136},[126,812,324],{"class":132},[126,814,327],{"class":132},[126,816,331],{"class":330},[126,818,334],{"class":132},[126,820,337],{"class":294},[126,822,823,826],{"class":128,"line":476},[126,824,825],{"class":165},"        SetVehicleColours",[126,827,828],{"class":136},"(vehicle, primaryIndex, secondaryIndex)\n",[126,830,831],{"class":128,"line":481},[126,832,473],{"class":294},[126,834,835,837,839,841,843,845],{"class":128,"line":493},[126,836,295],{"class":294},[126,838,298],{"class":136},[126,840,302],{"class":301},[126,842,722],{"class":132},[126,844,725],{"class":132},[126,846,305],{"class":294},[126,848,849,851,853,855,857,859,861,863,866,868],{"class":128,"line":516},[126,850,310],{"class":294},[126,852,313],{"class":165},[126,854,316],{"class":136},[126,856,302],{"class":301},[126,858,321],{"class":136},[126,860,324],{"class":132},[126,862,327],{"class":132},[126,864,865],{"class":330},"table",[126,867,334],{"class":132},[126,869,337],{"class":294},[126,871,872,874,876,878,880,882,884,886,888,890,892,894,896,898],{"class":128,"line":524},[126,873,429],{"class":165},[126,875,352],{"class":136},[126,877,302],{"class":301},[126,879,436],{"class":136},[126,881,439],{"class":400},[126,883,442],{"class":136},[126,885,302],{"class":301},[126,887,436],{"class":136},[126,889,449],{"class":400},[126,891,442],{"class":136},[126,893,302],{"class":301},[126,895,436],{"class":136},[126,897,458],{"class":400},[126,899,461],{"class":136},[126,901,902],{"class":128,"line":548},[126,903,373],{"class":294},[126,905,906,908],{"class":128,"line":553},[126,907,342],{"class":165},[126,909,169],{"class":136},[126,911,912],{"class":128,"line":580},[126,913,467],{"class":294},[126,915,916],{"class":128,"line":585},[126,917,473],{"class":294},[126,919,920,922,924,926,928,930],{"class":128,"line":617},[126,921,295],{"class":294},[126,923,298],{"class":136},[126,925,488],{"class":301},[126,927,722],{"class":132},[126,929,725],{"class":132},[126,931,305],{"class":294},[126,933,934,936,938,940,942,944,946,948,950,952],{"class":128,"line":622},[126,935,310],{"class":294},[126,937,313],{"class":165},[126,939,316],{"class":136},[126,941,488],{"class":301},[126,943,321],{"class":136},[126,945,324],{"class":132},[126,947,327],{"class":132},[126,949,865],{"class":330},[126,951,334],{"class":132},[126,953,337],{"class":294},[126,955,957,959,961,963,965,967,969,971,973,975,977,979,981,983],{"class":128,"line":956},22,[126,958,588],{"class":165},[126,960,352],{"class":136},[126,962,488],{"class":301},[126,964,436],{"class":136},[126,966,439],{"class":400},[126,968,442],{"class":136},[126,970,488],{"class":301},[126,972,436],{"class":136},[126,974,449],{"class":400},[126,976,442],{"class":136},[126,978,488],{"class":301},[126,980,436],{"class":136},[126,982,458],{"class":400},[126,984,461],{"class":136},[126,986,988],{"class":128,"line":987},23,[126,989,373],{"class":294},[126,991,993,995],{"class":128,"line":992},24,[126,994,519],{"class":165},[126,996,169],{"class":136},[126,998,1000],{"class":128,"line":999},25,[126,1001,467],{"class":294},[126,1003,1005],{"class":128,"line":1004},26,[126,1006,473],{"class":294},[55,1008,1010],{"id":1009},"_5-restore-headlight-colours","5. Restore headlight colours",[10,1012,106,1013,110],{},[19,1014,280],{},[10,1016,1017],{},[14,1018,115],{},[117,1020,1022],{"className":119,"code":1021,"language":121,"meta":122,"style":122},"    if props.xenonColor then\n        SetVehicleXenonLightsColor(vehicle, props.xenonColor)\n    end\n",[19,1023,1024,1035,1046],{"__ignoreMap":122},[126,1025,1026,1028,1030,1033],{"class":128,"line":129},[126,1027,295],{"class":294},[126,1029,298],{"class":136},[126,1031,1032],{"class":301},"xenonColor",[126,1034,305],{"class":294},[126,1036,1037,1040,1042,1044],{"class":128,"line":172},[126,1038,1039],{"class":165},"        SetVehicleXenonLightsColor",[126,1041,352],{"class":136},[126,1043,1032],{"class":301},[126,1045,367],{"class":136},[126,1047,1048],{"class":128,"line":197},[126,1049,473],{"class":294},[10,1051,1052],{},[14,1053,148],{},[117,1055,1057],{"className":119,"code":1056,"language":121,"meta":122,"style":122},"    if props.xenonColor ~= nil then\n        if type(props.xenonColor) == 'table' then\n            SetVehicleXenonLightsCustomColor(vehicle, props.xenonColor[1], props.xenonColor[2], props.xenonColor[3])\n        else\n            ClearVehicleXenonLightsCustomColor(vehicle)\n            SetVehicleXenonLightsColor(vehicle, props.xenonColor)\n        end\n    end\n    if props.customXenonColor ~= nil then\n        SetVehicleXenonLightsCustomColor(vehicle, props.customXenonColor[1], props.customXenonColor[2], props.customXenonColor[3])\n    end\n",[19,1058,1059,1073,1095,1126,1130,1137,1148,1152,1156,1171,1202],{"__ignoreMap":122},[126,1060,1061,1063,1065,1067,1069,1071],{"class":128,"line":129},[126,1062,295],{"class":294},[126,1064,298],{"class":136},[126,1066,1032],{"class":301},[126,1068,722],{"class":132},[126,1070,725],{"class":132},[126,1072,305],{"class":294},[126,1074,1075,1077,1079,1081,1083,1085,1087,1089,1091,1093],{"class":128,"line":172},[126,1076,310],{"class":294},[126,1078,313],{"class":165},[126,1080,316],{"class":136},[126,1082,1032],{"class":301},[126,1084,321],{"class":136},[126,1086,324],{"class":132},[126,1088,327],{"class":132},[126,1090,865],{"class":330},[126,1092,334],{"class":132},[126,1094,337],{"class":294},[126,1096,1097,1100,1102,1104,1106,1108,1110,1112,1114,1116,1118,1120,1122,1124],{"class":128,"line":197},[126,1098,1099],{"class":165},"            SetVehicleXenonLightsCustomColor",[126,1101,352],{"class":136},[126,1103,1032],{"class":301},[126,1105,436],{"class":136},[126,1107,439],{"class":400},[126,1109,442],{"class":136},[126,1111,1032],{"class":301},[126,1113,436],{"class":136},[126,1115,449],{"class":400},[126,1117,442],{"class":136},[126,1119,1032],{"class":301},[126,1121,436],{"class":136},[126,1123,458],{"class":400},[126,1125,461],{"class":136},[126,1127,1128],{"class":128,"line":204},[126,1129,373],{"class":294},[126,1131,1132,1135],{"class":128,"line":370},[126,1133,1134],{"class":165},"            ClearVehicleXenonLightsCustomColor",[126,1136,169],{"class":136},[126,1138,1139,1142,1144,1146],{"class":128,"line":376},[126,1140,1141],{"class":165},"            SetVehicleXenonLightsColor",[126,1143,352],{"class":136},[126,1145,1032],{"class":301},[126,1147,367],{"class":136},[126,1149,1150],{"class":128,"line":421},[126,1151,467],{"class":294},[126,1153,1154],{"class":128,"line":426},[126,1155,473],{"class":294},[126,1157,1158,1160,1162,1165,1167,1169],{"class":128,"line":464},[126,1159,295],{"class":294},[126,1161,298],{"class":136},[126,1163,1164],{"class":301},"customXenonColor",[126,1166,722],{"class":132},[126,1168,725],{"class":132},[126,1170,305],{"class":294},[126,1172,1173,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200],{"class":128,"line":470},[126,1174,1175],{"class":165},"        SetVehicleXenonLightsCustomColor",[126,1177,352],{"class":136},[126,1179,1164],{"class":301},[126,1181,436],{"class":136},[126,1183,439],{"class":400},[126,1185,442],{"class":136},[126,1187,1164],{"class":301},[126,1189,436],{"class":136},[126,1191,449],{"class":400},[126,1193,442],{"class":136},[126,1195,1164],{"class":301},[126,1197,436],{"class":136},[126,1199,458],{"class":400},[126,1201,461],{"class":136},[126,1203,1204],{"class":128,"line":476},[126,1205,473],{"class":294},[55,1207,1209],{"id":1208},"_6-keep-tyre-protection-unchanged","6. Keep tyre protection unchanged",[10,1211,106,1212,110],{},[19,1213,280],{},[10,1215,1216],{},[14,1217,115],{},[117,1219,1221],{"className":119,"code":1220,"language":121,"meta":122,"style":122},"    if props.bulletProofTyres ~= nil then\n        SetVehicleTyresCanBurst(vehicle, not props.bulletProofTyres)\n    end\n",[19,1222,1223,1238,1255],{"__ignoreMap":122},[126,1224,1225,1227,1229,1232,1234,1236],{"class":128,"line":129},[126,1226,295],{"class":294},[126,1228,298],{"class":136},[126,1230,1231],{"class":301},"bulletProofTyres",[126,1233,722],{"class":132},[126,1235,725],{"class":132},[126,1237,305],{"class":294},[126,1239,1240,1243,1246,1249,1251,1253],{"class":128,"line":172},[126,1241,1242],{"class":165},"        SetVehicleTyresCanBurst",[126,1244,1245],{"class":136},"(vehicle, ",[126,1247,1248],{"class":132},"not",[126,1250,298],{"class":136},[126,1252,1231],{"class":301},[126,1254,367],{"class":136},[126,1256,1257],{"class":128,"line":197},[126,1258,473],{"class":294},[10,1260,1261],{},[14,1262,148],{},[117,1264,1266],{"className":119,"code":1265,"language":121,"meta":122,"style":122},"    if props.bulletProofTyres ~= nil then\n        SetVehicleTyresCanBurst(vehicle, props.bulletProofTyres)\n    end\n",[19,1267,1268,1282,1292],{"__ignoreMap":122},[126,1269,1270,1272,1274,1276,1278,1280],{"class":128,"line":129},[126,1271,295],{"class":294},[126,1273,298],{"class":136},[126,1275,1231],{"class":301},[126,1277,722],{"class":132},[126,1279,725],{"class":132},[126,1281,305],{"class":294},[126,1283,1284,1286,1288,1290],{"class":128,"line":172},[126,1285,1242],{"class":165},[126,1287,352],{"class":136},[126,1289,1231],{"class":301},[126,1291,367],{"class":136},[126,1293,1294],{"class":128,"line":197},[126,1295,473],{"class":294},[10,1297,1298,1299,1301],{},"In this checked version, the getter saves whether tyres can burst under the name\n",[19,1300,1231],{},". This replacement makes the setter restore that same value.",[55,1303,1305],{"id":1304},"_7-save-and-finish","7. Save and finish",[10,1307,1308,1309,1314],{},"Save the file. If you edited a downloaded copy, upload it back to the same location on the server.\nThen return to ",[1310,1311,1313],"a",{"href":1312},"./garage-integration","Garage Integration"," for the MSK notes and the vehicle test.",[10,1316,1317],{},"Your existing vehicle functions now include the changes above. Keep the framework's normal\nget/set calls in other scripts. Do not copy Sky function bodies into framework core files.",[55,1319,1321],{"id":1320},"reference-version","Reference version",[10,1323,1324,1325,1327,1328,1337],{},"The ",[14,1326,88],{}," blocks were checked against the unmodified official repository on 11 September 2026:\n",[1310,1329,1333,1334],{"href":1330,"rel":1331},"https://github.com/overextended/ox_lib/blob/b8f5a04351b1d427e0e112150d36094e9889ec7b/resource/vehicleProperties/client.lua",[1332],"nofollow","Overextended ox_lib 3.39.0, source ",[19,1335,1336],{},"b8f5a043",".\nThe examples are not based on a customized server installation.",[1339,1340,1341],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":122,"searchDepth":129,"depth":172,"links":1343},[1344,1345,1346,1347,1348,1349,1350,1351],{"id":57,"depth":172,"text":58},{"id":102,"depth":172,"text":103},{"id":215,"depth":172,"text":216},{"id":274,"depth":172,"text":275},{"id":1009,"depth":172,"text":1010},{"id":1208,"depth":172,"text":1209},{"id":1304,"depth":172,"text":1305},{"id":1320,"depth":172,"text":1321},"Copy-and-paste instructions to keep vehicle colours and tuning with Overextended ox_lib 3.39.0.","md",null,{},"/docs/jobs/mechanicjob/reference/ox-vehicle-properties",{"title":5,"description":1352},{"loc":1356},"1.docs/0.jobs/2.mechanicjob/4.reference/8.ox-vehicle-properties","VLxRShmilUhAzp-uMFbqlNoRe9BJKSShLloN8V_boSg",[1362,1367],{"title":1363,"path":1364,"stem":1365,"description":1366,"children":-1},"QBCore Vehicle Properties","/docs/jobs/mechanicjob/reference/qbcore-vehicle-properties","1.docs/0.jobs/2.mechanicjob/4.reference/7.qbcore-vehicle-properties","Copy-and-paste instructions to keep vehicle colours and tuning with QBCore 1.3.0.",{"title":1368,"path":1369,"stem":1370,"description":1371,"children":-1},"Troubleshooting","/docs/jobs/mechanicjob/troubleshooting","1.docs/0.jobs/2.mechanicjob/5.troubleshooting","Diagnose common installation, permission, workshop, inventory, tablet, and persistence problems.",[],1789238107810]