1
0

Extended Vector3 (#4666)

This commit is contained in:
Mattes D 2020-04-18 11:44:35 +02:00 committed by GitHub
parent 3591be50b2
commit a55f61548e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 129 additions and 28 deletions

View File

@ -13214,46 +13214,74 @@ end
{
AddFaceDirection =
{
Params =
{
Params =
{
Name = "BlockX",
Type = "number",
{
Name = "BlockX",
Type = "number",
},
{
Name = "BlockY",
Type = "number",
},
{
Name = "BlockZ",
Type = "number",
},
{
Name = "BlockFace",
Type = "eBlockFace",
},
{
Name = "IsInverse",
Type = "boolean",
IsOptional = true,
},
},
Returns =
{
Name = "BlockY",
Type = "number",
},
{
Name = "BlockZ",
Type = "number",
},
{
Name = "BlockFace",
Type = "eBlockFace",
},
{
Name = "IsInverse",
Type = "boolean",
IsOptional = true,
{
Name = "BlockX",
Type = "number",
},
{
Name = "BlockY",
Type = "number",
},
{
Name = "BlockZ",
Type = "number",
},
},
Notes = "Returns the coords of a block adjacent to the specified block through the specified {{Globals#BlockFaces|face}}",
},
Returns =
{
Params =
{
Name = "BlockX",
Type = "number",
{
Name = "BlockPos",
Type = "Vector3i",
},
{
Name = "BlockFace",
Type = "eBlockFace",
},
{
Name = "IsInverse",
Type = "boolean",
IsOptional = true,
},
},
Returns =
{
Name = "BlockY",
Type = "number",
},
{
Name = "BlockZ",
Type = "number",
{
Name = "BlockPos",
Type = "Vector3i",
},
},
Notes = "Returns the coords of a block adjacent to the specified block through the specified {{Globals#BlockFaces|face}}",
},
Notes = "Returns the coords of a block adjacent to the specified block through the specified {{Globals#BlockFaces|face}}",
},
Base64Decode =
{

View File

@ -542,6 +542,11 @@ return
},
},
},
cCuboid =
{
Desc = [[
@ -911,6 +916,11 @@ return
},
},
},
cLineBlockTracer =
{
Desc = [[
@ -1118,6 +1128,11 @@ end
},
},
},
Vector3d =
{
Desc = [[
@ -1208,6 +1223,16 @@ end
},
Notes = "Returns a copy of the vector, moved by the specified offset on the Z axis",
},
Ceil =
{
Returns =
{
{
Type = "Vector3i",
},
},
Notes = "Returns a new {{Vector3i}} object with coords set to math.ceil of this vector's coords.",
},
Clamp =
{
Params =
@ -1683,6 +1708,11 @@ end
},
},
},
Vector3f =
{
Desc = [[
@ -1773,6 +1803,16 @@ end
},
Notes = "Returns a copy of the vector, moved by the specified offset on the Z axis",
},
Ceil =
{
Returns =
{
{
Type = "Vector3i",
},
},
Notes = "Returns a new {{Vector3i}} object with coords set to math.ceil of this vector's coords.",
},
Clamp =
{
Params =
@ -2280,6 +2320,11 @@ end
},
},
},
Vector3i =
{
Desc = [[
@ -2370,6 +2415,16 @@ end
},
Notes = "Returns a copy of the vector, moved by the specified offset on the Z axis",
},
Ceil =
{
Returns =
{
{
Type = "Vector3i",
},
},
Notes = "Returns a new {{Vector3i}} object with coords set to math.ceil of this vector's coords. Normally not too useful with integer-only vectors, but still included for API completeness.",
},
Clamp =
{
Params =

View File

@ -425,6 +425,14 @@ extern eDamageType StringToDamageType(const AString & a_DamageString);
If a_Inverse is true, the opposite direction is used instead. */
void AddFaceDirection(int & a_BlockX, int & a_BlockY, int & a_BlockZ, eBlockFace a_BlockFace, bool a_bInverse = false);
/** Returns the coords of a block that is neighboring the specified position through its specified face.
If a_IsInverse is true, the opposite direction is used instead. */
inline Vector3i AddFaceDirection(Vector3i a_Pos, eBlockFace a_BlockFace, bool a_bInverse = false)
{
AddFaceDirection(a_Pos.x, a_Pos.y, a_Pos.z, a_BlockFace, a_bInverse);
return a_Pos;
}
// tolua_end

View File

@ -178,6 +178,16 @@ public:
);
}
/** Returns a new Vector3i with coords set to std::ceil() of this vector's coords. */
inline Vector3<int> Ceil() const
{
return Vector3<int>(
CeilC(x),
CeilC(y),
CeilC(z)
);
}
// tolua_end
inline bool operator != (const Vector3<T> & a_Rhs) const