Missig function.

This commit is contained in:
NathanSweet 2014-05-23 16:21:41 +02:00
parent 81ae526a7b
commit 8887677cd7

View File

@ -54,6 +54,7 @@ function SkeletonJson.new (attachmentLoader)
local readAttachment
local readAnimation
local readCurve
local getArray
function self:readSkeletonData (jsonText)
local skeletonData = SkeletonData.new(self.attachmentLoader)
@ -208,9 +209,9 @@ function SkeletonJson.new (attachmentLoader)
local mesh = attachmentLoader:newMeshAttachment(skin, name, path)
if not mesh then return null end
mesh.path = path
mesh.vertices = getFloatArray(map, "vertices", scale)
mesh.triangles = getIntArray(map, "triangles")
mesh.regionUVs = getFloatArray(map, "uvs", 1)
mesh.vertices = getArray(map, "vertices", scale)
mesh.triangles = getArray(map, "triangles", 1)
mesh.regionUVs = getArray(map, "uvs", 1)
mesh:updateUVs()
local color = map["color"]
@ -222,7 +223,7 @@ function SkeletonJson.new (attachmentLoader)
end
mesh.hullLength = (map["hull"] or 0) * 2
if map["edges"] then mesh.edges = getIntArray(map, "edges") end
if map["edges"] then mesh.edges = getArray(map, "edges", 1) end
mesh.width = (map["width"] or 0) * scale
mesh.height = (map["height"] or 0) * scale
return mesh
@ -232,8 +233,8 @@ function SkeletonJson.new (attachmentLoader)
if not mesh then return null end
mesh.path = path
local uvs = getFloatArray(map, "uvs", 1)
vertices = getFloatArray(map, "vertices", 1)
local uvs = getArray(map, "uvs", 1)
vertices = getArray(map, "vertices", 1)
local weights = {}
local bones = {}
for i = 1, vertices do
@ -250,7 +251,7 @@ function SkeletonJson.new (attachmentLoader)
end
mesh.bones = bones
mesh.weights = weights
mesh.triangles = getIntArray(map, "triangles")
mesh.triangles = getArray(map, "triangles", 1)
mesh.regionUVs = uvs
mesh:updateUVs()
@ -263,7 +264,7 @@ function SkeletonJson.new (attachmentLoader)
end
mesh.hullLength = (map["hull"] or 0) * 2
if map["edges"] then mesh.edges = getIntArray(map, "edges") end
if map["edges"] then mesh.edges = getArray(map, "edges", 1) end
mesh.width = (map["width"] or 0) * scale
mesh.height = (map["height"] or 0) * scale
return mesh
@ -536,6 +537,21 @@ function SkeletonJson.new (attachmentLoader)
end
end
getArray = function (map, name, scale)
local list = map[name]
local values = {}
if scale == 1 then
for i = 1, #list do
values[i] = list[i]
end
else
for i = 1, #list do
values[i] = list[i] * scale
end
end
return values
end
return self
end
return SkeletonJson