diff --git a/common/src/lib/java/dev/engine_room/flywheel/lib/transform/Rotate.java b/common/src/lib/java/dev/engine_room/flywheel/lib/transform/Rotate.java index 56b8b7f6e..4ab93ab49 100644 --- a/common/src/lib/java/dev/engine_room/flywheel/lib/transform/Rotate.java +++ b/common/src/lib/java/dev/engine_room/flywheel/lib/transform/Rotate.java @@ -99,8 +99,16 @@ default Self rotateToFace(Direction facing) { }; } + default Self rotateTo(float fromX, float fromY, float fromZ, float toX, float toY, float toZ) { + return rotate(new Quaternionf().rotateTo(fromX, fromY, fromZ, toX, toY, toZ)); + } + default Self rotateTo(Vector3fc from, Vector3fc to) { - return rotate(new Quaternionf().rotateTo(from, to)); + return rotateTo(from.x(), from.y(), from.z(), to.x(), to.y(), to.z()); + } + + default Self rotateTo(Direction from, Direction to) { + return rotateTo(from.getStepX(), from.getStepY(), from.getStepZ(), to.getStepX(), to.getStepY(), to.getStepZ()); } @SuppressWarnings("unchecked")