stringToTable
Definition
-- @/lua/ge/ge_utils.lua:1518
-- converts string str separated with separator sep to table
function stringToTable(str, sep)
if sep == nil then
sep = "%s"
end
local t = {}
local i = 1
for s in string.gmatch(str, "([^"..sep.."]+)") do
t[i] = s
i = i + 1
end
return t
end
Callers
@/lua/ge/ge_utils.lua
local isColor4 = function(color)
local components = stringToTable(color)
local countNumericEntries = 0
local color4StringToPaint = function(colorStr)
local components = stringToTable(colorStr)
local paint = createVehiclePaint({x = tonumber(components[1]), y = tonumber(components[2]), z = tonumber(components[3]), w = tonumber(components[4])})
local colorStr = validateVehicleDataColor(color)
color = stringToTable(colorStr)
spawningData.options.paint = createVehiclePaint({x=color[1], y=color[2], z=color[3], w=color[4]})
@/lua/ge/extensions/util/compileMeshes.lua
customCompilePathsArg = customCompilePathsArg:gsub("\"", "")
compilePaths = stringToTable(customCompilePathsArg, ';')
break
@/lua/ge/extensions/core/settings/settings.lua
for _, colorString in ipairs(userColorPresets)do
local color = stringToTable(colorString)
local paint = createVehiclePaint({x=color[1], y=color[2], z=color[3], w=color[4]}, emptyMetallicData)
@/lua/ge/extensions/ui/vehiclePaint.lua
local result = { }
for i,v in ipairs(stringToTable(colorString, '%s')) do
result[i] = tonumber(v)
@/lua/ge/extensions/core/multiSpawn.lua
if options[color] then
local values = stringToTable(options[color])
if values[4] then
@/lua/ge/extensions/core/vehicle/partmgmt.lua
for i = 1, colorTableSize do
local metallicPaintData = stringToTable(vehicle:getField('metallicPaintData', i - 1))
local paint = createVehiclePaint({x = colorTable[i].r, y = colorTable[i].g, z = colorTable[i].b, w = colorTable[i].a}, metallicPaintData)
for i = 1, colorTableSize do
local metallicPaintData = stringToTable(playerVehicle:getField('metallicPaintData', i - 1))
local paint = createVehiclePaint({x = colorTable[i].r, y = colorTable[i].g, z = colorTable[i].b, w = colorTable[i].a}, metallicPaintData)
@/lua/ge/extensions/core/weather.lua
elseif fields[attrName].type == 'ColorF' and type(attrValue) == 'table' and #attrValue == 4 then
formerValues[objClassStr][id][attrName]['value'] = stringToTable(obj:getField(attrName, ' '))
for k,v in pairs(formerValues[objClassStr][id][attrName]['value']) do
elseif fields[attrName].type == 'Point4F' and type(attrValue) == 'table' and #attrValue == 4 then
formerValues[objClassStr][id][attrName]['value'] = stringToTable(obj:getField(attrName, ' '))
for k,v in pairs(formerValues[objClassStr][id][attrName]['value']) do
elseif (fields[attrName].type == 'Point3F' or fields[attrName].type == 'vec3') and type(attrValue) == 'table' and #attrValue == 3 then
formerValues[objClassStr][id][attrName]['value'] = stringToTable(obj:getField(attrName, ' '))
for k,v in pairs(formerValues[objClassStr][id][attrName]['value']) do
@/lua/ge/extensions/core/vehicles.lua
if type(data) == 'string' then
local colorTable = stringToTable(data)
color.x = tonumber(colorTable[1])
@/lua/ge/extensions/editor/api/valueInspector.lua
elseif fieldType == "Point3F" or fieldType == "vec3" or fieldType == "MatrixPosition" then
local vec = stringToTable(fieldValue)
elseif fieldType == "Point2F" then
local vec = stringToTable(fieldValue)
if vec[1] == nil then vec[1] = "0" end
elseif fieldType == "EaseF" then
local vec = stringToTable(fieldValue)
if vec[1] == nil then vec[1] = "0" end
elseif fieldType == "Point2I" then
local vec = stringToTable(fieldValue)
if vec[1] == nil then vec[1] = "0" end
elseif fieldType == "EulerRotation" then
local vec = stringToTable(fieldValue)
if vec[1] == nil then vec[1] = "0" end
elseif fieldType == "Point4F" then
local vec = stringToTable(fieldValue)
if vec[1] == nil then vec[1] = "0" end
-- editUvRectInfo.arrayIndex = arrayIndex
-- local vec = stringToTable(fieldValue)
-- if vec[1] == nil then vec[1] = "0" end
elseif fieldType == "RectF" then
local vec = stringToTable(fieldValue)
if vec[1] == nil then vec[1] = "0" end
@/lua/ge/extensions/editor/inspector.lua
local valTbl1 = stringToTable(value1)
local valTbl2 = stringToTable(value2)
local valTbl1 = stringToTable(value1)
local valTbl2 = stringToTable(value2)
if imgui.Button("Reset") then
local vec = stringToTable(groundCoverUVInitialValue)
if vec[1] == nil then vec[1] = "0" end
local fieldValue = editor.getFieldValue(valueInspector.selectedIds[#valueInspector.selectedIds], fieldName, colorIndex)
local metallicValues = stringToTable(fieldValue)
metallicValuePtrs[0][0] = tonumber(metallicValues[1])
local function customGroundCoverBillBoardUVsFieldEditor(objectIds, fieldValue, fieldName, fieldLabel, fieldDesc, fieldType, fieldTypeName, customData, pasteCallback, contextMenuUI)
local uvVec = stringToTable(fieldValue)
if uvVec[1] == nil then uvVec[1] = "0" end
groundCoverUVInitialValue = fieldValue
local vec = stringToTable(fieldValue)
if vec[1] == nil then vec[1] = "0" end
@/lua/ge/spawn.lua
local config = TorqueScriptLua.getVar("$beamngVehicleConfig")
local color = stringToTable(TorqueScriptLua.getVar("$beamngVehicleColor"))
local paintData = stringToTable(TorqueScriptLua.getVar("$beamngVehicleMetallicPaintData"))
local color = stringToTable(TorqueScriptLua.getVar("$beamngVehicleColor"))
local paintData = stringToTable(TorqueScriptLua.getVar("$beamngVehicleMetallicPaintData"))
if next(color) or next(paintData) then
@/lua/ge/extensions/core/vehicle/colors.lua
local result = {}
for i,v in ipairs(stringToTable(colorString, '%s')) do
result[i] = tonumber(v)