diff --git a/plugins/heliodor-paper/src/main/java/net/civmc/heliodor/HeliodorPlugin.java b/plugins/heliodor-paper/src/main/java/net/civmc/heliodor/HeliodorPlugin.java index cb94d0efc..5b1c0f51f 100644 --- a/plugins/heliodor-paper/src/main/java/net/civmc/heliodor/HeliodorPlugin.java +++ b/plugins/heliodor-paper/src/main/java/net/civmc/heliodor/HeliodorPlugin.java @@ -142,6 +142,7 @@ public class HeliodorPlugin extends ACivMod { meteoricIronConfigSection.getInt("max_position_radius"), meteoricIronConfigSection.getInt("max_bury"), meteoricIronConfigSection.getBoolean("override-ender-eyes"), + meteoricIronConfigSection.getString("biome"), meteoricIronConfigSection.getBoolean("public_announcement.enabled"), meteoricIronConfigSection.getInt("public_announcement.max_delay_minutes"), meteoricIronConfigSection.getInt("public_announcement.forecast_window_minutes"), diff --git a/plugins/heliodor-paper/src/main/java/net/civmc/heliodor/vein/VeinSpawner.java b/plugins/heliodor-paper/src/main/java/net/civmc/heliodor/vein/VeinSpawner.java index 7519707ae..23a908df1 100644 --- a/plugins/heliodor-paper/src/main/java/net/civmc/heliodor/vein/VeinSpawner.java +++ b/plugins/heliodor-paper/src/main/java/net/civmc/heliodor/vein/VeinSpawner.java @@ -314,6 +314,10 @@ public class VeinSpawner { logger.log(Level.INFO, "Failed spawn attempt at x = " + x + ", z = " + z); return; } + if (meteoriteVeinConfig.biome() != null && !meteoriteVeinConfig.biome().equals(spawnBlock.getBiome().getKey().asString())) { + logger.log(Level.INFO, "Failed spawn attempt at x = " + x + ", z = " + z); + return; + } while (!Tag.BASE_STONE_OVERWORLD.isTagged(spawnBlock.getType())) { spawnBlock = spawnBlock.getRelative(BlockFace.DOWN); if (spawnBlock.getY() <= world.getMinHeight()) { diff --git a/plugins/heliodor-paper/src/main/java/net/civmc/heliodor/vein/data/MeteoricIronVeinConfig.java b/plugins/heliodor-paper/src/main/java/net/civmc/heliodor/vein/data/MeteoricIronVeinConfig.java index 2e0cc88f0..511d3a926 100644 --- a/plugins/heliodor-paper/src/main/java/net/civmc/heliodor/vein/data/MeteoricIronVeinConfig.java +++ b/plugins/heliodor-paper/src/main/java/net/civmc/heliodor/vein/data/MeteoricIronVeinConfig.java @@ -3,7 +3,7 @@ package net.civmc.heliodor.vein.data; import java.util.List; public record MeteoricIronVeinConfig(VeinConfig config, List positions, int minPositionRadius, - int maxPositionRadius, int maxBury, boolean overrideEnderEyes, + int maxPositionRadius, int maxBury, boolean overrideEnderEyes, String biome, boolean publicAnnouncementEnabled, int maxPublicDelayMinutes, int forecastWindowMinutes, long spawnTimeSalt, long forecastWindowSalt) { public static final String TYPE_NAME = "meteorite";