liveUpdateVehicleColors
Definition
-- @/lua/ge/extensions/core/vehicle/manager.lua:235
local function liveUpdateVehicleColors(objID, _vehicleObj, index, paint)
local vehicleObj = _vehicleObj or scenetree.findObjectById(objID)
if not vehicleObj or not vehicles[objID] or not vehicles[objID].config or not vehicles[objID].config.paints then return end
if paint and type(paint) == 'table' then
local paintsData = {}
validateVehiclePaint(paint)
if index == 1 then
vehicleObj.color = ColorF(paint.baseColor[1], paint.baseColor[2], paint.baseColor[3], paint.baseColor[4]):asLinear4F()
paintsData[1] = paint
elseif index == 2 then
vehicleObj.colorPalette0 = ColorF(paint.baseColor[1], paint.baseColor[2], paint.baseColor[3], paint.baseColor[4]):asLinear4F()
paintsData[2] = paint
elseif index == 3 then
vehicleObj.colorPalette1 = ColorF(paint.baseColor[1], paint.baseColor[2], paint.baseColor[3], paint.baseColor[4]):asLinear4F()
paintsData[3] = paint
end
vehicleObj:setMetallicPaintData(paintsData)
extensions.hook("onVehicleColorChanged", objID, index, paint)
end
end
Callers
@/lua/ge/extensions/core/vehicle/manager.lua
if paintNames[i] and data.model.paints[paintNames[i]] then
liveUpdateVehicleColors(id, nil, i, data.model.paints[paintNames[i]])
end
@/lua/ge/extensions/core/vehicle/colors.lua
local paint, allPaints = updateVehicleDataPaint(index, colorString, objID)
extensions.core_vehicle_manager.liveUpdateVehicleColors(objID, veh, index, paint)
vd.config.paints[index] = paint
extensions.core_vehicle_manager.liveUpdateVehicleColors(objID, veh, index, paint)
@/lua/ge/extensions/core/vehicle/partmgmt.lua
for i = 1, paintCount do
vehManager.liveUpdateVehicleColors(veh:getId(), veh, i, inData.paints[i])
end