Some fixes
This commit is contained in:
parent
9d0a640173
commit
7a891d71ee
2 changed files with 25 additions and 4 deletions
|
@ -91,7 +91,7 @@ public class BaseLeavesBlock extends LeavesBlock implements BlockModelProvider,
|
||||||
if (BaseShearsItem.isShear(tool) || EnchantmentHelper.getItemEnchantmentLevel(
|
if (BaseShearsItem.isShear(tool) || EnchantmentHelper.getItemEnchantmentLevel(
|
||||||
Enchantments.SILK_TOUCH,
|
Enchantments.SILK_TOUCH,
|
||||||
tool
|
tool
|
||||||
) > 0) {
|
) > 0) {
|
||||||
return Collections.singletonList(new ItemStack(leaveBlock));
|
return Collections.singletonList(new ItemStack(leaveBlock));
|
||||||
}
|
}
|
||||||
int fortune = EnchantmentHelper.getItemEnchantmentLevel(Enchantments.BLOCK_FORTUNE, tool);
|
int fortune = EnchantmentHelper.getItemEnchantmentLevel(Enchantments.BLOCK_FORTUNE, tool);
|
||||||
|
|
|
@ -9,6 +9,7 @@ import net.minecraft.world.level.chunk.ChunkGenerator;
|
||||||
import net.minecraft.world.level.dimension.BuiltinDimensionTypes;
|
import net.minecraft.world.level.dimension.BuiltinDimensionTypes;
|
||||||
import net.minecraft.world.level.dimension.DimensionType;
|
import net.minecraft.world.level.dimension.DimensionType;
|
||||||
import net.minecraft.world.level.dimension.LevelStem;
|
import net.minecraft.world.level.dimension.LevelStem;
|
||||||
|
import net.minecraft.world.level.levelgen.NoiseGeneratorSettings;
|
||||||
import net.minecraft.world.level.levelgen.WorldGenSettings;
|
import net.minecraft.world.level.levelgen.WorldGenSettings;
|
||||||
|
|
||||||
import com.mojang.serialization.Codec;
|
import com.mojang.serialization.Codec;
|
||||||
|
@ -104,6 +105,25 @@ public class BCLWorldPresetSettings extends WorldPresetSettings {
|
||||||
return biomeSource;
|
return biomeSource;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Holder<NoiseGeneratorSettings> fixNoiseSettings(Holder<NoiseGeneratorSettings> settings,
|
||||||
|
BiomeSource biomeSource) {
|
||||||
|
NoiseGeneratorSettings old = settings.value();
|
||||||
|
NoiseGeneratorSettings noise = new NoiseGeneratorSettings(old.noiseSettings(),
|
||||||
|
old.defaultBlock(),
|
||||||
|
old.defaultFluid(),
|
||||||
|
old.noiseRouter(),
|
||||||
|
old.surfaceRule(),
|
||||||
|
old.spawnTarget(),
|
||||||
|
old.seaLevel(),
|
||||||
|
old.disableMobGeneration(),
|
||||||
|
old.aquifersEnabled(),
|
||||||
|
old.oreVeinsEnabled(),
|
||||||
|
old.useLegacyRandomSource());
|
||||||
|
|
||||||
|
|
||||||
|
return Holder.direct(noise);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Datapacks can change the world's generator. This Method will ensure, that the Generators contain
|
* Datapacks can change the world's generator. This Method will ensure, that the Generators contain
|
||||||
|
@ -144,11 +164,12 @@ public class BCLWorldPresetSettings extends WorldPresetSettings {
|
||||||
if (chunkGenerator instanceof ChunkGeneratorAccessor generator) {
|
if (chunkGenerator instanceof ChunkGeneratorAccessor generator) {
|
||||||
if (chunkGenerator instanceof NoiseGeneratorSettingsProvider noiseProvider) {
|
if (chunkGenerator instanceof NoiseGeneratorSettingsProvider noiseProvider) {
|
||||||
final Set<Holder<Biome>> biomes = chunkGenerator.getBiomeSource().possibleBiomes();
|
final Set<Holder<Biome>> biomes = chunkGenerator.getBiomeSource().possibleBiomes();
|
||||||
|
final BiomeSource bs = fixBiomeSource(referenceGenerator.getBiomeSource(), biomes);
|
||||||
referenceGenerator = new BCLChunkGenerator(generator.bclib_getStructureSetsRegistry(),
|
referenceGenerator = new BCLChunkGenerator(generator.bclib_getStructureSetsRegistry(),
|
||||||
noiseProvider.bclib_getNoises(),
|
noiseProvider.bclib_getNoises(),
|
||||||
fixBiomeSource(referenceGenerator.getBiomeSource(), biomes),
|
bs,
|
||||||
noiseProvider.bclib_getNoiseGeneratorSettingHolders());
|
fixNoiseSettings(noiseProvider.bclib_getNoiseGeneratorSettingHolders(), bs)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue