Skip to content

Commit

Permalink
CuboidTag.corners
Browse files Browse the repository at this point in the history
  • Loading branch information
mcmonkey4eva committed Dec 28, 2021
1 parent e1e4fd2 commit a13667a
Showing 1 changed file with 24 additions and 0 deletions.
Expand Up @@ -1098,6 +1098,30 @@ public static void registerTags() {
}
});

// <--[tag]
// @attribute <CuboidTag.corners>
// @returns ListTag(LocationTag)
// @description
// Returns all 8 corners of the cuboid.
// The 4 low corners, then the 4 high corners.
// In order X-Z-, X+Z-, X-Z+, X+Z+
// If the object is a multi-member cuboid, returns corners for all members in sequence.
// -->
tagProcessor.registerTag(ListTag.class, "corners", (attribute, cuboid) -> {
ListTag output = new ListTag();
for (LocationPair pair : cuboid.pairs) {
output.addObject(new LocationTag(pair.low.getX(), pair.low.getY(), pair.low.getZ(), pair.low.getWorldName()));
output.addObject(new LocationTag(pair.high.getX(), pair.low.getY(), pair.low.getZ(), pair.low.getWorldName()));
output.addObject(new LocationTag(pair.low.getX(), pair.low.getY(), pair.high.getZ(), pair.low.getWorldName()));
output.addObject(new LocationTag(pair.high.getX(), pair.low.getY(), pair.high.getZ(), pair.low.getWorldName()));
output.addObject(new LocationTag(pair.low.getX(), pair.high.getY(), pair.low.getZ(), pair.low.getWorldName()));
output.addObject(new LocationTag(pair.high.getX(), pair.high.getY(), pair.low.getZ(), pair.low.getWorldName()));
output.addObject(new LocationTag(pair.low.getX(), pair.high.getY(), pair.high.getZ(), pair.low.getWorldName()));
output.addObject(new LocationTag(pair.high.getX(), pair.high.getY(), pair.high.getZ(), pair.low.getWorldName()));
}
return output;
});

// <--[tag]
// @attribute <CuboidTag.shift[<vector>]>
// @returns CuboidTag
Expand Down

0 comments on commit a13667a

Please sign in to comment.