Skip to content

Commit 6dd4e38

Browse files
committed
Got a world preset!
1 parent c64ebf5 commit 6dd4e38

File tree

4 files changed

+410092
-1
lines changed

4 files changed

+410092
-1
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,44 @@
11
package com.cyao;
22

3+
import com.mojang.serialization.MapCodec;
4+
import com.mojang.serialization.codecs.RecordCodecBuilder;
35
import net.minecraft.block.BlockState;
46
import net.minecraft.block.Blocks;
57
import net.minecraft.registry.entry.RegistryEntry;
8+
import net.minecraft.world.ChunkRegion;
9+
import net.minecraft.world.biome.source.BiomeAccess;
610
import net.minecraft.world.biome.source.BiomeSource;
11+
import net.minecraft.world.chunk.Chunk;
12+
import net.minecraft.world.gen.GenerationStep;
13+
import net.minecraft.world.gen.StructureAccessor;
714
import net.minecraft.world.gen.chunk.ChunkGeneratorSettings;
815
import net.minecraft.world.gen.chunk.NoiseChunkGenerator;
16+
import net.minecraft.world.gen.noise.NoiseConfig;
917

1018
public class PaperWorldGenerator extends NoiseChunkGenerator {
19+
public static final MapCodec<PaperWorldGenerator> CODEC = RecordCodecBuilder.mapCodec(
20+
instance -> instance.group(
21+
BiomeSource.CODEC.fieldOf("biome_source").forGetter(generator -> generator.biomeSource),
22+
ChunkGeneratorSettings.REGISTRY_CODEC.fieldOf("settings").forGetter(NoiseChunkGenerator::getSettings)
23+
)
24+
.apply(instance, instance.stable(PaperWorldGenerator::new))
25+
);
1126
private static final BlockState AIR = Blocks.AIR.getDefaultState();
1227

1328
public PaperWorldGenerator(BiomeSource biomeSource, RegistryEntry<ChunkGeneratorSettings> settings) {
1429
super(biomeSource, settings);
15-
System.out.println("Hello Paper Chunk Generator!");
30+
}
31+
32+
@Override
33+
public void carve(
34+
ChunkRegion chunkRegion,
35+
long seed,
36+
NoiseConfig noiseConfig,
37+
BiomeAccess biomeAccess,
38+
StructureAccessor structureAccessor,
39+
Chunk chunk,
40+
GenerationStep.Carver carverStep
41+
) {
42+
FlatMinecraft.LOGGER.info("Carving!");
1643
}
1744
}

src/main/java/com/cyao/mixin/WordPresetMixin.java

+2
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,12 @@ public abstract class WordPresetMixin {
3636

3737
@Inject(method = "bootstrap()V", at = @At("RETURN"), remap = false)
3838
private void addPresets(CallbackInfo ci) {
39+
/*
3940
this.register(PAPER_WORLD, this.createOverworldOptions(
4041
new PaperWorldGenerator(
4142
MultiNoiseBiomeSource.create(this.multiNoisePresetLookup.getOrThrow(MultiNoiseBiomeSourceParameterLists.OVERWORLD)),
4243
this.chunkGeneratorSettingsLookup.getOrThrow(ChunkGeneratorSettings.OVERWORLD))
4344
));
45+
*/
4446
}
4547
}

0 commit comments

Comments
 (0)