Skip to content

Commit

Permalink
Got a world preset!
Browse files Browse the repository at this point in the history
  • Loading branch information
cheyao committed Oct 13, 2024
1 parent c64ebf5 commit 6dd4e38
Show file tree
Hide file tree
Showing 4 changed files with 410,092 additions and 1 deletion.
29 changes: 28 additions & 1 deletion src/main/java/com/cyao/PaperWorldGenerator.java
Original file line number Diff line number Diff line change
@@ -1,17 +1,44 @@
package com.cyao;

import com.mojang.serialization.MapCodec;
import com.mojang.serialization.codecs.RecordCodecBuilder;
import net.minecraft.block.BlockState;
import net.minecraft.block.Blocks;
import net.minecraft.registry.entry.RegistryEntry;
import net.minecraft.world.ChunkRegion;
import net.minecraft.world.biome.source.BiomeAccess;
import net.minecraft.world.biome.source.BiomeSource;
import net.minecraft.world.chunk.Chunk;
import net.minecraft.world.gen.GenerationStep;
import net.minecraft.world.gen.StructureAccessor;
import net.minecraft.world.gen.chunk.ChunkGeneratorSettings;
import net.minecraft.world.gen.chunk.NoiseChunkGenerator;
import net.minecraft.world.gen.noise.NoiseConfig;

public class PaperWorldGenerator extends NoiseChunkGenerator {
public static final MapCodec<PaperWorldGenerator> CODEC = RecordCodecBuilder.mapCodec(
instance -> instance.group(
BiomeSource.CODEC.fieldOf("biome_source").forGetter(generator -> generator.biomeSource),
ChunkGeneratorSettings.REGISTRY_CODEC.fieldOf("settings").forGetter(NoiseChunkGenerator::getSettings)
)
.apply(instance, instance.stable(PaperWorldGenerator::new))
);
private static final BlockState AIR = Blocks.AIR.getDefaultState();

public PaperWorldGenerator(BiomeSource biomeSource, RegistryEntry<ChunkGeneratorSettings> settings) {
super(biomeSource, settings);
System.out.println("Hello Paper Chunk Generator!");
}

@Override
public void carve(
ChunkRegion chunkRegion,
long seed,
NoiseConfig noiseConfig,
BiomeAccess biomeAccess,
StructureAccessor structureAccessor,
Chunk chunk,
GenerationStep.Carver carverStep
) {
FlatMinecraft.LOGGER.info("Carving!");
}
}
2 changes: 2 additions & 0 deletions src/main/java/com/cyao/mixin/WordPresetMixin.java
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,12 @@ public abstract class WordPresetMixin {

@Inject(method = "bootstrap()V", at = @At("RETURN"), remap = false)
private void addPresets(CallbackInfo ci) {
/*
this.register(PAPER_WORLD, this.createOverworldOptions(
new PaperWorldGenerator(
MultiNoiseBiomeSource.create(this.multiNoisePresetLookup.getOrThrow(MultiNoiseBiomeSourceParameterLists.OVERWORLD)),
this.chunkGeneratorSettingsLookup.getOrThrow(ChunkGeneratorSettings.OVERWORLD))
));
*/
}
}
Loading

0 comments on commit 6dd4e38

Please sign in to comment.