Correct rounding bevhaviour for Vector3 -> BlockVector3

- fixes #512
This commit is contained in:
dordsor21
2021-01-10 20:49:38 +00:00
parent 0b727d9760
commit ae6a1f1be4
3 changed files with 13 additions and 8 deletions

View File

@ -19,6 +19,7 @@
package com.sk89q.worldedit.util;
import com.boydti.fawe.util.MathMan;
import com.sk89q.worldedit.math.BlockVector3;
import com.sk89q.worldedit.math.Vector3;
@ -79,7 +80,8 @@ public enum Direction {
}
Direction(Vector3 vector, int flags, int left, int right) {
this.blockPoint = BlockVector3.at(Math.signum(vector.getX()), Math.signum(vector.getY()), Math.signum(vector.getZ()));
this.blockPoint = BlockVector3.at(MathMan.roundInt(Math.signum(vector.getX())),
MathMan.roundInt(Math.signum(vector.getY())), MathMan.roundInt(Math.signum(vector.getZ())));
this.direction = vector.normalize();
this.flags = flags;
this.left = left;