Skip to main content

Vehicle Color Fix

info

This es_extended fix is optional. Please follow all steps carefully!

This fix are for all who have problems with the Vehicle colors e.g. Vehicle colors are not saved

1. Modify the ESX Framework

1.1 Go to the es_extended folder.
1.2 Open the File client > functions.lua.
1.3 Replace the function ESX.Game.GetVehicleProperties.

GetVehicleProperties
ESX.Game.GetVehicleProperties = function(vehicle)
local color1, color2 = GetVehicleColours(vehicle)

local color1Custom = {}
color1Custom[1], color1Custom[2], color1Custom[3] = GetVehicleCustomPrimaryColour(vehicle)

local color2Custom = {}
color2Custom[1], color2Custom[2], color2Custom[3] = GetVehicleCustomSecondaryColour(vehicle)

local pearlescentColor, wheelColor = GetVehicleExtraColours(vehicle)

local extras = {}
for id = 0, 25 do
if (DoesExtraExist(vehicle, id)) then
extras[tostring(id)] = IsVehicleExtraTurnedOn(vehicle, id)
end
end

local neonColor = {}
neonColor[1], neonColor[2], neonColor[3] = GetVehicleNeonLightsColour(vehicle)

local tyreSmokeColor = {}
tyreSmokeColor[1], tyreSmokeColor[2], tyreSmokeColor[3] = GetVehicleTyreSmokeColor(vehicle)

return {
model = GetEntityModel(vehicle),

plate = ESX.Math.Trim(GetVehicleNumberPlateText(vehicle)),
plateIndex = GetVehicleNumberPlateTextIndex(vehicle),

bodyHealth = ESX.Math.Round(GetVehicleBodyHealth(vehicle), 1),
engineHealth = ESX.Math.Round(GetVehicleEngineHealth(vehicle), 1),

fuelLevel = ESX.Math.Round(GetVehicleFuelLevel(vehicle), 1),
dirtLevel = ESX.Math.Round(GetVehicleDirtLevel(vehicle), 1),

color1 = color1,
color1Custom = color1Custom,

color2 = color2,
color2Custom = color2Custom,

pearlescentColor = pearlescentColor,

color1Type = GetVehicleModColor_1(vehicle),
color2Type = GetVehicleModColor_2(vehicle),

wheelColor = wheelColor,
wheels = GetVehicleWheelType(vehicle),
windowTint = GetVehicleWindowTint(vehicle),

extras = extras,

neonEnabled = {
IsVehicleNeonLightEnabled(vehicle, 0),
IsVehicleNeonLightEnabled(vehicle, 1),
IsVehicleNeonLightEnabled(vehicle, 2),
IsVehicleNeonLightEnabled(vehicle, 3)
},

neonColor = neonColor,
tyreSmokeColor = tyreSmokeColor,

dashboardColor = GetVehicleDashboardColour(vehicle),
interiorColor = GetVehicleInteriorColour(vehicle),

modSpoilers = GetVehicleMod(vehicle, 0),
modFrontBumper = GetVehicleMod(vehicle, 1),
modRearBumper = GetVehicleMod(vehicle, 2),
modSideSkirt = GetVehicleMod(vehicle, 3),
modExhaust = GetVehicleMod(vehicle, 4),
modFrame = GetVehicleMod(vehicle, 5),
modGrille = GetVehicleMod(vehicle, 6),
modHood = GetVehicleMod(vehicle, 7),
modFender = GetVehicleMod(vehicle, 8),
modRightFender = GetVehicleMod(vehicle, 9),
modRoof = GetVehicleMod(vehicle, 10),

modEngine = GetVehicleMod(vehicle, 11),
modBrakes = GetVehicleMod(vehicle, 12),
modTransmission = GetVehicleMod(vehicle, 13),
modHorns = GetVehicleMod(vehicle, 14),
modSuspension = GetVehicleMod(vehicle, 15),
modArmor = GetVehicleMod(vehicle, 16),

modTurbo = IsToggleModOn(vehicle, 18),
modSmokeEnabled = IsToggleModOn(vehicle, 20),
modXenon = GetVehicleXenonLightsColour(vehicle),

modFrontWheels = GetVehicleMod(vehicle, 23),
modBackWheels = GetVehicleMod(vehicle, 24),

modPlateHolder = GetVehicleMod(vehicle, 25),
modVanityPlate = GetVehicleMod(vehicle, 26),
modTrimA = GetVehicleMod(vehicle, 27),
modOrnaments = GetVehicleMod(vehicle, 28),
modDashboard = GetVehicleMod(vehicle, 29),
modDial = GetVehicleMod(vehicle, 30),
modDoorSpeaker = GetVehicleMod(vehicle, 31),
modSeats = GetVehicleMod(vehicle, 32),
modSteeringWheel = GetVehicleMod(vehicle, 33),
modShifterLeavers = GetVehicleMod(vehicle, 34),
modAPlate = GetVehicleMod(vehicle, 35),
modSpeakers = GetVehicleMod(vehicle, 36),
modTrunk = GetVehicleMod(vehicle, 37),
modHydrolic = GetVehicleMod(vehicle, 38),
modEngineBlock = GetVehicleMod(vehicle, 39),
modAirFilter = GetVehicleMod(vehicle, 40),
modStruts = GetVehicleMod(vehicle, 41),
modArchCover = GetVehicleMod(vehicle, 42),
modAerials = GetVehicleMod(vehicle, 43),
modTrimB = GetVehicleMod(vehicle, 44),
modTank = GetVehicleMod(vehicle, 45),
modWindows = GetVehicleMod(vehicle, 46),
modLivery = GetVehicleMod(vehicle, 48),
livery = GetVehicleLivery(vehicle)
}
end

