fix(zonecreator): vector formatting on some systems (#683)

This commit is contained in:
Qotrek
2025-03-10 01:32:02 +01:00
committed by GitHub
parent 68210b2a59
commit e846d41f23

View File

@@ -37,6 +37,10 @@ exports.ox_target:addPolyZone({
})
]]
local function formatNumber(num)
return tostring(num):gsub(",", ".")
end
local parse = {
poly = function(data)
local points = {}
@@ -82,18 +86,34 @@ local parse = {
pattern = {
'local box = lib.zones.box({\n',
('\tname = "%s",\n'):format(data.name),
('\tcoords = vec3(%s, %s, %s),\n'):format(data.xCoord, data.yCoord, data.zCoord),
('\tsize = vec3(%s, %s, %s),\n'):format(data.width, data.length, data.height),
('\trotation = %s,\n'):format(data.heading),
('\tcoords = vec3(%s, %s, %s),\n'):format(
formatNumber(data.xCoord),
formatNumber(data.yCoord),
formatNumber(data.zCoord)
),
('\tsize = vec3(%s, %s, %s),\n'):format(
formatNumber(data.width),
formatNumber(data.length),
formatNumber(data.height)
),
('\trotation = %s,\n'):format(formatNumber(data.heading)),
'})\n',
}
elseif data.format == 'array' then
pattern = {
'{\n',
('\tname = "%s",\n'):format(data.name),
('\tcoords = vec3(%s, %s, %s),\n'):format(data.xCoord, data.yCoord, data.zCoord),
('\tsize = vec3(%s, %s, %s),\n'):format(data.width, data.length, data.height),
('\trotation = %s,\n'):format(data.heading),
('\tcoords = vec3(%s, %s, %s),\n'):format(
formatNumber(data.xCoord),
formatNumber(data.yCoord),
formatNumber(data.zCoord)
),
('\tsize = vec3(%s, %s, %s),\n'):format(
formatNumber(data.width),
formatNumber(data.length),
formatNumber(data.height)
),
('\trotation = %s,\n'):format(formatNumber(data.heading)),
'},\n',
}
elseif data.format == 'target' then