diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/TerraFabricPlugin.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/TerraFabricPlugin.java index 9cfb726eb..5e553a4a7 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/TerraFabricPlugin.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/TerraFabricPlugin.java @@ -58,7 +58,6 @@ import net.minecraft.util.registry.BuiltinRegistries; import net.minecraft.util.registry.Registry; import net.minecraft.util.registry.RegistryKey; import net.minecraft.world.WorldAccess; -import net.minecraft.world.biome.Biome; import net.minecraft.world.dimension.DimensionType; import net.minecraft.world.gen.decorator.Decorator; import net.minecraft.world.gen.decorator.NopeDecoratorConfig; diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/FabricChunkGeneratorWrapper.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/FabricChunkGeneratorWrapper.java index 044c2c5c1..cae1e2f90 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/FabricChunkGeneratorWrapper.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/FabricChunkGeneratorWrapper.java @@ -50,24 +50,30 @@ import java.util.concurrent.ExecutionException; import java.util.concurrent.Executor; public class FabricChunkGeneratorWrapper extends ChunkGenerator implements GeneratorWrapper { + public static final Codec PACK_CODEC = RecordCodecBuilder.create( + config -> config.group( + Codec.STRING.fieldOf("pack") + .forGetter(pack -> pack.getTemplate().getID()) + ).apply(config, config.stable(TerraFabricPlugin.getInstance().getConfigRegistry()::get))); + + public static final Codec CODEC = RecordCodecBuilder.create( + instance -> instance.group( + TerraBiomeSource.CODEC.fieldOf("biome_source") + .forGetter(generator -> generator.biomeSource), + Codec.LONG.fieldOf("seed").stable() + .forGetter(generator -> generator.seed), + PACK_CODEC.fieldOf("pack").stable() + .forGetter(generator -> generator.pack) + ).apply(instance, instance.stable(FabricChunkGeneratorWrapper::new)) + ); + private final long seed; private final DefaultChunkGenerator3D delegate; private final TerraBiomeSource biomeSource; - public static final Codec PACK_CODEC = (RecordCodecBuilder.create(config -> config.group( - Codec.STRING.fieldOf("pack").forGetter(pack -> pack.getTemplate().getID()) - ).apply(config, config.stable(TerraFabricPlugin.getInstance().getConfigRegistry()::get)))); - public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( - TerraBiomeSource.CODEC.fieldOf("biome_source").forGetter(generator -> generator.biomeSource), - Codec.LONG.fieldOf("seed").stable().forGetter(generator -> generator.seed), - PACK_CODEC.fieldOf("pack").stable().forGetter(generator -> generator.pack)) - .apply(instance, instance.stable(FabricChunkGeneratorWrapper::new))); + private final ConfigPack pack; private DimensionType dimensionType; - public ConfigPack getPack() { - return pack; - } - public FabricChunkGeneratorWrapper(TerraBiomeSource biomeSource, long seed, ConfigPack configPack) { super(biomeSource, new StructuresConfig(false)); this.pack = configPack; @@ -90,9 +96,13 @@ public class FabricChunkGeneratorWrapper extends ChunkGenerator implements Gener return new FabricChunkGeneratorWrapper((TerraBiomeSource) this.biomeSource.withSeed(seed), seed, pack); } + public ConfigPack getPack() { + return pack; + } + @Override public void buildSurface(ChunkRegion region, Chunk chunk) { - + // No-op } public void setDimensionType(DimensionType dimensionType) { @@ -124,13 +134,16 @@ public class FabricChunkGeneratorWrapper extends ChunkGenerator implements Gener @Override public void carve(long seed, BiomeAccess access, Chunk chunk, GenerationStep.Carver carver) { - if(pack.getTemplate().vanillaCaves()) super.carve(seed, access, chunk, carver); + if(pack.getTemplate().vanillaCaves()) { + super.carve(seed, access, chunk, carver); + } } @Override public void setStructureStarts(DynamicRegistryManager dynamicRegistryManager, StructureAccessor structureAccessor, Chunk chunk, StructureManager structureManager, long worldSeed) { - if(pack.getTemplate().vanillaStructures()) + if(pack.getTemplate().vanillaStructures()) { super.setStructureStarts(dynamicRegistryManager, structureAccessor, chunk, structureManager, worldSeed); + } } @Override @@ -149,7 +162,9 @@ public class FabricChunkGeneratorWrapper extends ChunkGenerator implements Gener @Override public boolean isStrongholdStartingChunk(ChunkPos chunkPos) { - if(pack.getTemplate().vanillaStructures()) return super.isStrongholdStartingChunk(chunkPos); + if(pack.getTemplate().vanillaStructures()) { + return super.isStrongholdStartingChunk(chunkPos); + } return false; }