I know how to use the clone
command to copy a collection of blocks between specified coordinates for a lower-near-right
and upper-far-left
of the area to be copied, to the lower-far-left
of the area to copy to:
clone 0 4 0 -5 9 -5 5 4 5
| from | to | destination
The command above will copy a 5x5x5
collection of blocks to the coordinate 5, 4, 5
where that coordinate is the lower-far-left corner of the copied blocks, filling away from the world origin, towards the lower-near-right
corner specified as the clone area starting point:
The gold blocks are the
lower-near-right
corner of the cloned area and the diamond blocks are the lower-far-left
corner.
With that in mind, I often find myself wanting to copy a collection of blocks to a new area with a new orientation. For example, let's say I wanted to create a cross where each arm is a 2x1x3
collection of any block type. I want to be able to create the first arm, then clone it, rotated 90 degrees, then repeat the rotate and clone until I have all four arms leaving me to simply fill in the center:
Is there a way to either:
- Clone with a lower-right and upper-left position specified for the destination?
- Clone with a specified rotation on say the y-axis?
NOTE: Creating a custom behavior pack isn't out of the question, so long as I can easily execute the clone.
The definitions of lower-far-left
, lower-near-right
, and upper-far-left
, in the context of this post, are, with respect to the origin of the world located at 0, 0, 0
where: lower-far-left
denotes a smaller value all three axes, lower-near-right
denotes a smaller value on the y-axis with a larger value on the x and z axes, and upper-far-left
denotes a larger value on the y-axis with a smaller value on the x and z axes.