Compare commits

..

2 Commits

Author SHA1 Message Date
0a1faa0d04 fix: switch to consistent heights for schematic generation 2023-07-16 15:20:43 +01:00
f867867a42 Fix typo in comment 2023-07-15 19:56:44 +02:00
4 changed files with 8 additions and 14 deletions

View File

@ -152,8 +152,7 @@ public class EntityEventListener implements Listener {
} }
} }
case "REINFORCEMENTS", "NATURAL", "MOUNT", "PATROL", "RAID", "SHEARED", "SILVERFISH_BLOCK", "ENDER_PEARL", case "REINFORCEMENTS", "NATURAL", "MOUNT", "PATROL", "RAID", "SHEARED", "SILVERFISH_BLOCK", "ENDER_PEARL",
"TRAP", "VILLAGE_DEFENSE", "VILLAGE_INVASION", "BEEHIVE", "CHUNK_GEN", "NETHER_PORTAL", "DEFAULT", "TRAP", "VILLAGE_DEFENSE", "VILLAGE_INVASION", "BEEHIVE", "CHUNK_GEN" -> {
"DUPLICATION", "FROZEN", "SPELL" -> {
if (!area.isMobSpawning()) { if (!area.isMobSpawning()) {
event.setCancelled(true); event.setCancelled(true);
return; return;

View File

@ -1167,7 +1167,7 @@ public class PlayerEventListener implements Listener {
} }
} }
if (type.isEdible()) { if (type.isEdible()) {
//Allow all players to eat while also allowing the block place event ot be fired //Allow all players to eat while also allowing the block place event to be fired
return; return;
} }
if (type == Material.ARMOR_STAND) { if (type == Material.ARMOR_STAND) {

View File

@ -275,7 +275,7 @@ public class HybridPlotWorld extends ClassicPlotWorld {
SCHEM_Y = getMinGenHeight(); SCHEM_Y = getMinGenHeight();
plotY = 0; plotY = 0;
} else if (!Settings.Schematics.PASTE_ON_TOP) { } else if (!Settings.Schematics.PASTE_ON_TOP) {
SCHEM_Y = getMinBuildHeight(); SCHEM_Y = getMinGenHeight();
plotY = 0; plotY = 0;
} }
maxSchematicHeight = plotY + plotSchemHeight; maxSchematicHeight = plotY + plotSchemHeight;
@ -296,20 +296,15 @@ public class HybridPlotWorld extends ClassicPlotWorld {
// Road is the lowest schematic. Normalize plotY to it. // Road is the lowest schematic. Normalize plotY to it.
if (Settings.Schematics.PASTE_ON_TOP) { if (Settings.Schematics.PASTE_ON_TOP) {
plotY = PLOT_HEIGHT - getMinGenHeight(); plotY = PLOT_HEIGHT - getMinGenHeight();
} else {
plotY = getMinBuildHeight() - getMinGenHeight();
} }
} }
} else if (!Settings.Schematics.PASTE_ROAD_ON_TOP) { } else if (!Settings.Schematics.PASTE_ROAD_ON_TOP) {
if (SCHEM_Y == getMinGenHeight()) { // Only possible if plot schematic is enabled roadY = 0;
// Plot is still the lowest schematic, normalize roadY to it SCHEM_Y = getMinGenHeight();
roadY = getMinBuildHeight() - getMinGenHeight(); if (schematic3 != null) {
} else if (schematic3 != null) {
SCHEM_Y = getMinBuildHeight();
roadY = 0;// Road is the lowest schematic
if (Settings.Schematics.PASTE_ON_TOP) { if (Settings.Schematics.PASTE_ON_TOP) {
// Road is the lowest schematic. Normalize plotY to it. // Road is the lowest schematic. Normalize plotY to it.
plotY = PLOT_HEIGHT - getMinBuildHeight(); plotY = PLOT_HEIGHT - SCHEM_Y;
} }
maxSchematicHeight = Math.max(maxSchematicHeight, plotY + plotSchemHeight); maxSchematicHeight = Math.max(maxSchematicHeight, plotY + plotSchemHeight);
} }

View File

@ -529,7 +529,7 @@ public class HybridUtils {
Math.min(plotworld.PLOT_HEIGHT, Math.min(plotworld.WALL_HEIGHT, plotworld.ROAD_HEIGHT)) : plotworld.ROAD_HEIGHT; Math.min(plotworld.PLOT_HEIGHT, Math.min(plotworld.WALL_HEIGHT, plotworld.ROAD_HEIGHT)) : plotworld.ROAD_HEIGHT;
int sx = bot.getX() - plotworld.ROAD_WIDTH + 1; int sx = bot.getX() - plotworld.ROAD_WIDTH + 1;
int sz = bot.getZ() + 1; int sz = bot.getZ() + 1;
int sy = Settings.Schematics.PASTE_ROAD_ON_TOP ? schemY : plot.getArea().getMinBuildHeight(); int sy = Settings.Schematics.PASTE_ROAD_ON_TOP ? schemY : plot.getArea().getMinGenHeight();
int ex = bot.getX(); int ex = bot.getX();
int ez = top.getZ(); int ez = top.getZ();
int ey = get_ey(plotworld, queue, sx, ex, sz, ez, sy); int ey = get_ey(plotworld, queue, sx, ex, sz, ez, sy);