mirror of
https://github.com/IntellectualSites/PlotSquared.git
synced 2025-08-23 22:35:36 +02:00
Compare commits
2 Commits
main
...
fix/v7/faw
Author | SHA1 | Date | |
---|---|---|---|
![]() |
22974d6478 | ||
![]() |
4924ffe03b |
@@ -164,6 +164,9 @@ public abstract class ClassicPlotWorld extends SquarePlotWorld {
|
||||
: getMinBuildHeight();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the lowest height of plot, road, and wall. Accounts for {@link Settings.Schematics#USE_WALL_IN_ROAD_SCHEM_HEIGHT}
|
||||
*/
|
||||
int schematicStartHeight() {
|
||||
int plotRoadMin = Math.min(PLOT_HEIGHT, ROAD_HEIGHT);
|
||||
if (!Settings.Schematics.USE_WALL_IN_ROAD_SCHEM_HEIGHT) {
|
||||
|
@@ -274,7 +274,8 @@ public class HybridPlotWorld extends ClassicPlotWorld {
|
||||
SCHEM_Y = getMinGenHeight();
|
||||
plotY = 0;
|
||||
} else if (!Settings.Schematics.PASTE_ON_TOP) {
|
||||
SCHEM_Y = getMinGenHeight();
|
||||
// Schematics should generate/be pasted from build height
|
||||
SCHEM_Y = getMinBuildHeight();
|
||||
plotY = 0;
|
||||
}
|
||||
}
|
||||
@@ -291,18 +292,14 @@ public class HybridPlotWorld extends ClassicPlotWorld {
|
||||
roadY = 0; // Road is the lowest schematic
|
||||
if (schematic3 != null && schematic3.getClipboard().getDimensions().getY() != worldGenHeight) {
|
||||
// Road is the lowest schematic. Normalize plotY to it.
|
||||
if (Settings.Schematics.PASTE_ON_TOP) {
|
||||
plotY = PLOT_HEIGHT - getMinGenHeight();
|
||||
}
|
||||
plotY = (Settings.Schematics.PASTE_ON_TOP ? PLOT_HEIGHT : getMinBuildHeight()) - SCHEM_Y;
|
||||
}
|
||||
} else if (!Settings.Schematics.PASTE_ROAD_ON_TOP) {
|
||||
roadY = 0;
|
||||
SCHEM_Y = getMinGenHeight();
|
||||
if (schematic3 != null) {
|
||||
if (Settings.Schematics.PASTE_ON_TOP) {
|
||||
// Road is the lowest schematic. Normalize plotY to it.
|
||||
plotY = PLOT_HEIGHT - SCHEM_Y;
|
||||
}
|
||||
if (schematic3 != null && schematic3.getClipboard().getDimensions().getY() != worldGenHeight) {
|
||||
// Road is the lowest schematic. Normalize plotY to it.
|
||||
plotY = (Settings.Schematics.PASTE_ON_TOP ? PLOT_HEIGHT : getMinBuildHeight()) - SCHEM_Y;
|
||||
}
|
||||
} else {
|
||||
roadY = minRoadWall - SCHEM_Y;
|
||||
|
@@ -68,6 +68,7 @@ import java.util.HashSet;
|
||||
import java.util.Iterator;
|
||||
import java.util.LinkedHashSet;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
@@ -529,7 +530,7 @@ public class HybridUtils {
|
||||
final QueueCoordinator queue = blockQueue.getNewQueue(worldUtil.getWeWorld(world));
|
||||
Location bot = plot.getBottomAbs().subtract(1, 0, 1);
|
||||
Location top = plot.getTopAbs();
|
||||
final HybridPlotWorld plotworld = (HybridPlotWorld) plot.getArea();
|
||||
final HybridPlotWorld plotworld = Objects.requireNonNull((HybridPlotWorld) plot.getArea());
|
||||
// Do not use plotworld#schematicStartHeight() here as we want to restore the pre 6.1.4 way of doing it if
|
||||
// USE_WALL_IN_ROAD_SCHEM_HEIGHT is false
|
||||
int schemY = Settings.Schematics.USE_WALL_IN_ROAD_SCHEM_HEIGHT ?
|
||||
|
Reference in New Issue
Block a user