Correct handling of WorldPreset Settings from UI

This commit is contained in:
Frank 2022-06-19 23:25:44 +02:00
parent 73cd08fa69
commit 586485fe48
12 changed files with 106 additions and 58 deletions

View file

@ -23,6 +23,10 @@ public abstract class WorldGenSettingsComponentMixin implements WorldGenSettings
@Accessor("preset")
public abstract Optional<Holder<WorldPreset>> bcl_getPreset();
@Override
@Accessor("preset")
public abstract void bcl_setPreset(Optional<Holder<WorldPreset>> preset);
@ModifyArg(method = "init", index = 0, at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/components/CycleButton$Builder;withValues(Ljava/util/List;Ljava/util/List;)Lnet/minecraft/client/gui/components/CycleButton$Builder;"))
public List<Holder<WorldPreset>> bcl_SortLists(List<Holder<WorldPreset>> list) {
final Predicate<Holder<WorldPreset>> vanilla = (p -> p.unwrapKey()

View file

@ -2,8 +2,6 @@ package org.betterx.bclib.mixin.common;
import org.betterx.bclib.api.v2.LifeCycleAPI;
import org.betterx.bclib.api.v2.generator.BCLBiomeSource;
import org.betterx.bclib.api.v2.generator.BCLibEndBiomeSource;
import org.betterx.bclib.api.v2.generator.BCLibNetherBiomeSource;
import net.minecraft.core.Holder;
import net.minecraft.resources.ResourceKey;
@ -75,12 +73,6 @@ public abstract class ServerLevelMixin extends Level {
bl2
);
if (level.dimension() == Level.NETHER) {
BCLibNetherBiomeSource.setWorldHeight(level.getChunkSource().getGenerator().getGenDepth());
} else if (level.dimension() == Level.END) {
BCLibEndBiomeSource.setWorldHeight(level.getChunkSource().getGenerator().getGenDepth());
}
if (levelStem.generator().getBiomeSource() instanceof BCLBiomeSource source) {
source.setSeed(level.getSeed());
}