convertVehicleInfo
Definition
-- @/lua/ge/extensions/core/vehicles.lua:593
local function convertVehicleInfo(info, infoFilename)
--log('I', 'convert', 'Convert vehicle info: '..dumps(infoFilename))
local color = {x=0,y=0,z=0,w=0}
local metallicData = {}
local paints = {}
for name, data in pairs(info.colors or {}) do
if type(data) == 'string' then
local colorTable = stringToTable(data)
color.x = tonumber(colorTable[1])
color.y = tonumber(colorTable[2])
color.z = tonumber(colorTable[3])
color.w = tonumber(colorTable[4])
metallicData[1] = tonumber(colorTable[5])
metallicData[2] = tonumber(colorTable[6])
metallicData[3] = tonumber(colorTable[7])
metallicData[4] = tonumber(colorTable[8])
-- log('I','convert', name..' colorTable: '..dumps(colorTable)..' color: '..dumps(color)..' metallicData: '..dumps(metallicData))
local paint = createVehiclePaint(color, metallicData)
paints[name] = paint
end
end
if not tableIsEmpty(paints) then
info.paints = paints
info.colors = nil
end
for _, key in ipairs(default_color_keys) do
if info[key] and type(info[key]) == 'table' and #info[key] == 4 then
log("W","", "Outdated default color format in "..dumps(infoFilename)..". Converting to paint: "..dumps(info[key]))
info[key] = createVehiclePaint({x = info[key][1], y = info[key][2], z = info[key][3], w = info[key][4]})
info[key].name = (info.Name or "") .. " " .. key
end
end
info.defaultPaintName1 = info.default_color
info.default_color = nil
info.defaultPaintName2 = info.default_color_2
info.default_color_2 = nil
info.defaultPaintName3 = info.default_color_3
info.default_color_3 = nil
return info
end
Callers
@/lua/ge/extensions/core/vehicles.lua
if readData.colors or readData.default_color or readData.default_color_2 or readData.default_color_3 then
convertVehicleInfo(readData, infoFilename)
end
if data and (data.colors or data.default_color or data.default_color_2 or data.default_color_3) then
convertVehicleInfo(data, infoFilename)
end