title |
---|
vec |
Creates a new vector depending on the count of arguments.
Supports 1 to 4 arguments. Return value is depends on the input.
number vec(float x)
vector2 vec(float x, float y)
vector3 vec(float x, float y, float z)
vector4 vec(float x, float y, float z, float w)
- x: A floating point number representing the
x
value of your vector.
- y: A floating point number representing the
y
value of your vector. - z: A floating point number representing the
z
value of your vector. - w: A floating point number representing the
w
value of your vector.
- If 1 argument is passed, returns the number.
- If 2 arguments are passed, returns a vector2.
- If 3 arguments are passed, returns a vector3.
- If 4 arguments are passed, returns a vector4.
The following is true:
vec(1) == 1
vec(1, 2) == vector2(1, 2)
vec(1, 2, 3) == vector3(1, 2, 3)
vec(1, 2, 3, 4) == vector4(1, 2, 3, 4)
A basic version of this function could be implemented like so:
function vec_alt(...)
local args = {...}
if #args == 1 then
return args[1]
elseif #args == 2 then
return vector2(args[1], args[2])
elseif #args == 3 then
return vector3(args[1], args[2], args[3])
elseif #args == 4 then
return vector4(args[1], args[2], args[3], args[4])
else
error('Argument count mismatch.')
end
end