BlockPos

Represents a position of a block in the world

Importing the class

It might be required for you to import the package if you encounter any issues (like casting an Array), so better be safe than sorry and add the import at the very top of the file.

ZenScript
Copy
import crafttweaker.api.util.BlockPos;

Static Methods

getAllInBox

Gets all the BlockPos inside the given positions.

For example, doing

getAllInBox(new BlockPos(0,0,0), new BlockPos(2,2,0

Would return a list of the following positions:

[(0,0,0), (1,0,0), (1,1,0), (0,1,0)]

Returns: A list of all the BlockPos within the given position.
Return Type: stdlib.List<BlockPos>

ZenScript
Copy
// BlockPos.getAllInBox(first as BlockPos, second as BlockPos) as stdlib.List<BlockPos>

BlockPos.getAllInBox(new BlockPos(0, 0, 0), new BlockPos(5, 5, 5));
ParameterTypeDescription
firstBlockPosThe first position.
secondBlockPosThe second position.

Constructors

ZenScript
Copy
new BlockPos(x as int, y as int, z as int) as BlockPos
ParameterTypeDescription
xintNo description provided
yintNo description provided
zintNo description provided

Casters

Result typeIs Implicit
longfalse
stringtrue

Methods

add

Adds two positions together and returns the result.

Returns: new BlockPos with the added values.
Return Type: BlockPos

ZenScript
Copy
// BlockPos.add(pos as BlockPos) as BlockPos

new BlockPos(0, 1, 2).add(new BlockPos(3, 2, 1));
ParameterTypeDescription
posBlockPosother position to add
add

Adds the given values to this position, and returns a new position with the new values.

Returns: a new position based on values of provided values and this position
Return Type: BlockPos

ZenScript
Copy
// BlockPos.add(x as double, y as double, z as double) as BlockPos

new BlockPos(0, 1, 2).add(50.21, -20.8, -25.2);
ParameterTypeDescription
xdoublex value to add
ydoubley value to add
zdoublez value to add
add

Adds the given values to this position, and returns a new position with the new values.

Returns: a new position based on values of provided values and this position
Return Type: BlockPos

ZenScript
Copy
// BlockPos.add(x as int, y as int, z as int) as BlockPos

new BlockPos(0, 1, 2).add(50, -20, -25);
ParameterTypeDescription
xintx value to add
yinty value to add
zintz value to add
crossProduct

Creates a new BlockPos based on the cross product of this position, and the given position

Returns: a new BlockPos based on the cross product of this BlockPos and the given BlockPos
Return Type: BlockPos

ZenScript
Copy
// BlockPos.crossProduct(pos as BlockPos) as BlockPos

new BlockPos(0, 1, 2).crossProduct(new BlockPos(5, 8, 2););
ParameterTypeDescription
posBlockPosBlockPos to cross product
distanceSq

Gets the squared distance of this position to the specified BlockPos, using the center of the BlockPos

Returns: the squared distance of this current position and the given BlockPos.
Return Type: double

ZenScript
Copy
// BlockPos.distanceSq(to as BlockPos) as double

new BlockPos(0, 1, 2).distanceSq(new BlockPos(256, 128, 10););
ParameterTypeDescription
toBlockPosBlockPos to check against
distanceSq

Gets the squared distance of this position to the specified BlockPos

Returns: the squared distance of this current position and the given BlockPos.
Return Type: double

ZenScript
Copy
// BlockPos.distanceSq(to as BlockPos, useCenter as boolean) as double

new BlockPos(0, 1, 2).distanceSq(new BlockPos(256, 128, 10);, true);
ParameterTypeDescription
toBlockPosBlockPos to check against
useCenterbooleanshould the center of the coordinate be used? (adds 0.5 to each value)
distanceSq

Gets the squared distance of this position to the specified coordinates

Returns: the squared distance of this current position and the given coordinates.
Return Type: double

ZenScript
Copy
// BlockPos.distanceSq(x as double, y as double, z as double, useCenter as boolean) as double

new BlockPos(0, 1, 2).distanceSq(500.25, 250.75, 100.20, false);
ParameterTypeDescription
xdoublex position to check against
ydoubley position to check against
zdoublez position to check against
useCenterbooleanshould the center of the coordinate be used? (adds 0.5 to each value)
down

Creates a new BlockPos based on this BlockPos that is one block lower than this BlockPos

Returns: a new BlockPos that is one block lower than this BlockPos
Return Type: BlockPos

ZenScript
Copy
// BlockPos.down() as BlockPos

new BlockPos(0, 1, 2).down();
down

Creates a new BlockPos based on this BlockPos that is n block(s) lower than this BlockPos

Returns: a new BlockPos that is n block(s) lower than this BlockPos
Return Type: BlockPos

ZenScript
Copy
BlockPos.down(n as int) as BlockPos
ParameterTypeDescription
nintNo Description Provided
east

Creates a new BlockPos based on this BlockPos that is one block east of this BlockPos

Returns: a new BlockPos that is one block east of this BlockPos
Return Type: BlockPos

ZenScript
Copy
// BlockPos.east() as BlockPos

new BlockPos(0, 1, 2).east();
east

Creates a new BlockPos based on this BlockPos that is n block(s) east of this BlockPos

Returns: a new BlockPos that is n block(s) east of this BlockPos
Return Type: BlockPos

ZenScript
Copy
// BlockPos.east(n as int) as BlockPos

new BlockPos(0, 1, 2).east(2);
ParameterTypeDescription
nintNo Description Provided
manhattanDistance

Gets the Manhattan Distance of this pos compared to a different position

Returns: The manhattan distance of the positions
Return Type: int

ZenScript
Copy
// BlockPos.manhattanDistance(other as BlockPos) as int

new BlockPos(0, 1, 2).manhattanDistance(new BlockPos(4, 5, 6));
ParameterTypeDescription
otherBlockPosother position to get the distance to
north

Creates a new BlockPos based on this BlockPos that is one block north of this BlockPos

Returns: a new BlockPos that is one block north of this BlockPos
Return Type: BlockPos

ZenScript
Copy
// BlockPos.north() as BlockPos

new BlockPos(0, 1, 2).north();
north

Creates a new BlockPos based on this BlockPos that is n block(s) north of this BlockPos

Returns: a new BlockPos that is n block(s) north of this BlockPos
Return Type: BlockPos

ZenScript
Copy
// BlockPos.north(n as int) as BlockPos

new BlockPos(0, 1, 2).north(10);
ParameterTypeDescription
nintNo Description Provided
offset

Creates a new BlockPos based on this BlockPos that is one block offset of this BlockPos based on the given Direction

Returns: a new BlockPos that is 1 block offset of this BlockPos
Return Type: BlockPos

ZenScript
Copy
// BlockPos.offset(direction as Direction) as BlockPos

new BlockPos(0, 1, 2).offset(<direction:east>);
ParameterTypeDescription
directionDirectionNo Description Provided
offset

Creates a new BlockPos based on this BlockPos that is n block(s) offset of this BlockPos based on the given Direction

Returns: a new BlockPos that is n block(s) offset of this BlockPos
Return Type: BlockPos

ZenScript
Copy
// BlockPos.offset(direction as Direction, n as int) as BlockPos

new BlockPos(0, 1, 2).offset(<direction:south>, 3);
ParameterTypeDescription
directionDirectionNo Description Provided
nintNo Description Provided
south

Creates a new BlockPos based on this BlockPos that is one block south of this BlockPos

Returns: a new BlockPos that is one block south of this BlockPos
Return Type: BlockPos

ZenScript
Copy
// BlockPos.south() as BlockPos

new BlockPos(0, 1, 2).south();
south

Creates a new BlockPos based on this BlockPos that is n block(s) south of this BlockPos

Returns: a new BlockPos that is n block(s) south of this BlockPos
Return Type: BlockPos

ZenScript
Copy
// BlockPos.south(n as int) as BlockPos

new BlockPos(0, 1, 2).south(12);
ParameterTypeDescription
nintNo Description Provided
subtract

Subtracts two positions together and returns the result.

Returns: new BlockPos with the removed values.
Return Type: BlockPos

ZenScript
Copy
// BlockPos.subtract(pos as BlockPos) as BlockPos

new BlockPos(0, 1, 2).subtract(new BlockPos(2, 1, 3));
ParameterTypeDescription
posBlockPosother position to remove
up

Creates a new BlockPos based on this BlockPos that is one block higher than this BlockPos

Returns: a new BlockPos that is one block higher than this BlockPos
Return Type: BlockPos

ZenScript
Copy
// BlockPos.up() as BlockPos

new BlockPos(0, 1, 2).up();
up

Creates a new BlockPos based on this BlockPos that is n block(s) higher than this BlockPos

Returns: a new BlockPos that is n block(s) higher than this BlockPos
Return Type: BlockPos

ZenScript
Copy
// BlockPos.up(n as int) as BlockPos

new BlockPos(0, 1, 2).up(45);
ParameterTypeDescription
nintNo Description Provided
west

Creates a new BlockPos based on this BlockPos that is one block west of this BlockPos

Returns: a new BlockPos that is one block west of this BlockPos
Return Type: BlockPos

ZenScript
Copy
// BlockPos.west() as BlockPos

new BlockPos(0, 1, 2).west();
west

Creates a new BlockPos based on this BlockPos that is n block(s) west of this BlockPos

Returns: a new BlockPos that is n block(s) west of this BlockPos
Return Type: BlockPos

ZenScript
Copy
// BlockPos.west(n as int) as BlockPos

new BlockPos(0, 1, 2).west(120);
ParameterTypeDescription
nintNo Description Provided
withinDistance

Checks if the given BlockPos is within the specified distance of this BlockPos (this uses the middle of the BlockPos)

Returns: true if the given BlockPos is within the given distance of this BlockPos
Return Type: boolean

ZenScript
Copy
// BlockPos.withinDistance(pos as BlockPos, distance as double) as boolean

new BlockPos(0, 1, 2).withinDistance(new BlockPos(80, 75, 54);, 10);
ParameterTypeDescription
posBlockPosBlockPos to check if it is within the distance
distancedoubledistance to check within

Properties

NameTypeHas GetterHas SetterDescription
xinttruefalseNo Description Provided
yinttruefalseNo Description Provided
zinttruefalseNo Description Provided