fix jigsaw piece collision

This commit is contained in:
CrazyDev22
2024-04-23 13:48:47 +02:00
parent cb9a73c60e
commit 100e450514
2 changed files with 8 additions and 0 deletions
@@ -30,6 +30,7 @@ import com.volmit.iris.util.math.AxisAlignedBB;
import com.volmit.iris.util.math.BlockPosition; import com.volmit.iris.util.math.BlockPosition;
import com.volmit.iris.util.math.RNG; import com.volmit.iris.util.math.RNG;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.World; import org.bukkit.World;
import org.bukkit.block.Block; import org.bukkit.block.Block;
@@ -50,10 +51,12 @@ public class PlannedPiece {
private IrisObject ogObject; private IrisObject ogObject;
private IrisJigsawPiece piece; private IrisJigsawPiece piece;
private IrisObjectRotation rotation; private IrisObjectRotation rotation;
@EqualsAndHashCode.Exclude
private IrisData data; private IrisData data;
private KList<IrisJigsawPieceConnector> connected; private KList<IrisJigsawPieceConnector> connected;
private boolean dead = false; private boolean dead = false;
private AxisAlignedBB box; private AxisAlignedBB box;
@EqualsAndHashCode.Exclude
private PlannedStructure structure; private PlannedStructure structure;
public PlannedPiece(PlannedStructure structure, IrisPosition position, IrisJigsawPiece piece) { public PlannedPiece(PlannedStructure structure, IrisPosition position, IrisJigsawPiece piece) {
@@ -31,6 +31,7 @@ import com.volmit.iris.util.math.RNG;
import com.volmit.iris.util.matter.slices.container.JigsawPieceContainer; import com.volmit.iris.util.matter.slices.container.JigsawPieceContainer;
import com.volmit.iris.util.matter.slices.container.JigsawStructuresContainer; import com.volmit.iris.util.matter.slices.container.JigsawStructuresContainer;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode;
import org.bukkit.Axis; import org.bukkit.Axis;
import org.bukkit.World; import org.bukkit.World;
@@ -319,6 +320,10 @@ public class PlannedStructure {
public boolean collidesWith(PlannedPiece piece, PlannedPiece ignore) { public boolean collidesWith(PlannedPiece piece, PlannedPiece ignore) {
for (PlannedPiece i : pieces) { for (PlannedPiece i : pieces) {
if (i.equals(ignore)) {
continue;
}
if (i.collidesWith(piece)) { if (i.collidesWith(piece)) {
return true; return true;
} }