1.4 Replace the function ESX.Game.SetVehicleProperties.

SetVehicleProperties
ESX.Game.SetVehicleProperties = function(vehicle, props)
if (props == nil or vehicle == nil or not DoesEntityExist(vehicle)) then return end

SetVehicleModKit(vehicle, 0)
SetVehicleAutoRepairDisabled(vehicle, false)

if (props.plate) then
SetVehicleNumberPlateText(vehicle, props.plate)
end

if (props.plateIndex) then
SetVehicleNumberPlateTextIndex(vehicle, props.plateIndex)
end

if (props.bodyHealth) then
SetVehicleBodyHealth(vehicle, props.bodyHealth + 0.0)
end

if (props.engineHealth) then
SetVehicleEngineHealth(vehicle, props.engineHealth + 0.0)
end

if (props.fuelLevel) then
SetVehicleFuelLevel(vehicle, props.fuelLevel + 0.0)
end

if (props.dirtLevel) then
SetVehicleDirtLevel(vehicle, props.dirtLevel + 0.0)
end

if (props.color1) then
ClearVehicleCustomPrimaryColour(vehicle)

local color1, color2 = GetVehicleColours(vehicle)
SetVehicleColours(vehicle, props.color1, color2)
end

if (props.color1Custom) then
SetVehicleCustomPrimaryColour(vehicle, props.color1Custom[1], props.color1Custom[2], props.color1Custom[3])
end

if (props.color2) then
ClearVehicleCustomSecondaryColour(vehicle)

local color1, color2 = GetVehicleColours(vehicle)
SetVehicleColours(vehicle, color1, props.color2)
end

if (props.color2Custom) then
SetVehicleCustomSecondaryColour(vehicle, props.color2Custom[1], props.color2Custom[2], props.color2Custom[3])
end

if (props.color1Type) then
SetVehicleModColor_1(vehicle, props.color1Type)
end

if (props.color2Type) then
SetVehicleModColor_2(vehicle, props.color2Type)
end

if (props.pearlescentColor) then
local pearlescentColor, wheelColor = GetVehicleExtraColours(vehicle)
SetVehicleExtraColours(vehicle, props.pearlescentColor, wheelColor)
end

if (props.wheelColor) then
local pearlescentColor, wheelColor = GetVehicleExtraColours(vehicle)
SetVehicleExtraColours(vehicle, pearlescentColor, props.wheelColor)
end

if (props.wheels) then
SetVehicleWheelType(vehicle, props.wheels)
end

if (props.windowTint) then
SetVehicleWindowTint(vehicle, props.windowTint)
end

if (props.extras) then
for id = 0, 25 do
if (DoesExtraExist(vehicle, id)) then
if (props.extras[tostring(id)] ~= IsVehicleExtraTurnedOn(vehicle, id)) then
SetVehicleExtra(vehicle, id, props.extras[tostring(id)] and 0 or 1)
end
end
end
end

if (props.neonEnabled) then
SetVehicleNeonLightEnabled(vehicle, 0, props.neonEnabled[1] == true or props.neonEnabled[1] == 1)
SetVehicleNeonLightEnabled(vehicle, 1, props.neonEnabled[2] == true or props.neonEnabled[2] == 1)
SetVehicleNeonLightEnabled(vehicle, 2, props.neonEnabled[3] == true or props.neonEnabled[3] == 1)
SetVehicleNeonLightEnabled(vehicle, 3, props.neonEnabled[4] == true or props.neonEnabled[4] == 1)
end

if (props.neonColor) then
SetVehicleNeonLightsColour(vehicle, props.neonColor[1], props.neonColor[2], props.neonColor[3])
end

if (props.modSmokeEnabled) then
ToggleVehicleMod(vehicle, 20, true)
end

if (props.tyreSmokeColor) then
SetVehicleTyreSmokeColor(vehicle, props.tyreSmokeColor[1], props.tyreSmokeColor[2], props.tyreSmokeColor[3])
end

if (props.dashboardColor) then
SetVehicleDashboardColour(vehicle, props.dashboardColor)
end

