diff --git a/worldgeneratorapi-impl/pom.xml b/worldgeneratorapi-impl/pom.xml
index b6a80ba..70d6762 100644
--- a/worldgeneratorapi-impl/pom.xml
+++ b/worldgeneratorapi-impl/pom.xml
@@ -71,7 +71,7 @@
org.spigotmc
spigot
- 1.16.1-R0.1-SNAPSHOT
+ 1.16.2-R0.1-SNAPSHOT
provided
diff --git a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/BaseTerrainGeneratorImpl.java b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/BaseTerrainGeneratorImpl.java
index 5bf6f9b..1bff3c1 100644
--- a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/BaseTerrainGeneratorImpl.java
+++ b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/BaseTerrainGeneratorImpl.java
@@ -4,18 +4,18 @@ import java.lang.reflect.Field;
import java.util.Objects;
import org.bukkit.World;
-import org.bukkit.craftbukkit.v1_16_R1.CraftWorld;
+import org.bukkit.craftbukkit.v1_16_R2.CraftWorld;
-import net.minecraft.server.v1_16_R1.ChunkGenerator;
-import net.minecraft.server.v1_16_R1.ChunkGeneratorAbstract;
-import net.minecraft.server.v1_16_R1.ChunkProviderDebug;
-import net.minecraft.server.v1_16_R1.ChunkProviderFlat;
-import net.minecraft.server.v1_16_R1.GeneratorAccess;
-import net.minecraft.server.v1_16_R1.HeightMap;
-import net.minecraft.server.v1_16_R1.SeededRandom;
-import net.minecraft.server.v1_16_R1.StructureManager;
-import net.minecraft.server.v1_16_R1.WorldChunkManager;
-import net.minecraft.server.v1_16_R1.WorldServer;
+import net.minecraft.server.v1_16_R2.ChunkGenerator;
+import net.minecraft.server.v1_16_R2.ChunkGeneratorAbstract;
+import net.minecraft.server.v1_16_R2.ChunkProviderDebug;
+import net.minecraft.server.v1_16_R2.ChunkProviderFlat;
+import net.minecraft.server.v1_16_R2.GeneratorAccess;
+import net.minecraft.server.v1_16_R2.HeightMap;
+import net.minecraft.server.v1_16_R2.SeededRandom;
+import net.minecraft.server.v1_16_R2.StructureManager;
+import net.minecraft.server.v1_16_R2.WorldChunkManager;
+import net.minecraft.server.v1_16_R2.WorldServer;
import nl.rutgerkok.worldgeneratorapi.BaseChunkGenerator;
import nl.rutgerkok.worldgeneratorapi.BaseTerrainGenerator;
import nl.rutgerkok.worldgeneratorapi.internal.bukkitoverrides.ChunkDataImpl;
diff --git a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/BiomeGeneratorImpl.java b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/BiomeGeneratorImpl.java
index b9b5722..59da26e 100644
--- a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/BiomeGeneratorImpl.java
+++ b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/BiomeGeneratorImpl.java
@@ -5,12 +5,13 @@ import java.util.List;
import java.util.Objects;
import org.bukkit.block.Biome;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftBlock;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftBlock;
import com.google.common.collect.ImmutableSet;
-import net.minecraft.server.v1_16_R1.BiomeBase;
-import net.minecraft.server.v1_16_R1.WorldChunkManager;
+import net.minecraft.server.v1_16_R2.BiomeBase;
+import net.minecraft.server.v1_16_R2.RegistryGeneration;
+import net.minecraft.server.v1_16_R2.WorldChunkManager;
import nl.rutgerkok.worldgeneratorapi.BiomeGenerator;
/**
@@ -48,7 +49,7 @@ public final class BiomeGeneratorImpl implements BiomeGenerator {
.get(this.internal);
for (BiomeBase biome : biomeBases) {
- biomes.add(CraftBlock.biomeBaseToBiome(biome));
+ biomes.add(CraftBlock.biomeBaseToBiome(RegistryGeneration.WORLDGEN_BIOME, biome));
}
return biomes.build();
} catch (IllegalAccessException e) {
@@ -60,7 +61,7 @@ public final class BiomeGeneratorImpl implements BiomeGenerator {
@Override
public Biome getZoomedOutBiome(int x, int y, int z) {
- return CraftBlock.biomeBaseToBiome(internal.getBiome(x, y, z));
+ return CraftBlock.biomeBaseToBiome(RegistryGeneration.WORLDGEN_BIOME, internal.getBiome(x, y, z));
}
}
diff --git a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/DecorationAreaImpl.java b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/DecorationAreaImpl.java
index 3a35343..d98cf83 100644
--- a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/DecorationAreaImpl.java
+++ b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/DecorationAreaImpl.java
@@ -6,74 +6,75 @@ import org.bukkit.Material;
import org.bukkit.block.Biome;
import org.bukkit.block.BlockState;
import org.bukkit.block.data.BlockData;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftBanner;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftBarrel;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftBeacon;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftBeehive;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftBell;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftBlastFurnace;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftBlock;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftBlockEntityState;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftBlockState;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftBrewingStand;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftCampfire;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftChest;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftCommandBlock;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftComparator;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftCreatureSpawner;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftDaylightDetector;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftDispenser;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftDropper;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftEnchantingTable;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftEndGateway;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftEnderChest;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftFurnaceFurnace;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftHopper;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftJigsaw;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftJukebox;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftLectern;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftShulkerBox;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftSign;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftSkull;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftSmoker;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftStructureBlock;
-import org.bukkit.craftbukkit.v1_16_R1.block.data.CraftBlockData;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftBanner;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftBarrel;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftBeacon;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftBeehive;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftBell;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftBlastFurnace;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftBlock;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftBlockEntityState;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftBlockState;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftBrewingStand;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftCampfire;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftChest;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftCommandBlock;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftComparator;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftCreatureSpawner;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftDaylightDetector;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftDispenser;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftDropper;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftEnchantingTable;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftEndGateway;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftEnderChest;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftFurnaceFurnace;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftHopper;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftJigsaw;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftJukebox;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftLectern;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftShulkerBox;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftSign;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftSkull;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftSmoker;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftStructureBlock;
+import org.bukkit.craftbukkit.v1_16_R2.block.data.CraftBlockData;
-import net.minecraft.server.v1_16_R1.BlockPosition;
-import net.minecraft.server.v1_16_R1.BlockPosition.MutableBlockPosition;
-import net.minecraft.server.v1_16_R1.IBlockData;
-import net.minecraft.server.v1_16_R1.IChunkAccess;
-import net.minecraft.server.v1_16_R1.NBTTagCompound;
-import net.minecraft.server.v1_16_R1.RegionLimitedWorldAccess;
-import net.minecraft.server.v1_16_R1.TileEntity;
-import net.minecraft.server.v1_16_R1.TileEntityBanner;
-import net.minecraft.server.v1_16_R1.TileEntityBarrel;
-import net.minecraft.server.v1_16_R1.TileEntityBeacon;
-import net.minecraft.server.v1_16_R1.TileEntityBeehive;
-import net.minecraft.server.v1_16_R1.TileEntityBell;
-import net.minecraft.server.v1_16_R1.TileEntityBlastFurnace;
-import net.minecraft.server.v1_16_R1.TileEntityBrewingStand;
-import net.minecraft.server.v1_16_R1.TileEntityCampfire;
-import net.minecraft.server.v1_16_R1.TileEntityChest;
-import net.minecraft.server.v1_16_R1.TileEntityCommand;
-import net.minecraft.server.v1_16_R1.TileEntityComparator;
-import net.minecraft.server.v1_16_R1.TileEntityDispenser;
-import net.minecraft.server.v1_16_R1.TileEntityDropper;
-import net.minecraft.server.v1_16_R1.TileEntityEnchantTable;
-import net.minecraft.server.v1_16_R1.TileEntityEndGateway;
-import net.minecraft.server.v1_16_R1.TileEntityEnderChest;
-import net.minecraft.server.v1_16_R1.TileEntityFurnaceFurnace;
-import net.minecraft.server.v1_16_R1.TileEntityHopper;
-import net.minecraft.server.v1_16_R1.TileEntityJigsaw;
-import net.minecraft.server.v1_16_R1.TileEntityJukeBox;
-import net.minecraft.server.v1_16_R1.TileEntityLectern;
-import net.minecraft.server.v1_16_R1.TileEntityLightDetector;
-import net.minecraft.server.v1_16_R1.TileEntityMobSpawner;
-import net.minecraft.server.v1_16_R1.TileEntityShulkerBox;
-import net.minecraft.server.v1_16_R1.TileEntitySign;
-import net.minecraft.server.v1_16_R1.TileEntitySkull;
-import net.minecraft.server.v1_16_R1.TileEntitySmoker;
-import net.minecraft.server.v1_16_R1.TileEntityStructure;
+import net.minecraft.server.v1_16_R2.BlockPosition;
+import net.minecraft.server.v1_16_R2.BlockPosition.MutableBlockPosition;
+import net.minecraft.server.v1_16_R2.IBlockData;
+import net.minecraft.server.v1_16_R2.IChunkAccess;
+import net.minecraft.server.v1_16_R2.NBTTagCompound;
+import net.minecraft.server.v1_16_R2.RegionLimitedWorldAccess;
+import net.minecraft.server.v1_16_R2.RegistryGeneration;
+import net.minecraft.server.v1_16_R2.TileEntity;
+import net.minecraft.server.v1_16_R2.TileEntityBanner;
+import net.minecraft.server.v1_16_R2.TileEntityBarrel;
+import net.minecraft.server.v1_16_R2.TileEntityBeacon;
+import net.minecraft.server.v1_16_R2.TileEntityBeehive;
+import net.minecraft.server.v1_16_R2.TileEntityBell;
+import net.minecraft.server.v1_16_R2.TileEntityBlastFurnace;
+import net.minecraft.server.v1_16_R2.TileEntityBrewingStand;
+import net.minecraft.server.v1_16_R2.TileEntityCampfire;
+import net.minecraft.server.v1_16_R2.TileEntityChest;
+import net.minecraft.server.v1_16_R2.TileEntityCommand;
+import net.minecraft.server.v1_16_R2.TileEntityComparator;
+import net.minecraft.server.v1_16_R2.TileEntityDispenser;
+import net.minecraft.server.v1_16_R2.TileEntityDropper;
+import net.minecraft.server.v1_16_R2.TileEntityEnchantTable;
+import net.minecraft.server.v1_16_R2.TileEntityEndGateway;
+import net.minecraft.server.v1_16_R2.TileEntityEnderChest;
+import net.minecraft.server.v1_16_R2.TileEntityFurnaceFurnace;
+import net.minecraft.server.v1_16_R2.TileEntityHopper;
+import net.minecraft.server.v1_16_R2.TileEntityJigsaw;
+import net.minecraft.server.v1_16_R2.TileEntityJukeBox;
+import net.minecraft.server.v1_16_R2.TileEntityLectern;
+import net.minecraft.server.v1_16_R2.TileEntityLightDetector;
+import net.minecraft.server.v1_16_R2.TileEntityMobSpawner;
+import net.minecraft.server.v1_16_R2.TileEntityShulkerBox;
+import net.minecraft.server.v1_16_R2.TileEntitySign;
+import net.minecraft.server.v1_16_R2.TileEntitySkull;
+import net.minecraft.server.v1_16_R2.TileEntitySmoker;
+import net.minecraft.server.v1_16_R2.TileEntityStructure;
import nl.rutgerkok.worldgeneratorapi.decoration.DecorationArea;
class DecorationAreaImpl implements DecorationArea {
@@ -93,7 +94,7 @@ class DecorationAreaImpl implements DecorationArea {
@Override
public Biome getBiome(int x, int z) {
reusableBlockPos.c(x, 0, z);
- return CraftBlock.biomeBaseToBiome(internal.getBiome(reusableBlockPos));
+ return CraftBlock.biomeBaseToBiome(RegistryGeneration.WORLDGEN_BIOME, internal.getBiome(reusableBlockPos));
}
@Override
diff --git a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/InjectedBiomeGenerator.java b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/InjectedBiomeGenerator.java
index 5c38fd0..bf8d7f8 100644
--- a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/InjectedBiomeGenerator.java
+++ b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/InjectedBiomeGenerator.java
@@ -7,14 +7,14 @@ import java.util.List;
import java.util.Set;
import org.bukkit.block.Biome;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftBlock;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftBlock;
import com.mojang.serialization.Codec;
-import net.minecraft.server.v1_16_R1.BiomeBase;
-import net.minecraft.server.v1_16_R1.Biomes;
-import net.minecraft.server.v1_16_R1.IRegistry;
-import net.minecraft.server.v1_16_R1.WorldChunkManager;
+import net.minecraft.server.v1_16_R2.BiomeBase;
+import net.minecraft.server.v1_16_R2.Biomes;
+import net.minecraft.server.v1_16_R2.RegistryGeneration;
+import net.minecraft.server.v1_16_R2.WorldChunkManager;
import nl.rutgerkok.worldgeneratorapi.BiomeGenerator;
import nl.rutgerkok.worldgeneratorapi.WorldGeneratorApi;
@@ -26,17 +26,19 @@ public class InjectedBiomeGenerator extends WorldChunkManager {
* generators.) Instead, we serialize as if we are a biome generator that
* generates only oceans.
*/
- private static final Codec DUMMY_CODEC = IRegistry.BIOME.fieldOf(
+ private static final Codec DUMMY_CODEC = RegistryGeneration.WORLDGEN_BIOME.fieldOf(
"[" + WorldGeneratorApi.class.getSimpleName()
+ "] Custom biome generators cannot be stored in the level.dat, please ignore this error")
.xmap(biome -> new InjectedBiomeGenerator(), biomeGenToSerialize -> {
// Serializes as a single-biome generator
- return Biomes.OCEAN;
+ return RegistryGeneration.WORLDGEN_BIOME.a(Biomes.OCEAN);
})
.stable().codec();
private static List toBiomeBase(Set biomes) {
- return biomes.stream().map(CraftBlock::biomeToBiomeBase).collect(toList());
+ return biomes.stream()
+ .map(biome -> CraftBlock.biomeToBiomeBase(RegistryGeneration.WORLDGEN_BIOME, biome))
+ .collect(toList());
}
/**
@@ -63,7 +65,7 @@ public class InjectedBiomeGenerator extends WorldChunkManager {
* generator.
*/
private InjectedBiomeGenerator() {
- super(Arrays.asList(Biomes.OCEAN));
+ super(Arrays.asList(RegistryGeneration.WORLDGEN_BIOME.a(Biomes.OCEAN)));
this.biomeGenerator = (x, y, z) -> Biome.OCEAN;
}
@@ -84,6 +86,7 @@ public class InjectedBiomeGenerator extends WorldChunkManager {
@Override
public BiomeBase getBiome(int x, int y, int z) {
- return CraftBlock.biomeToBiomeBase(biomeGenerator.getZoomedOutBiome(x, y, z));
+ return CraftBlock.biomeToBiomeBase(RegistryGeneration.WORLDGEN_BIOME,
+ biomeGenerator.getZoomedOutBiome(x, y, z));
}
}
diff --git a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/PropertyRegistryImpl.java b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/PropertyRegistryImpl.java
index ac8c1b4..3fd20d0 100644
--- a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/PropertyRegistryImpl.java
+++ b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/PropertyRegistryImpl.java
@@ -13,10 +13,11 @@ import org.bukkit.Bukkit;
import org.bukkit.NamespacedKey;
import org.bukkit.World;
import org.bukkit.block.Biome;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftBlock;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftBlock;
-import net.minecraft.server.v1_16_R1.BiomeBase;
-import net.minecraft.server.v1_16_R1.Biomes;
+import net.minecraft.server.v1_16_R2.BiomeBase;
+import net.minecraft.server.v1_16_R2.Biomes;
+import net.minecraft.server.v1_16_R2.RegistryGeneration;
import nl.rutgerkok.worldgeneratorapi.WorldGeneratorApi;
import nl.rutgerkok.worldgeneratorapi.WorldRef;
import nl.rutgerkok.worldgeneratorapi.property.AbstractProperty;
@@ -56,20 +57,21 @@ public final class PropertyRegistryImpl implements PropertyRegistry {
private final Map properties = new ConcurrentHashMap<>();
public PropertyRegistryImpl() {
- addMinecraftBiomeFloatProperty(TEMPERATURE, BiomeBase::getTemperature);
+ addMinecraftBiomeFloatProperty(TEMPERATURE, BiomeBase::k);
addMinecraftBiomeFloatProperty(WETNESS, BiomeBase::getHumidity);
- addMinecraftBiomeFloatProperty(BASE_HEIGHT, BiomeBase::k);
- addMinecraftBiomeFloatProperty(HEIGHT_VARIATION, BiomeBase::o);
+ addMinecraftBiomeFloatProperty(BASE_HEIGHT, BiomeBase::h);
+ addMinecraftBiomeFloatProperty(HEIGHT_VARIATION, BiomeBase::j);
addMinecraftWorldProperty(WORLD_SEED, world -> (Long) world.getSeed(), -1L);
addSeaLevelProperty(SEA_LEVEL, world -> (float) world.getSeaLevel());
}
private void addMinecraftBiomeFloatProperty(NamespacedKey name, Function value) {
- FloatProperty property = new FloatProperty(name, value.apply(Biomes.b)) {
+ FloatProperty property = new FloatProperty(name,
+ value.apply(RegistryGeneration.WORLDGEN_BIOME.a(Biomes.PLAINS))) {
@Override
public float getBiomeDefault(Biome biome) {
- BiomeBase base = CraftBlock.biomeToBiomeBase(biome);
+ BiomeBase base = CraftBlock.biomeToBiomeBase(RegistryGeneration.WORLDGEN_BIOME, biome);
return value.apply(base);
}
diff --git a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/WorldDecoratorImpl.java b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/WorldDecoratorImpl.java
index 6ea8d6a..15355b9 100644
--- a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/WorldDecoratorImpl.java
+++ b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/WorldDecoratorImpl.java
@@ -10,22 +10,23 @@ import java.util.Objects;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.CopyOnWriteArrayList;
+import java.util.function.Supplier;
-import net.minecraft.server.v1_16_R1.BiomeBase;
-import net.minecraft.server.v1_16_R1.BiomeManager;
-import net.minecraft.server.v1_16_R1.BlockPosition;
-import net.minecraft.server.v1_16_R1.ChunkCoordIntPair;
-import net.minecraft.server.v1_16_R1.ChunkGenerator;
-import net.minecraft.server.v1_16_R1.CrashReport;
-import net.minecraft.server.v1_16_R1.IChunkAccess;
-import net.minecraft.server.v1_16_R1.IRegistry;
-import net.minecraft.server.v1_16_R1.ProtoChunk;
-import net.minecraft.server.v1_16_R1.RegionLimitedWorldAccess;
-import net.minecraft.server.v1_16_R1.ReportedException;
-import net.minecraft.server.v1_16_R1.SeededRandom;
-import net.minecraft.server.v1_16_R1.StructureManager;
-import net.minecraft.server.v1_16_R1.WorldGenCarverWrapper;
-import net.minecraft.server.v1_16_R1.WorldGenStage;
+import net.minecraft.server.v1_16_R2.BiomeBase;
+import net.minecraft.server.v1_16_R2.BiomeManager;
+import net.minecraft.server.v1_16_R2.BiomeSettingsGeneration;
+import net.minecraft.server.v1_16_R2.BlockPosition;
+import net.minecraft.server.v1_16_R2.ChunkCoordIntPair;
+import net.minecraft.server.v1_16_R2.ChunkGenerator;
+import net.minecraft.server.v1_16_R2.CrashReport;
+import net.minecraft.server.v1_16_R2.IChunkAccess;
+import net.minecraft.server.v1_16_R2.ProtoChunk;
+import net.minecraft.server.v1_16_R2.RegionLimitedWorldAccess;
+import net.minecraft.server.v1_16_R2.ReportedException;
+import net.minecraft.server.v1_16_R2.SeededRandom;
+import net.minecraft.server.v1_16_R2.StructureManager;
+import net.minecraft.server.v1_16_R2.WorldGenCarverWrapper;
+import net.minecraft.server.v1_16_R2.WorldGenStage;
import nl.rutgerkok.worldgeneratorapi.BaseChunkGenerator;
import nl.rutgerkok.worldgeneratorapi.BaseChunkGenerator.GeneratingChunk;
import nl.rutgerkok.worldgeneratorapi.decoration.BaseDecorationType;
@@ -62,7 +63,6 @@ public final class WorldDecoratorImpl implements WorldDecorator {
return biomeManager.a(blockPosition);
}
-
@Override
public List getCustomBaseDecorations(BaseDecorationType type) {
Objects.requireNonNull(type, "type");
@@ -109,25 +109,25 @@ public final class WorldDecoratorImpl implements WorldDecorator {
ChunkCoordIntPair chunkcoordintpair = ichunkaccess.getPos();
int i = chunkcoordintpair.x;
int j = chunkcoordintpair.z;
- BiomeBase biomeBase = this.getBiome(biomeManager, chunkcoordintpair.l());
+ BiomeSettingsGeneration biomeConfig = this.getBiome(biomeManager, chunkcoordintpair.l()).e();
BitSet bitset = ((ProtoChunk) ichunkaccess).b(stage);
- for(int k = i - 8; k <= i + 8; ++k) {
- for(int l = j - 8; l <= j + 8; ++l) {
- List> list = biomeBase.a(stage);
- ListIterator> listiterator = list.listIterator();
+ for (int k = i - 8; k <= i + 8; ++k) {
+ for (int l = j - 8; l <= j + 8; ++l) {
+ List>> list = biomeConfig.a(stage);
+ ListIterator>> listiterator = list.listIterator();
- while(listiterator.hasNext()) {
- int i1 = listiterator.nextIndex();
- WorldGenCarverWrapper> worldgencarverwrapper = listiterator.next();
+ while (listiterator.hasNext()) {
+ int i1 = listiterator.nextIndex();
+ WorldGenCarverWrapper> worldgencarverwrapper = listiterator.next().get();
seededrandom.c(seed + i1, k, l);
- if (worldgencarverwrapper.a(seededrandom, k, l)) {
- worldgencarverwrapper.a(ichunkaccess, (blockposition) -> {
+ if (worldgencarverwrapper.a(seededrandom, k, l)) {
+ worldgencarverwrapper.a(ichunkaccess, (blockposition) -> {
return this.getBiome(biomeManager, blockposition);
}, seededrandom, seaLevel, k, l, i, j, bitset);
- }
- }
+ }
+ }
}
}
}
@@ -171,12 +171,12 @@ public final class WorldDecoratorImpl implements WorldDecorator {
// Spawn default decorations
if (!this.disabledDecorations.contains(type)) {
try {
- biomebase.a(decorationStage, structureManager, chunkGenerator, populationArea, chunkSeed,
- seededrandom, blockposition);
+ biomebase.a(structureManager, chunkGenerator, populationArea, chunkSeed, seededrandom,
+ blockposition);
} catch (Exception var18) {
CrashReport crashreport = CrashReport.a(var18, "Biome decoration");
- crashreport.a("Generation").a("CenterX", i).a("CenterZ", j).a("Step", decorationStage)
- .a("Seed", chunkSeed).a("Biome", IRegistry.BIOME.getKey(biomebase));
+ crashreport.a("Generation").a("CenterX", i).a("CenterZ", j).a("Seed", chunkSeed).a("Biome",
+ biomebase);
throw new ReportedException(crashreport);
}
}
diff --git a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/WorldGeneratorApiImpl.java b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/WorldGeneratorApiImpl.java
index 632f772..a04fdef 100644
--- a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/WorldGeneratorApiImpl.java
+++ b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/WorldGeneratorApiImpl.java
@@ -10,7 +10,7 @@ import org.bukkit.Server;
import org.bukkit.World;
import org.bukkit.command.PluginCommand;
import org.bukkit.command.TabExecutor;
-import org.bukkit.craftbukkit.v1_16_R1.CraftServer;
+import org.bukkit.craftbukkit.v1_16_R2.CraftServer;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.world.WorldUnloadEvent;
diff --git a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/WorldGeneratorImpl.java b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/WorldGeneratorImpl.java
index f98533d..af9e13e 100644
--- a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/WorldGeneratorImpl.java
+++ b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/WorldGeneratorImpl.java
@@ -7,16 +7,14 @@ import java.util.Objects;
import javax.annotation.Nullable;
import org.bukkit.World;
-import org.bukkit.craftbukkit.v1_16_R1.CraftWorld;
-import org.bukkit.craftbukkit.v1_16_R1.generator.CustomChunkGenerator;
+import org.bukkit.craftbukkit.v1_16_R2.CraftWorld;
+import org.bukkit.craftbukkit.v1_16_R2.generator.CustomChunkGenerator;
-import net.minecraft.server.v1_16_R1.ChunkGenerator;
-import net.minecraft.server.v1_16_R1.ChunkGeneratorAbstract;
-import net.minecraft.server.v1_16_R1.ChunkProviderServer;
-import net.minecraft.server.v1_16_R1.GeneratorSettingBase;
-import net.minecraft.server.v1_16_R1.GeneratorSettings;
-import net.minecraft.server.v1_16_R1.WorldChunkManager;
-import net.minecraft.server.v1_16_R1.WorldServer;
+import net.minecraft.server.v1_16_R2.ChunkGenerator;
+import net.minecraft.server.v1_16_R2.ChunkProviderServer;
+import net.minecraft.server.v1_16_R2.GeneratorSettingBase;
+import net.minecraft.server.v1_16_R2.WorldChunkManager;
+import net.minecraft.server.v1_16_R2.WorldServer;
import nl.rutgerkok.worldgeneratorapi.BaseChunkGenerator;
import nl.rutgerkok.worldgeneratorapi.BaseNoiseGenerator;
import nl.rutgerkok.worldgeneratorapi.BaseTerrainGenerator;
@@ -29,6 +27,10 @@ import nl.rutgerkok.worldgeneratorapi.internal.bukkitoverrides.NoiseToTerrainGen
final class WorldGeneratorImpl implements WorldGenerator {
+ private static GeneratorSettingBase createDefaultSettings() {
+ return GeneratorSettingBase.i();
+ }
+
private static GeneratorSettingBase extractSettings(ChunkGenerator chunkGenerator, long seed) {
try {
// First, unwrap Bukkit generator if necessary
@@ -38,16 +40,11 @@ final class WorldGeneratorImpl implements WorldGenerator {
}
// Then, extract the settings
- return (GeneratorSettingBase) ReflectionUtil.getFieldOfType(chunkGenerator, GeneratorSettingBase.class).get(chunkGenerator);
+ return (GeneratorSettingBase) ReflectionUtil.getFieldOfType(chunkGenerator, GeneratorSettingBase.class)
+ .get(chunkGenerator);
} catch (IllegalAccessException | IllegalArgumentException | NoSuchElementException e) {
// Get default settings
- ChunkGeneratorAbstract standardGenerator = GeneratorSettings.a(seed);
- try {
- return (GeneratorSettingBase) ReflectionUtil
- .getFieldOfType(standardGenerator, GeneratorSettingBase.class).get(chunkGenerator);
- } catch (IllegalAccessException e1) {
- throw new RuntimeException("Failed to extract settings", e1);
- }
+ return createDefaultSettings();
}
}
diff --git a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/BiomeGridImpl.java b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/BiomeGridImpl.java
index c928556..165f65c 100644
--- a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/BiomeGridImpl.java
+++ b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/BiomeGridImpl.java
@@ -3,10 +3,11 @@ package nl.rutgerkok.worldgeneratorapi.internal.bukkitoverrides;
import java.util.Objects;
import org.bukkit.block.Biome;
-import org.bukkit.craftbukkit.v1_16_R1.block.CraftBlock;
+import org.bukkit.craftbukkit.v1_16_R2.block.CraftBlock;
import org.bukkit.generator.ChunkGenerator.BiomeGrid;
-import net.minecraft.server.v1_16_R1.BiomeStorage;
+import net.minecraft.server.v1_16_R2.BiomeStorage;
+import net.minecraft.server.v1_16_R2.RegistryGeneration;
public final class BiomeGridImpl implements BiomeGrid {
private final BiomeStorage biomeStorage;
@@ -17,17 +18,19 @@ public final class BiomeGridImpl implements BiomeGrid {
@Override
public Biome getBiome(final int x, final int z) {
- return CraftBlock.biomeBaseToBiome(this.biomeStorage.getBiome(x >> 2, 0, z >> 2));
+ return CraftBlock.biomeBaseToBiome(RegistryGeneration.WORLDGEN_BIOME,
+ this.biomeStorage.getBiome(x >> 2, 0, z >> 2));
}
@Override
public Biome getBiome(int x, int y, int z) {
- return CraftBlock.biomeBaseToBiome(this.biomeStorage.getBiome(x >> 2, y >> 2, z >> 2));
+ return CraftBlock.biomeBaseToBiome(RegistryGeneration.WORLDGEN_BIOME,
+ this.biomeStorage.getBiome(x >> 2, y >> 2, z >> 2));
}
/**
* Gets the internal biome storage.
- *
+ *
* @return The biome storage.
*/
public BiomeStorage getHandle() {
@@ -36,11 +39,13 @@ public final class BiomeGridImpl implements BiomeGrid {
@Override
public void setBiome(int x, int z, Biome biome) {
- this.biomeStorage.setBiome(x >> 2, 0, z >> 2, CraftBlock.biomeToBiomeBase(biome));
+ this.biomeStorage.setBiome(x >> 2, 0, z >> 2,
+ CraftBlock.biomeToBiomeBase(RegistryGeneration.WORLDGEN_BIOME, biome));
}
@Override
public void setBiome(int x, int y, int z, Biome biome) {
- this.biomeStorage.setBiome(x >> 2, y >> 2, z >> 2, CraftBlock.biomeToBiomeBase(biome));
+ this.biomeStorage.setBiome(x >> 2, y >> 2, z >> 2,
+ CraftBlock.biomeToBiomeBase(RegistryGeneration.WORLDGEN_BIOME, biome));
}
}
\ No newline at end of file
diff --git a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/ChunkDataImpl.java b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/ChunkDataImpl.java
index 85ae79f..4531a27 100644
--- a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/ChunkDataImpl.java
+++ b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/ChunkDataImpl.java
@@ -2,12 +2,12 @@ package nl.rutgerkok.worldgeneratorapi.internal.bukkitoverrides;
import org.bukkit.Material;
import org.bukkit.block.data.BlockData;
-import org.bukkit.craftbukkit.v1_16_R1.block.data.CraftBlockData;
+import org.bukkit.craftbukkit.v1_16_R2.block.data.CraftBlockData;
import org.bukkit.generator.ChunkGenerator.ChunkData;
-import net.minecraft.server.v1_16_R1.BlockPosition.MutableBlockPosition;
-import net.minecraft.server.v1_16_R1.IBlockData;
-import net.minecraft.server.v1_16_R1.IChunkAccess;
+import net.minecraft.server.v1_16_R2.BlockPosition.MutableBlockPosition;
+import net.minecraft.server.v1_16_R2.IBlockData;
+import net.minecraft.server.v1_16_R2.IChunkAccess;
public final class ChunkDataImpl implements ChunkData {
private final IChunkAccess internal;
diff --git a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/InjectedChunkGenerator.java b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/InjectedChunkGenerator.java
index 9dac3c3..f4f4f29 100644
--- a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/InjectedChunkGenerator.java
+++ b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/InjectedChunkGenerator.java
@@ -13,35 +13,35 @@ import org.bukkit.generator.ChunkGenerator.ChunkData;
import com.mojang.serialization.Codec;
-import net.minecraft.server.v1_16_R1.BiomeBase;
-import net.minecraft.server.v1_16_R1.BiomeBase.BiomeMeta;
-import net.minecraft.server.v1_16_R1.BiomeManager;
-import net.minecraft.server.v1_16_R1.BlockColumn;
-import net.minecraft.server.v1_16_R1.BlockPosition;
-import net.minecraft.server.v1_16_R1.BlockPosition.MutableBlockPosition;
-import net.minecraft.server.v1_16_R1.Blocks;
-import net.minecraft.server.v1_16_R1.ChunkCoordIntPair;
-import net.minecraft.server.v1_16_R1.ChunkGenerator;
-import net.minecraft.server.v1_16_R1.ChunkGeneratorAbstract;
-import net.minecraft.server.v1_16_R1.EnumCreatureType;
-import net.minecraft.server.v1_16_R1.GeneratorAccess;
-import net.minecraft.server.v1_16_R1.GeneratorSettingBase;
-import net.minecraft.server.v1_16_R1.HeightMap;
-import net.minecraft.server.v1_16_R1.HeightMap.Type;
-import net.minecraft.server.v1_16_R1.IBlockAccess;
-import net.minecraft.server.v1_16_R1.IBlockData;
-import net.minecraft.server.v1_16_R1.IChunkAccess;
-import net.minecraft.server.v1_16_R1.NoiseGenerator;
-import net.minecraft.server.v1_16_R1.NoiseGenerator3;
-import net.minecraft.server.v1_16_R1.NoiseGeneratorOctaves;
-import net.minecraft.server.v1_16_R1.NoiseSettings;
-import net.minecraft.server.v1_16_R1.RegionLimitedWorldAccess;
-import net.minecraft.server.v1_16_R1.SeededRandom;
-import net.minecraft.server.v1_16_R1.SpawnerCreature;
-import net.minecraft.server.v1_16_R1.StructureGenerator;
-import net.minecraft.server.v1_16_R1.StructureManager;
-import net.minecraft.server.v1_16_R1.WorldChunkManager;
-import net.minecraft.server.v1_16_R1.WorldGenStage.Features;
+import net.minecraft.server.v1_16_R2.BiomeBase;
+import net.minecraft.server.v1_16_R2.BiomeManager;
+import net.minecraft.server.v1_16_R2.BiomeSettingsMobs;
+import net.minecraft.server.v1_16_R2.BlockColumn;
+import net.minecraft.server.v1_16_R2.BlockPosition;
+import net.minecraft.server.v1_16_R2.BlockPosition.MutableBlockPosition;
+import net.minecraft.server.v1_16_R2.Blocks;
+import net.minecraft.server.v1_16_R2.ChunkCoordIntPair;
+import net.minecraft.server.v1_16_R2.ChunkGenerator;
+import net.minecraft.server.v1_16_R2.ChunkGeneratorAbstract;
+import net.minecraft.server.v1_16_R2.EnumCreatureType;
+import net.minecraft.server.v1_16_R2.GeneratorAccess;
+import net.minecraft.server.v1_16_R2.GeneratorSettingBase;
+import net.minecraft.server.v1_16_R2.HeightMap;
+import net.minecraft.server.v1_16_R2.HeightMap.Type;
+import net.minecraft.server.v1_16_R2.IBlockAccess;
+import net.minecraft.server.v1_16_R2.IBlockData;
+import net.minecraft.server.v1_16_R2.IChunkAccess;
+import net.minecraft.server.v1_16_R2.NoiseGenerator;
+import net.minecraft.server.v1_16_R2.NoiseGenerator3;
+import net.minecraft.server.v1_16_R2.NoiseGeneratorOctaves;
+import net.minecraft.server.v1_16_R2.NoiseSettings;
+import net.minecraft.server.v1_16_R2.RegionLimitedWorldAccess;
+import net.minecraft.server.v1_16_R2.SeededRandom;
+import net.minecraft.server.v1_16_R2.SpawnerCreature;
+import net.minecraft.server.v1_16_R2.StructureGenerator;
+import net.minecraft.server.v1_16_R2.StructureManager;
+import net.minecraft.server.v1_16_R2.WorldChunkManager;
+import net.minecraft.server.v1_16_R2.WorldGenStage.Features;
import nl.rutgerkok.worldgeneratorapi.BaseChunkGenerator.GeneratingChunk;
import nl.rutgerkok.worldgeneratorapi.BaseTerrainGenerator;
import nl.rutgerkok.worldgeneratorapi.BaseTerrainGenerator.HeightType;
@@ -346,7 +346,7 @@ public final class InjectedChunkGenerator extends ChunkGenerator {
}
@Override
- public List getMobsFor(BiomeBase biomebase, StructureManager structuremanager,
+ public List getMobsFor(BiomeBase biomebase, StructureManager structuremanager,
EnumCreatureType enumcreaturetype, BlockPosition blockposition) {
if (structuremanager.a(blockposition, true, StructureGenerator.SWAMP_HUT).e()) {
if (enumcreaturetype == EnumCreatureType.MONSTER) {
diff --git a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/NoiseToTerrainGenerator.java b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/NoiseToTerrainGenerator.java
index 4849f93..c6beffb 100644
--- a/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/NoiseToTerrainGenerator.java
+++ b/worldgeneratorapi-impl/src/main/java/nl/rutgerkok/worldgeneratorapi/internal/bukkitoverrides/NoiseToTerrainGenerator.java
@@ -9,39 +9,36 @@ import java.util.function.Predicate;
import javax.annotation.Nullable;
-import org.bukkit.craftbukkit.v1_16_R1.block.data.CraftBlockData;
+import org.bukkit.craftbukkit.v1_16_R2.block.data.CraftBlockData;
-import net.minecraft.server.v1_16_R1.BlockColumn;
-import net.minecraft.server.v1_16_R1.BlockPosition.MutableBlockPosition;
-import net.minecraft.server.v1_16_R1.Blocks;
-import net.minecraft.server.v1_16_R1.ChunkCoordIntPair;
-import net.minecraft.server.v1_16_R1.ChunkGeneratorAbstract;
-import net.minecraft.server.v1_16_R1.ChunkSection;
-import net.minecraft.server.v1_16_R1.GeneratorAccess;
-import net.minecraft.server.v1_16_R1.GeneratorSettingBase;
-import net.minecraft.server.v1_16_R1.GeneratorSettings;
-import net.minecraft.server.v1_16_R1.HeightMap;
-import net.minecraft.server.v1_16_R1.HeightMap.Type;
-import net.minecraft.server.v1_16_R1.IBlockAccess;
-import net.minecraft.server.v1_16_R1.IBlockData;
-import net.minecraft.server.v1_16_R1.IChunkAccess;
-import net.minecraft.server.v1_16_R1.MathHelper;
-import net.minecraft.server.v1_16_R1.NoiseSettings;
-import net.minecraft.server.v1_16_R1.ProtoChunk;
-import net.minecraft.server.v1_16_R1.SectionPosition;
-import net.minecraft.server.v1_16_R1.StructureBoundingBox;
-import net.minecraft.server.v1_16_R1.StructureGenerator;
-import net.minecraft.server.v1_16_R1.StructureManager;
-import net.minecraft.server.v1_16_R1.StructurePiece;
-import net.minecraft.server.v1_16_R1.SystemUtils;
-import net.minecraft.server.v1_16_R1.WorldGenFeatureDefinedStructureJigsawJunction;
-import net.minecraft.server.v1_16_R1.WorldGenFeatureDefinedStructurePoolTemplate.Matching;
-import net.minecraft.server.v1_16_R1.WorldGenFeaturePillagerOutpostPoolPiece;
+import net.minecraft.server.v1_16_R2.BlockColumn;
+import net.minecraft.server.v1_16_R2.BlockPosition.MutableBlockPosition;
+import net.minecraft.server.v1_16_R2.Blocks;
+import net.minecraft.server.v1_16_R2.ChunkCoordIntPair;
+import net.minecraft.server.v1_16_R2.ChunkSection;
+import net.minecraft.server.v1_16_R2.GeneratorAccess;
+import net.minecraft.server.v1_16_R2.GeneratorSettingBase;
+import net.minecraft.server.v1_16_R2.HeightMap;
+import net.minecraft.server.v1_16_R2.HeightMap.Type;
+import net.minecraft.server.v1_16_R2.IBlockAccess;
+import net.minecraft.server.v1_16_R2.IBlockData;
+import net.minecraft.server.v1_16_R2.IChunkAccess;
+import net.minecraft.server.v1_16_R2.MathHelper;
+import net.minecraft.server.v1_16_R2.NoiseSettings;
+import net.minecraft.server.v1_16_R2.ProtoChunk;
+import net.minecraft.server.v1_16_R2.SectionPosition;
+import net.minecraft.server.v1_16_R2.StructureBoundingBox;
+import net.minecraft.server.v1_16_R2.StructureGenerator;
+import net.minecraft.server.v1_16_R2.StructureManager;
+import net.minecraft.server.v1_16_R2.StructurePiece;
+import net.minecraft.server.v1_16_R2.SystemUtils;
+import net.minecraft.server.v1_16_R2.WorldGenFeatureDefinedStructureJigsawJunction;
+import net.minecraft.server.v1_16_R2.WorldGenFeatureDefinedStructurePoolTemplate.Matching;
+import net.minecraft.server.v1_16_R2.WorldGenFeaturePillagerOutpostPoolPiece;
import nl.rutgerkok.worldgeneratorapi.BaseNoiseGenerator;
import nl.rutgerkok.worldgeneratorapi.BaseNoiseGenerator.TerrainSettings;
import nl.rutgerkok.worldgeneratorapi.BaseTerrainGenerator;
import nl.rutgerkok.worldgeneratorapi.BiomeGenerator;
-import nl.rutgerkok.worldgeneratorapi.internal.ReflectionUtil;
import nl.rutgerkok.worldgeneratorapi.internal.bukkitoverrides.InjectedChunkGenerator.GeneratingChunkImpl;
public final class NoiseToTerrainGenerator implements BaseTerrainGenerator {
@@ -82,15 +79,9 @@ public final class NoiseToTerrainGenerator implements BaseTerrainGenerator {
}
private static NoiseSettings defaultNoiseSettings() {
- // I don't know how to properly construct the default settings, so I'm using this for now
- ChunkGeneratorAbstract defaultGenerator = GeneratorSettings.a(0);
- try {
- GeneratorSettingBase settings = (GeneratorSettingBase) ReflectionUtil.getFieldOfType(defaultGenerator, GeneratorSettingBase.class).get(defaultGenerator);
- return settings.b();
- } catch (IllegalAccessException e) {
- throw new RuntimeException("Failed to create default noise settings", e);
- }
+ return GeneratorSettingBase.i().b();
}
+
private final int l;
private final int m;
private final int n;
diff --git a/worldgeneratorapi-impl/src/test/java/nl/rutgerkok/worldgeneratorapi/test/internal/BiomeGeneratorImplTest.java b/worldgeneratorapi-impl/src/test/java/nl/rutgerkok/worldgeneratorapi/test/internal/BiomeGeneratorImplTest.java
index f6444cc..512395c 100644
--- a/worldgeneratorapi-impl/src/test/java/nl/rutgerkok/worldgeneratorapi/test/internal/BiomeGeneratorImplTest.java
+++ b/worldgeneratorapi-impl/src/test/java/nl/rutgerkok/worldgeneratorapi/test/internal/BiomeGeneratorImplTest.java
@@ -7,8 +7,9 @@ import org.bukkit.block.Biome;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
-import net.minecraft.server.v1_16_R1.WorldChunkManager;
-import net.minecraft.server.v1_16_R1.WorldChunkManagerOverworld;
+import net.minecraft.server.v1_16_R2.RegistryGeneration;
+import net.minecraft.server.v1_16_R2.WorldChunkManager;
+import net.minecraft.server.v1_16_R2.WorldChunkManagerOverworld;
import nl.rutgerkok.worldgeneratorapi.BiomeGenerator;
import nl.rutgerkok.worldgeneratorapi.internal.BiomeGeneratorImpl;
import nl.rutgerkok.worldgeneratorapi.internal.InjectedBiomeGenerator;
@@ -23,7 +24,8 @@ public class BiomeGeneratorImplTest {
@Test
public void isGetStructureBiomesInSync() {
// Create vanilla biome generator
- WorldChunkManager worldChunkManager = new WorldChunkManagerOverworld(10, false, false);
+ WorldChunkManager worldChunkManager = new WorldChunkManagerOverworld(10, false, false,
+ RegistryGeneration.WORLDGEN_BIOME);
// Check the structures
BiomeGeneratorImpl biomeGenerator = new BiomeGeneratorImpl(worldChunkManager);
diff --git a/worldgeneratorapi-impl/src/test/java/nl/rutgerkok/worldgeneratorapi/test/internal/TestFactory.java b/worldgeneratorapi-impl/src/test/java/nl/rutgerkok/worldgeneratorapi/test/internal/TestFactory.java
index ff5e659..ec9250d 100644
--- a/worldgeneratorapi-impl/src/test/java/nl/rutgerkok/worldgeneratorapi/test/internal/TestFactory.java
+++ b/worldgeneratorapi-impl/src/test/java/nl/rutgerkok/worldgeneratorapi/test/internal/TestFactory.java
@@ -8,7 +8,7 @@ import org.bukkit.World;
import org.bukkit.plugin.Plugin;
import org.mockito.Mockito;
-import net.minecraft.server.v1_16_R1.DispenserRegistry;
+import net.minecraft.server.v1_16_R2.DispenserRegistry;
public class TestFactory {
diff --git a/worldgeneratorapi/pom.xml b/worldgeneratorapi/pom.xml
index 26cb011..415cf57 100644
--- a/worldgeneratorapi/pom.xml
+++ b/worldgeneratorapi/pom.xml
@@ -65,7 +65,7 @@
org.spigotmc
spigot-api
- 1.16.1-R0.1-SNAPSHOT
+ 1.16.2-R0.1-SNAPSHOT
provided