#1181: Consolidate Location conversion code

By: Doc <nachito94@msn.com>
This commit is contained in:
CraftBukkit/Spigot
2023-04-19 19:59:19 +10:00
parent 2ffb1d2479
commit b99d3df2d8
43 changed files with 424 additions and 316 deletions

View File

@@ -0,0 +1,19 @@
package org.bukkit.craftbukkit.util;
import net.minecraft.core.BaseBlockPosition;
import net.minecraft.core.BlockPosition;
import org.bukkit.util.BlockVector;
public final class CraftBlockVector {
private CraftBlockVector() {
}
public static BlockPosition toBlockPosition(BlockVector blockVector) {
return new BlockPosition(blockVector.getBlockX(), blockVector.getBlockY(), blockVector.getBlockZ());
}
public static BlockVector toBukkit(BaseBlockPosition baseBlockPosition) {
return new BlockVector(baseBlockPosition.getX(), baseBlockPosition.getY(), baseBlockPosition.getZ());
}
}

View File

@@ -0,0 +1,61 @@
package org.bukkit.craftbukkit.util;
import net.minecraft.core.BlockPosition;
import net.minecraft.core.Position;
import net.minecraft.world.phys.Vec3D;
import org.bukkit.Location;
import org.bukkit.World;
public final class CraftLocation {
private CraftLocation() {
}
public static Location toBukkit(Vec3D vec3D) {
return toBukkit(vec3D, null);
}
public static Location toBukkit(Vec3D vec3D, World world) {
return toBukkit(vec3D, world, 0.0F, 0.0F);
}
public static Location toBukkit(Vec3D vec3D, World world, float yaw, float pitch) {
return new Location(world, vec3D.x(), vec3D.y(), vec3D.z(), yaw, pitch);
}
public static Location toBukkit(BlockPosition blockPosition) {
return toBukkit(blockPosition, null);
}
public static Location toBukkit(BlockPosition blockPosition, World world) {
return toBukkit(blockPosition, world, 0.0F, 0.0F);
}
public static Location toBukkit(BlockPosition blockPosition, World world, float yaw, float pitch) {
return new Location(world, blockPosition.getX(), blockPosition.getY(), blockPosition.getZ(), yaw, pitch);
}
public static Location toBukkit(Position position) {
return toBukkit(position, null, 0.0F, 0.0F);
}
public static Location toBukkit(Position position, World world) {
return toBukkit(position, world, 0.0F, 0.0F);
}
public static Location toBukkit(Position position, World world, float yaw, float pitch) {
return new Location(world, position.x(), position.y(), position.z(), yaw, pitch);
}
public static BlockPosition toBlockPosition(Location location) {
return new BlockPosition(location.getBlockX(), location.getBlockY(), location.getBlockZ());
}
public static Position toPosition(Location location) {
return new Position(location.getX(), location.getY(), location.getZ());
}
public static Vec3D toVec3D(Location location) {
return new Vec3D(location.getX(), location.getY(), location.getZ());
}
}