From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 24 May 2018 21:01:13 -0400 Subject: [PATCH] Location.toBlockLocation Convert location objects to their block coordinates, or the center of the block diff --git a/src/main/java/org/bukkit/Location.java b/src/main/java/org/bukkit/Location.java index 1ddebf3c..5c70e80d 100644 --- a/src/main/java/org/bukkit/Location.java +++ b/src/main/java/org/bukkit/Location.java @@ -0,0 +0,0 @@ public class Location implements Cloneable, ConfigurationSerializable { } public boolean isChunkLoaded() { return world.isChunkLoaded(locToBlock(x) >> 4, locToBlock(z) >> 4); } // Paper + + // Paper start + /** + * @return A new location where X/Y/Z are on the Block location (integer value of X/Y/Z) + */ + public Location toBlockLocation() { + return toBlockLocation(false); + } + /** + * @return A new location where X/Y/Z are on the Block location (integer value of X/Y/Z), or optionally the center + */ + public Location toBlockLocation(boolean center) { + Location blockLoc = clone(); + if (center) { + blockLoc.setX(getBlockX() + 0.5); + blockLoc.setY(getBlockY() + 0.5); + blockLoc.setZ(getBlockZ() + 0.5); + } else { + blockLoc.setX(getBlockX()); + blockLoc.setY(getBlockY()); + blockLoc.setZ(getBlockZ()); + } + return blockLoc; + } + // Paper end @Override public boolean equals(Object obj) { if (obj == null) { --