@@ -0,0 +1,982 @@
+package info.u_team.u_team_core.util;%0A%0Aimport net.minecraft.util.math.Vec3d;%0A%0Apublic class MathUtil %7B%0A%09%0A%09public static Vec3d rotateVectorAroundYCC(Vec3d vec, double angle) %7B%0A%09%09return rotateVectorCC(vec, new Vec3d(0, 1, 0), angle);%0A%09%7D%0A%09%0A%09public static Vec3d rotateVectorCC(Vec3d vec, Vec3d axis, double angle) %7B%0A%09%09final double x = vec.getX();%0A%09%09final double y = vec.getY();%0A%09%09final double z = vec.getZ();%0A%09%09%0A%09%09final double u = axis.getX();%0A%09%09final double v = axis.getY();%0A%09%09final double w = axis.getZ();%0A%09%09%0A%09%09final double rotationX = u * (u * x + v * y + w * z) * (1 - Math.cos(angle)) + x * Math.cos(angle) + (-w * y + v * z) * Math.sin(angle);%0A%09%09final double rotationY = v * (u * x + v * y + w * z) * (1 - Math.cos(angle)) + y * Math.cos(angle) + (w * x - u * z) * Math.sin(angle);%0A%09%09final double rotationZ = w * (u * x + v * y + w * z) * (1 - Math.cos(angle)) + z * Math.cos(angle) + (-v * x + u * y) * Math.sin(angle);%0A%09%09return new Vec3d(rotationX, rotationY, rotationZ);%0A%09%7D%0A%09%0A%7D%0A

Add math util with vector rotation commands