22w07a
- disabled "sample_noise"
This commit is contained in:
1 parent
aaea11d82d
commit
fa1e6ce086
8 files changed
+74
-61
No files matched your search
+1
-1
@@ -4,7 +4,7 @@ org.gradle.jvmargs=-Xmx1G
|
|||||||
# Fabric Properties
|
# Fabric Properties
|
||||||
# check these on https://fabricmc.net/use
|
# check these on https://fabricmc.net/use
|
||||||
# or better: https://modmuss50.me/fabric.html
|
# or better: https://modmuss50.me/fabric.html
|
||||||
minecraft_version=22w06a
|
minecraft_version=22w07a
|
||||||
loader_version=0.12.12
|
loader_version=0.12.12
|
||||||
fabric_version=0.46.2+1.18
|
fabric_version=0.46.2+1.18
|
||||||
|
|
||||||
|
|||||||
@@ -7,11 +7,12 @@ import carpet.fakes.StructureFeatureInterface;
|
|||||||
import com.google.common.collect.ImmutableCollection;
|
import com.google.common.collect.ImmutableCollection;
|
||||||
import com.google.common.collect.ImmutableMultimap;
|
import com.google.common.collect.ImmutableMultimap;
|
||||||
import com.mojang.datafixers.util.Pair;
|
import com.mojang.datafixers.util.Pair;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Optional;
|
|
||||||
import java.util.OptionalInt;
|
import java.util.OptionalInt;
|
||||||
|
import java.util.Set;
|
||||||
import java.util.function.Predicate;
|
import java.util.function.Predicate;
|
||||||
import java.util.function.Supplier;
|
import java.util.function.Supplier;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@@ -50,8 +51,8 @@ import net.minecraft.world.level.levelgen.feature.featuresize.TwoLayersFeatureSi
|
|||||||
import net.minecraft.world.level.levelgen.feature.foliageplacers.BlobFoliagePlacer;
|
import net.minecraft.world.level.levelgen.feature.foliageplacers.BlobFoliagePlacer;
|
||||||
import net.minecraft.world.level.levelgen.feature.foliageplacers.FancyFoliagePlacer;
|
import net.minecraft.world.level.levelgen.feature.foliageplacers.FancyFoliagePlacer;
|
||||||
import net.minecraft.world.level.levelgen.feature.stateproviders.BlockStateProvider;
|
import net.minecraft.world.level.levelgen.feature.stateproviders.BlockStateProvider;
|
||||||
import net.minecraft.world.level.levelgen.feature.structures.StructurePoolElement;
|
import net.minecraft.world.level.levelgen.structure.pools.StructurePoolElement;
|
||||||
import net.minecraft.world.level.levelgen.feature.structures.StructureTemplatePool;
|
import net.minecraft.world.level.levelgen.structure.pools.StructureTemplatePool;
|
||||||
import net.minecraft.world.level.levelgen.feature.treedecorators.BeehiveDecorator;
|
import net.minecraft.world.level.levelgen.feature.treedecorators.BeehiveDecorator;
|
||||||
import net.minecraft.world.level.levelgen.feature.trunkplacers.FancyTrunkPlacer;
|
import net.minecraft.world.level.levelgen.feature.trunkplacers.FancyTrunkPlacer;
|
||||||
import net.minecraft.world.level.levelgen.feature.trunkplacers.StraightTrunkPlacer;
|
import net.minecraft.world.level.levelgen.feature.trunkplacers.StraightTrunkPlacer;
|
||||||
@@ -195,15 +196,15 @@ public class FeatureGenerator
|
|||||||
|
|
||||||
private static ConfiguredStructureFeature<?, ?> getDefaultFeature(StructureFeature<?> structure, ServerLevel world, BlockPos pos, boolean tryHard)
|
private static ConfiguredStructureFeature<?, ?> getDefaultFeature(StructureFeature<?> structure, ServerLevel world, BlockPos pos, boolean tryHard)
|
||||||
{
|
{
|
||||||
var definedStructures = world.getChunkSource().getGenerator().getSettings().structures(structure);
|
var definedStructures = world.getChunkSource().getGenerator().getAllConfigurationsFor(structure);
|
||||||
var optinalBiome = world.registryAccess().registryOrThrow(Registry.BIOME_REGISTRY).getResourceKey(world.getBiome(pos).value());
|
Holder<Biome> existingBiome = world.getBiome(pos);
|
||||||
if (optinalBiome.isPresent())
|
|
||||||
for (ResourceKey<ConfiguredStructureFeature<?, ?>> configureStructureKey: definedStructures.inverse().get(optinalBiome.get()))
|
for (final Holder.Reference<ConfiguredStructureFeature<?, ?>> featureConfig : definedStructures) {
|
||||||
{
|
final HolderSet<Biome> biomeAllowedForStructure = featureConfig.value().biomes();
|
||||||
var configureStructure = world.registryAccess().registryOrThrow(Registry.CONFIGURED_STRUCTURE_FEATURE_REGISTRY).get(configureStructureKey);
|
if (biomeAllowedForStructure.contains(existingBiome)) {
|
||||||
if (configureStructure.feature == structure)
|
return featureConfig.value();
|
||||||
return configureStructure;
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
if (!tryHard) return null;
|
if (!tryHard) return null;
|
||||||
return world.registryAccess().registryOrThrow(Registry.CONFIGURED_STRUCTURE_FEATURE_REGISTRY).entrySet().stream().
|
return world.registryAccess().registryOrThrow(Registry.CONFIGURED_STRUCTURE_FEATURE_REGISTRY).entrySet().stream().
|
||||||
filter(cS -> cS.getValue().feature == structure).
|
filter(cS -> cS.getValue().feature == structure).
|
||||||
@@ -233,47 +234,44 @@ public class FeatureGenerator
|
|||||||
ChunkGenerator generator = world.getChunkSource().getGenerator();
|
ChunkGenerator generator = world.getChunkSource().getGenerator();
|
||||||
StructureSettings settings = generator.getSettings();
|
StructureSettings settings = generator.getSettings();
|
||||||
StructurePlacement structureConfig = settings.getConfig(structure);
|
StructurePlacement structureConfig = settings.getConfig(structure);
|
||||||
|
|
||||||
if (structureConfig instanceof ConcentricRingsStructurePlacement rings)
|
if (structureConfig instanceof ConcentricRingsStructurePlacement rings)
|
||||||
{
|
{
|
||||||
return shouldStrongholdStartAt(generator, rings, world, pos, computeBox);
|
return shouldStrongholdStartAt(generator, rings, world, pos, computeBox);
|
||||||
}
|
}
|
||||||
var structures = settings.structures(structure);
|
|
||||||
if (structureConfig == null || structures.isEmpty()) {
|
if (structureConfig == null)
|
||||||
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
ChunkPos chunkPos = new ChunkPos(pos);
|
ChunkPos chunkPos = new ChunkPos(pos);
|
||||||
Holder<Biome> biome = world.getBiome(pos);
|
|
||||||
Registry<Biome> biomeRegistry = world.registryAccess().registryOrThrow(Registry.BIOME_REGISTRY);
|
|
||||||
if (structures.values().stream().noneMatch(biomeKey -> biomeRegistry.getHolderOrThrow(biomeKey) == biome))
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
if (!structureConfig.isFeatureChunk(generator, chunkPos.x, chunkPos.z))
|
|
||||||
//ChunkPos chunkPos1 = structure.getPotentialFeatureChunk(structureConfig, seed, chunkPos.x, chunkPos.z);
|
|
||||||
//if (!chunkPos1.equals(chunkPos))
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
StructureFeatureManager structureManager = world.structureFeatureManager();
|
StructureFeatureManager structureManager = world.structureFeatureManager();
|
||||||
StructureCheckResult isThere = structureManager.checkStructurePresence(chunkPos, structure, false);
|
StructureCheckResult isThere = structureManager.checkStructurePresence(chunkPos, structure, false);
|
||||||
if (isThere == StructureCheckResult.START_NOT_PRESENT)
|
if (isThere == StructureCheckResult.START_NOT_PRESENT)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
// gen - we want to avoig, right?
|
|
||||||
//Chunk chunk = world.getChunk(chunkPos.x, chunkPos.z, ChunkStatus.STRUCTURE_STARTS);
|
|
||||||
//StructureStart<?> start = structureManager.getStructureStart(ChunkSectionPos.from(chunk), structure, chunk);
|
|
||||||
//if (start != null && start.hasChildren())
|
|
||||||
//{
|
|
||||||
if (!computeBox) return StructureStart.INVALID_START;
|
|
||||||
ConfiguredStructureFeature<?, ?> configuredFeature = getDefaultFeature(structure, world, pos, false);
|
|
||||||
if (configuredFeature == null || configuredFeature.config == null) return null;
|
|
||||||
|
|
||||||
var biomeConfig = structures.get(ResourceKey.create(Registry.CONFIGURED_STRUCTURE_FEATURE_REGISTRY, world.registryAccess().registryOrThrow(Registry.CONFIGURED_STRUCTURE_FEATURE_REGISTRY).getKey(configuredFeature)));
|
if (!structureConfig.isFeatureChunk(generator, chunkPos.x, chunkPos.z)) {
|
||||||
StructureStart<?> filledStructure = configuredFeature.generate(world.registryAccess(), generator, generator.getBiomeSource(),
|
return null;
|
||||||
world.getStructureManager(), seed, chunkPos, 0, world, b -> biomeRegistry.getResourceKey(b.value()).filter(biomeConfig::contains).isPresent());
|
};
|
||||||
if (filledStructure != null && filledStructure.isValid())
|
for (final Holder.Reference<ConfiguredStructureFeature<?, ?>> featureConfig : generator.getAllConfigurationsFor(structure)) {
|
||||||
return filledStructure;
|
final HolderSet<Biome> biomeAllowedForStructure = featureConfig.value().biomes();
|
||||||
|
if (!computeBox) {
|
||||||
|
if (biomeAllowedForStructure.contains(world.getBiome(pos))) {
|
||||||
|
return StructureStart.INVALID_START;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
final StructureStart<?> filledStructure = featureConfig.value().generate(
|
||||||
|
world.registryAccess(), generator, generator.getBiomeSource(), world.getStructureManager(),
|
||||||
|
seed, chunkPos, 0, world, biomeAllowedForStructure::contains);
|
||||||
|
if (filledStructure != null && filledStructure.isValid()) {
|
||||||
|
return filledStructure;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -285,10 +283,10 @@ public class FeatureGenerator
|
|||||||
StructureSettings settings = generator.getSettings();
|
StructureSettings settings = generator.getSettings();
|
||||||
StructurePlacement structureConfig = settings.getConfig(StructureFeature.STRONGHOLD);
|
StructurePlacement structureConfig = settings.getConfig(StructureFeature.STRONGHOLD);
|
||||||
if (structureConfig != null) {
|
if (structureConfig != null) {
|
||||||
final Predicate<ResourceKey<Biome>> biomeCheck = settings.structures(StructureFeature.STRONGHOLD).values().stream().collect(Collectors.toUnmodifiableSet())::contains;
|
final List<Holder.Reference<ConfiguredStructureFeature<?, ?>>> configurations = generator.getAllConfigurationsFor(StructureFeature.STRONGHOLD);
|
||||||
final Predicate<Holder<Biome>> holderCheck = b -> b.is(biomeCheck);
|
final Set<Holder<Biome>> allowedBiomes = configurations.stream().flatMap(s -> s.value().biomes().stream()).distinct().collect(Collectors.toSet());
|
||||||
StructureStart<?> filledStructure = StructureFeature.STRONGHOLD.generate(world.registryAccess(), generator, generator.getBiomeSource(),
|
StructureStart<?> filledStructure = StructureFeature.STRONGHOLD.generate(world.registryAccess(), generator, generator.getBiomeSource(),
|
||||||
world.getStructureManager(), world.getSeed(), new ChunkPos(pos), 0, NoneFeatureConfiguration.INSTANCE, world, holderCheck
|
world.getStructureManager(), world.getSeed(), new ChunkPos(pos), 0, NoneFeatureConfiguration.INSTANCE, world, allowedBiomes::contains
|
||||||
);
|
);
|
||||||
if (filledStructure != null && filledStructure.isValid())
|
if (filledStructure != null && filledStructure.isValid())
|
||||||
return filledStructure;
|
return filledStructure;
|
||||||
|
|||||||
@@ -3,6 +3,13 @@ package carpet.mixins;
|
|||||||
import carpet.CarpetSettings;
|
import carpet.CarpetSettings;
|
||||||
import carpet.helpers.CustomSpawnLists;
|
import carpet.helpers.CustomSpawnLists;
|
||||||
import net.minecraft.core.Holder;
|
import net.minecraft.core.Holder;
|
||||||
|
import net.minecraft.core.Registry;
|
||||||
|
import net.minecraft.world.level.levelgen.feature.ConfiguredStructureFeature;
|
||||||
|
import net.minecraft.world.level.levelgen.feature.NetherFortressFeature;
|
||||||
|
import net.minecraft.world.level.levelgen.feature.OceanMonumentFeature;
|
||||||
|
import net.minecraft.world.level.levelgen.feature.PillagerOutpostFeature;
|
||||||
|
import net.minecraft.world.level.levelgen.feature.StructureFeature;
|
||||||
|
import net.minecraft.world.level.levelgen.feature.SwamplandHutFeature;
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
|
|
||||||
import net.minecraft.core.BlockPos;
|
import net.minecraft.core.BlockPos;
|
||||||
@@ -15,19 +22,13 @@ import net.minecraft.world.level.biome.MobSpawnSettings;
|
|||||||
import net.minecraft.world.level.chunk.ChunkGenerator;
|
import net.minecraft.world.level.chunk.ChunkGenerator;
|
||||||
import net.minecraft.world.level.levelgen.FlatLevelSource;
|
import net.minecraft.world.level.levelgen.FlatLevelSource;
|
||||||
import net.minecraft.world.level.levelgen.StructureSettings;
|
import net.minecraft.world.level.levelgen.StructureSettings;
|
||||||
import net.minecraft.world.level.levelgen.feature.NetherFortressFeature;
|
|
||||||
import net.minecraft.world.level.levelgen.feature.OceanMonumentFeature;
|
|
||||||
import net.minecraft.world.level.levelgen.feature.PillagerOutpostFeature;
|
|
||||||
import net.minecraft.world.level.levelgen.feature.StructureFeature;
|
|
||||||
import net.minecraft.world.level.levelgen.feature.SwamplandHutFeature;
|
|
||||||
|
|
||||||
@Mixin(FlatLevelSource.class)
|
@Mixin(FlatLevelSource.class)
|
||||||
public abstract class FlatLevelSource_structuresMixin extends ChunkGenerator
|
public abstract class FlatLevelSource_structuresMixin extends ChunkGenerator
|
||||||
{
|
{
|
||||||
|
public FlatLevelSource_structuresMixin(Registry<ConfiguredStructureFeature<?, ?>> registry, BiomeSource biomeSource, StructureSettings structureSettings)
|
||||||
public FlatLevelSource_structuresMixin(BiomeSource biomeSource, StructureSettings structuresConfig)
|
|
||||||
{
|
{
|
||||||
super(biomeSource, structuresConfig);
|
super(registry, biomeSource, structureSettings);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -3,6 +3,8 @@ package carpet.mixins;
|
|||||||
import carpet.CarpetSettings;
|
import carpet.CarpetSettings;
|
||||||
import carpet.helpers.CustomSpawnLists;
|
import carpet.helpers.CustomSpawnLists;
|
||||||
import net.minecraft.core.Holder;
|
import net.minecraft.core.Holder;
|
||||||
|
import net.minecraft.core.Registry;
|
||||||
|
import net.minecraft.world.level.levelgen.feature.ConfiguredStructureFeature;
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
import org.spongepowered.asm.mixin.injection.At;
|
import org.spongepowered.asm.mixin.injection.At;
|
||||||
import org.spongepowered.asm.mixin.injection.Inject;
|
import org.spongepowered.asm.mixin.injection.Inject;
|
||||||
@@ -23,9 +25,9 @@ import net.minecraft.world.level.levelgen.feature.StructureFeature;
|
|||||||
@Mixin(NoiseBasedChunkGenerator.class)
|
@Mixin(NoiseBasedChunkGenerator.class)
|
||||||
public abstract class NoiseBasedChunkGenerator_husksSpawnMixin extends ChunkGenerator
|
public abstract class NoiseBasedChunkGenerator_husksSpawnMixin extends ChunkGenerator
|
||||||
{
|
{
|
||||||
public NoiseBasedChunkGenerator_husksSpawnMixin(BiomeSource biomeSource, StructureSettings structuresConfig)
|
|
||||||
{
|
public NoiseBasedChunkGenerator_husksSpawnMixin(Registry<ConfiguredStructureFeature<?, ?>> registry, BiomeSource biomeSource, StructureSettings structureSettings) {
|
||||||
super(biomeSource, structuresConfig);
|
super(registry, biomeSource, structureSettings);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Inject(method = "getMobsAt", at = @At("HEAD"), cancellable = true)
|
@Inject(method = "getMobsAt", at = @At("HEAD"), cancellable = true)
|
||||||
|
|||||||
@@ -4,9 +4,11 @@ import carpet.fakes.NoiseColumnSamplerInterface;
|
|||||||
import carpet.script.exception.InternalExpressionException;
|
import carpet.script.exception.InternalExpressionException;
|
||||||
import net.minecraft.core.QuartPos;
|
import net.minecraft.core.QuartPos;
|
||||||
import net.minecraft.world.level.biome.Climate;
|
import net.minecraft.world.level.biome.Climate;
|
||||||
import net.minecraft.world.level.levelgen.NoiseSampler;
|
import net.minecraft.world.level.levelgen.NoiseRouter;
|
||||||
|
import net.minecraft.world.level.levelgen.NoiseRouterData;
|
||||||
|
//import net.minecraft.world.level.levelgen.NoiseSampler;
|
||||||
import net.minecraft.world.level.levelgen.NoiseSettings;
|
import net.minecraft.world.level.levelgen.NoiseSettings;
|
||||||
import net.minecraft.world.level.levelgen.TerrainInfo;
|
//import net.minecraft.world.level.levelgen.TerrainInfo;
|
||||||
import net.minecraft.world.level.levelgen.blending.Blender;
|
import net.minecraft.world.level.levelgen.blending.Blender;
|
||||||
import net.minecraft.world.level.levelgen.synth.BlendedNoise;
|
import net.minecraft.world.level.levelgen.synth.BlendedNoise;
|
||||||
import net.minecraft.world.level.levelgen.synth.NoiseUtils;
|
import net.minecraft.world.level.levelgen.synth.NoiseUtils;
|
||||||
@@ -17,9 +19,13 @@ import org.spongepowered.asm.mixin.Final;
|
|||||||
import org.spongepowered.asm.mixin.Mixin;
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
import org.spongepowered.asm.mixin.Shadow;
|
import org.spongepowered.asm.mixin.Shadow;
|
||||||
|
|
||||||
@Mixin(NoiseSampler.class)
|
@Mixin(NoiseRouterData.class)
|
||||||
public abstract class NoiseSampler_scarpetMixin implements NoiseColumnSamplerInterface {
|
public abstract class NoiseSampler_scarpetMixin implements NoiseColumnSamplerInterface {
|
||||||
|
|
||||||
|
/*
|
||||||
|
@Shadow @Final
|
||||||
|
private NoiseRouter router;
|
||||||
|
|
||||||
@Shadow @Final
|
@Shadow @Final
|
||||||
private BlendedNoise blendedNoise;
|
private BlendedNoise blendedNoise;
|
||||||
|
|
||||||
@@ -255,5 +261,5 @@ public abstract class NoiseSampler_scarpetMixin implements NoiseColumnSamplerInt
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new InternalExpressionException("Unknown noise type: " + name);
|
throw new InternalExpressionException("Unknown noise type: " + name);
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
@@ -1,11 +1,12 @@
|
|||||||
package carpet.mixins;
|
package carpet.mixins;
|
||||||
|
|
||||||
import net.minecraft.world.level.levelgen.NoiseSampler;
|
//import net.minecraft.world.level.levelgen.NoiseRouterData;
|
||||||
|
//import net.minecraft.world.level.levelgen.NoiseSampler;
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
import org.spongepowered.asm.mixin.gen.Invoker;
|
import org.spongepowered.asm.mixin.gen.Invoker;
|
||||||
|
|
||||||
|
|
||||||
@Mixin(NoiseSampler.QuantizedSpaghettiRarity.class)
|
@Mixin(targets = "net.minecraft.world.level.levelgen.NoiseRouterData$QuantizedSpaghettiRarity")
|
||||||
public interface QuantizedSpaghettiRarityMixin_scarpetMixin {
|
public interface QuantizedSpaghettiRarityMixin_scarpetMixin {
|
||||||
@Invoker
|
@Invoker
|
||||||
static double invokeGetSpaghettiRarity3D(double d) {
|
static double invokeGetSpaghettiRarity3D(double d) {
|
||||||
|
|||||||
@@ -1594,6 +1594,8 @@ public class WorldAccess {
|
|||||||
|
|
||||||
@ScarpetFunction(maxParams = -1)
|
@ScarpetFunction(maxParams = -1)
|
||||||
public Value sample_noise(Context c, @Locator.Block BlockPos pos, String... noiseQueries) {
|
public Value sample_noise(Context c, @Locator.Block BlockPos pos, String... noiseQueries) {
|
||||||
|
return Value.NULL;
|
||||||
|
/*
|
||||||
int mappedX = QuartPos.fromBlock(pos.getX());
|
int mappedX = QuartPos.fromBlock(pos.getX());
|
||||||
int mappedY = QuartPos.fromBlock(pos.getY());
|
int mappedY = QuartPos.fromBlock(pos.getY());
|
||||||
int mappedZ = QuartPos.fromBlock(pos.getZ());
|
int mappedZ = QuartPos.fromBlock(pos.getZ());
|
||||||
@@ -1608,6 +1610,6 @@ public class WorldAccess {
|
|||||||
double noiseValue = ((NoiseColumnSamplerInterface) mns).getNoiseSample(noise, mappedX, mappedY, mappedZ);
|
double noiseValue = ((NoiseColumnSamplerInterface) mns).getNoiseSample(noise, mappedX, mappedY, mappedZ);
|
||||||
ret.put(new StringValue(noise), new NumericValue(noiseValue));
|
ret.put(new StringValue(noise), new NumericValue(noiseValue));
|
||||||
}
|
}
|
||||||
return MapValue.wrap(ret);
|
return MapValue.wrap(ret);*/
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -114,7 +114,10 @@ public class WorldTools
|
|||||||
// return server.getRegistryManager().get(Registry.CHUNK_GENERATOR_SETTINGS_KEY).getOrThrow(ChunkGeneratorSettings.OVERWORLD);
|
// return server.getRegistryManager().get(Registry.CHUNK_GENERATOR_SETTINGS_KEY).getOrThrow(ChunkGeneratorSettings.OVERWORLD);
|
||||||
//});
|
//});
|
||||||
|
|
||||||
chunkGenerator2 = new NoiseBasedChunkGenerator(server.registryAccess().registryOrThrow(Registry.NOISE_REGISTRY), MultiNoiseBiomeSource.Preset.OVERWORLD.biomeSource(server.registryAccess().registryOrThrow(Registry.BIOME_REGISTRY)), seed,
|
chunkGenerator2 = new NoiseBasedChunkGenerator(
|
||||||
|
server.registryAccess().registryOrThrow(Registry.NOISE_REGISTRY),
|
||||||
|
server.registryAccess().registryOrThrow(Registry.CONFIGURED_STRUCTURE_FEATURE_REGISTRY),
|
||||||
|
MultiNoiseBiomeSource.Preset.OVERWORLD.biomeSource(server.registryAccess().registryOrThrow(Registry.BIOME_REGISTRY)), seed,
|
||||||
Holder.direct(server.registryAccess().registryOrThrow(Registry.NOISE_GENERATOR_SETTINGS_REGISTRY).getOrThrow(NoiseGeneratorSettings.OVERWORLD))
|
Holder.direct(server.registryAccess().registryOrThrow(Registry.NOISE_GENERATOR_SETTINGS_REGISTRY).getOrThrow(NoiseGeneratorSettings.OVERWORLD))
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user