I've been trying for several hours to convert a string to a Vector3, but with no luck. I'm guessing I'm doing something horribly wrong to cause this.
Code:function parseVector3(sourceString) local outString = string local outVector3 = UnityEngine.Vector3 local splitString = string outString = string.sub(sourceString, 1, -14) splitString = string.rep(outString, 1, ",") outVector3.x = tonumber(splitString[0]) outVector3.y = tonumber(splitString[1]) outVector3.z = tonumber(splitString[2]) return outVector3 end
Converting string to Vector3 in Lua?
Discussion in 'Rust Development' started by Wubsy, Apr 16, 2018.
-
Wulf Community Admin
new Vector3(outVector3.x, outVector3.y, outVector3.z)
-
Code:
function parseVector3(sourceString) local outString = string local outVector3 = UnityEngine.Vector3 local splitString = string outString = string.sub(sourceString, 1, -14) splitString = string.rep(outString, 1, ",") outVector3.x = tonumber(splitString[0]) outVector3.y = tonumber(splitString[1]) outVector3.z = tonumber(splitString[2]) local output = new Vector3(outVector3.x, outVector3.y, outVector3.z) return output end
"attempt to call global 'Vector3' (a nil value)" -
Wulf Community Admin
Code:local vector3 = Vector3:new(outVector3.x, outVector3.y, outVector3.z)
-
Same error.
-
Code:vector = Utils.Vector3(); vector.x = outVector3.x; vector.y = outVector3.y; vector.z = outVector3.z;
-
Code:
function parseVector3(sourceString) local outString = string local outVector3 = Utils.Vector3() local splitString = string outString = string.sub(sourceString, 1, -14) splitString = string.rep(outString, 1, ",") outVector3.x = tonumber(splitString[0]) outVector3.y = tonumber(splitString[1]) outVector3.z = tonumber(splitString[2]) local output = Vector3:new(outVector3.x, outVector3.y, outVector3.z) return output end
-
Code:function parseVector3(sourceString) local outString = string local outVector3 = new( UnityEngine.Vector3._type , nil ) local splitString = string outString = string.sub(sourceString, 1, -14) splitString = string.rep(outString, 1, ",") outVector3.x = tonumber(splitString[0]) outVector3.y = tonumber(splitString[1]) outVector3.z = tonumber(splitString[2]) return outVector3 end