if (props.interiorColor) then
SetVehicleInteriorColour(vehicle, props.interiorColor)
end

if (props.modSpoilers) then
SetVehicleMod(vehicle, 0, props.modSpoilers, false)
end

if (props.modFrontBumper) then
SetVehicleMod(vehicle, 1, props.modFrontBumper, false)
end

if (props.modRearBumper) then
SetVehicleMod(vehicle, 2, props.modRearBumper, false)
end

if (props.modSideSkirt) then
SetVehicleMod(vehicle, 3, props.modSideSkirt, false)
end

if (props.modExhaust) then
SetVehicleMod(vehicle, 4, props.modExhaust, false)
end

if (props.modFrame) then
SetVehicleMod(vehicle, 5, props.modFrame, false)
end

if (props.modGrille) then
SetVehicleMod(vehicle, 6, props.modGrille, false)
end

if (props.modHood) then
SetVehicleMod(vehicle, 7, props.modHood, false)
end

if (props.modFender) then
SetVehicleMod(vehicle, 8, props.modFender, false)
end

if (props.modRightFender) then
SetVehicleMod(vehicle, 9, props.modRightFender, false)
end

if (props.modRoof) then
SetVehicleMod(vehicle, 10, props.modRoof, false)
end

if (props.modEngine) then
SetVehicleMod(vehicle, 11, props.modEngine, false)
end

if (props.modBrakes) then
SetVehicleMod(vehicle, 12, props.modBrakes, false)
end

if (props.modTransmission) then
SetVehicleMod(vehicle, 13, props.modTransmission, false)
end

if (props.modHorns) then
SetVehicleMod(vehicle, 14, props.modHorns, false)
end

if (props.modSuspension) then
SetVehicleMod(vehicle, 15, props.modSuspension, false)
end

if (props.modArmor) then
SetVehicleMod(vehicle, 16, props.modArmor, false)
end

if (props.modTurbo) then
ToggleVehicleMod(vehicle, 18, props.modTurbo)
end

if (props.modXenon) then
ToggleVehicleMod(vehicle, 22, true)
SetVehicleXenonLightsColour(vehicle, props.modXenon)
end

if (props.modFrontWheels) then
SetVehicleMod(vehicle, 23, props.modFrontWheels, false)
end

if (props.modBackWheels) then
SetVehicleMod(vehicle, 24, props.modBackWheels, false)
end

if (props.modPlateHolder) then
SetVehicleMod(vehicle, 25, props.modPlateHolder, false)
end

if (props.modVanityPlate) then
SetVehicleMod(vehicle, 26, props.modVanityPlate, false)
end

if (props.modTrimA) then
SetVehicleMod(vehicle, 27, props.modTrimA, false)
end

if (props.modOrnaments) then
SetVehicleMod(vehicle, 28, props.modOrnaments, false)
end

if (props.modDashboard) then
SetVehicleMod(vehicle, 29, props.modDashboard, false)
end

if (props.modDial) then
SetVehicleMod(vehicle, 30, props.modDial, false)
end

if (props.modDoorSpeaker) then
SetVehicleMod(vehicle, 31, props.modDoorSpeaker, false)
end

if (props.modSeats) then
SetVehicleMod(vehicle, 32, props.modSeats, false)
end

if (props.modSteeringWheel) then
SetVehicleMod(vehicle, 33, props.modSteeringWheel, false)
end

if (props.modShifterLeavers) then
SetVehicleMod(vehicle, 34, props.modShifterLeavers, false)
end

if (props.modAPlate) then
SetVehicleMod(vehicle, 35, props.modAPlate, false)
end

if (props.modSpeakers) then
SetVehicleMod(vehicle, 36, props.modSpeakers, false)
end

if (props.modTrunk) then
SetVehicleMod(vehicle, 37, props.modTrunk, false)
end

if (props.modHydrolic) then
SetVehicleMod(vehicle, 38, props.modHydrolic, false)
end

if (props.modEngineBlock) then
SetVehicleMod(vehicle, 39, props.modEngineBlock, false)
end

if (props.modAirFilter) then
SetVehicleMod(vehicle, 40, props.modAirFilter, false)
end

if (props.modStruts) then
SetVehicleMod(vehicle, 41, props.modStruts, false)
end

if (props.modArchCover) then
SetVehicleMod(vehicle, 42, props.modArchCover, false)
end

if (props.modAerials) then
SetVehicleMod(vehicle, 43, props.modAerials, false)
end

if (props.modTrimB) then
SetVehicleMod(vehicle, 44, props.modTrimB, false)
end

if (props.modTank) then
SetVehicleMod(vehicle, 45, props.modTank, false)
end

if (props.modWindows) then
SetVehicleMod(vehicle, 46, props.modWindows, false)
end

if (props.modLivery) then
SetVehicleMod(vehicle, 48, props.modLivery, false)
end

if (props.livery) then
SetVehicleLivery(vehicle, props.livery)
end
end