caves on fabric actually work now

This commit is contained in:
dfsek 2021-02-22 21:02:59 -07:00
parent 268cc7c48b
commit ac09e059fc
2 changed files with 7 additions and 0 deletions

View File

@ -27,6 +27,7 @@ public class PopulatorFeature extends Feature<DefaultFeatureConfig> {
FabricChunkGeneratorWrapper gen = (FabricChunkGeneratorWrapper) chunkGenerator; FabricChunkGeneratorWrapper gen = (FabricChunkGeneratorWrapper) chunkGenerator;
FabricChunkWorldAccess chunk = new FabricChunkWorldAccess(world, pos.getX() >> 4, pos.getZ() >> 4); FabricChunkWorldAccess chunk = new FabricChunkWorldAccess(world, pos.getX() >> 4, pos.getZ() >> 4);
FabricWorld world1 = new FabricWorld(world.toServerWorld(), new FabricChunkGenerator(chunkGenerator)); FabricWorld world1 = new FabricWorld(world.toServerWorld(), new FabricChunkGenerator(chunkGenerator));
gen.getCavePopulator().populate(new FabricSeededWorldAccess(world, world.getSeed(), chunkGenerator), chunk);
gen.getStructurePopulator().populate(new FabricSeededWorldAccess(world, world.getSeed(), chunkGenerator), chunk); gen.getStructurePopulator().populate(new FabricSeededWorldAccess(world, world.getSeed(), chunkGenerator), chunk);
gen.getOrePopulator().populate(world1, chunk); gen.getOrePopulator().populate(world1, chunk);
gen.getTreePopulator().populate(world1, chunk); gen.getTreePopulator().populate(world1, chunk);

View File

@ -6,6 +6,7 @@ import com.dfsek.terra.fabric.TerraFabricPlugin;
import com.dfsek.terra.fabric.world.TerraBiomeSource; import com.dfsek.terra.fabric.world.TerraBiomeSource;
import com.dfsek.terra.fabric.world.handles.world.FabricSeededWorldAccess; import com.dfsek.terra.fabric.world.handles.world.FabricSeededWorldAccess;
import com.dfsek.terra.world.generation.generators.DefaultChunkGenerator3D; import com.dfsek.terra.world.generation.generators.DefaultChunkGenerator3D;
import com.dfsek.terra.world.population.CavePopulator;
import com.dfsek.terra.world.population.FloraPopulator; import com.dfsek.terra.world.population.FloraPopulator;
import com.dfsek.terra.world.population.OrePopulator; import com.dfsek.terra.world.population.OrePopulator;
import com.dfsek.terra.world.population.StructurePopulator; import com.dfsek.terra.world.population.StructurePopulator;
@ -48,6 +49,7 @@ public class FabricChunkGeneratorWrapper extends ChunkGenerator implements com.d
private final OrePopulator orePopulator = new OrePopulator(TerraFabricPlugin.getInstance()); private final OrePopulator orePopulator = new OrePopulator(TerraFabricPlugin.getInstance());
private final TreePopulator treePopulator = new TreePopulator(TerraFabricPlugin.getInstance()); private final TreePopulator treePopulator = new TreePopulator(TerraFabricPlugin.getInstance());
private final StructurePopulator structurePopulator = new StructurePopulator(TerraFabricPlugin.getInstance()); private final StructurePopulator structurePopulator = new StructurePopulator(TerraFabricPlugin.getInstance());
private final CavePopulator cavePopulator = new CavePopulator(TerraFabricPlugin.getInstance());
public TreePopulator getTreePopulator() { public TreePopulator getTreePopulator() {
return treePopulator; return treePopulator;
@ -65,6 +67,10 @@ public class FabricChunkGeneratorWrapper extends ChunkGenerator implements com.d
return structurePopulator; return structurePopulator;
} }
public CavePopulator getCavePopulator() {
return cavePopulator;
}
public FabricChunkGeneratorWrapper(TerraBiomeSource biomeSource, long seed, ConfigPack configPack) { public FabricChunkGeneratorWrapper(TerraBiomeSource biomeSource, long seed, ConfigPack configPack) {
super(biomeSource, new StructuresConfig(false)); super(biomeSource, new StructuresConfig(false));
this.pack = configPack; this.pack = configPack;