who let the datadrive (the dimensions)

This commit is contained in:
Zoë Gidiere
2023-12-11 21:14:43 -07:00
parent b039629b2d
commit d4a328eb38
5 changed files with 109 additions and 53 deletions
@@ -4,11 +4,15 @@ import ca.solostudios.strata.Versions;
import ca.solostudios.strata.parser.tokenizer.ParseException;
import ca.solostudios.strata.version.Version;
import net.minecraft.MinecraftVersion;
import net.minecraft.registry.DynamicRegistryManager;
import net.minecraft.registry.Registries;
import net.minecraft.registry.Registry;
import net.minecraft.registry.RegistryKeys;
import net.minecraft.server.MinecraftServer;
import net.minecraft.world.biome.Biome;
import net.minecraft.world.biome.source.MultiNoiseBiomeSourceParameterList;
import net.minecraft.world.dimension.DimensionOptions;
import net.minecraft.world.dimension.DimensionOptionsRegistryHolder;
import net.minecraft.world.dimension.DimensionType;
import net.minecraft.world.gen.chunk.ChunkGeneratorSettings;
import org.slf4j.Logger;
@@ -34,6 +38,8 @@ public abstract class LifecyclePlatform extends ModPlatform {
private static final AtomicReference<Registry<DimensionType>> DIMENSIONS = new AtomicReference<>();
private static final AtomicReference<Registry<ChunkGeneratorSettings>> SETTINGS = new AtomicReference<>();
private static final AtomicReference<Registry<MultiNoiseBiomeSourceParameterList>> NOISE = new AtomicReference<>();
private static final AtomicReference<DynamicRegistryManager.Immutable> DYNAMIC_REGISTRY_MANAGER = new AtomicReference<>();
private static MinecraftServer server;
public LifecyclePlatform() {
@@ -51,6 +57,10 @@ public abstract class LifecyclePlatform extends ModPlatform {
NOISE.set(multiNoiseBiomeSourceParameterListRegistry);
}
public static void setDynamicRegistryManager(DynamicRegistryManager.Immutable dynamicRegistryManager) {
DYNAMIC_REGISTRY_MANAGER.set(dynamicRegistryManager);
}
@Override
public MinecraftServer getServer() {
return server;
@@ -7,6 +7,7 @@ import net.minecraft.registry.RegistryKey;
import net.minecraft.registry.RegistryKeys;
import net.minecraft.registry.RegistryLoader;
import net.minecraft.world.biome.source.MultiNoiseBiomeSourceParameterList;
import net.minecraft.world.dimension.DimensionOptions;
import net.minecraft.world.dimension.DimensionType;
import net.minecraft.world.gen.WorldPreset;
import net.minecraft.world.gen.chunk.ChunkGeneratorSettings;
@@ -64,6 +65,9 @@ public class RegistryLoaderMixin {
@SuppressWarnings("unchecked")
private static <T> Optional<MutableRegistry<T>> extractRegistry(List<Pair<MutableRegistry<?>, Object>> instance,
RegistryKey<Registry<T>> key) {
instance.stream().forEach(k -> {
LOGGER.error(k.toString());
});
List<? extends MutableRegistry<?>> matches = instance
.stream()
.map(Pair::getFirst)