mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-06-17 22:31:52 +00:00
use noise registry in wrapper instantiation
This commit is contained in:
+3
-1
@@ -20,6 +20,7 @@ package com.dfsek.terra.fabric.generation;
|
|||||||
import net.fabricmc.api.EnvType;
|
import net.fabricmc.api.EnvType;
|
||||||
import net.fabricmc.api.Environment;
|
import net.fabricmc.api.Environment;
|
||||||
import net.minecraft.client.world.GeneratorType;
|
import net.minecraft.client.world.GeneratorType;
|
||||||
|
import net.minecraft.structure.StructureSet;
|
||||||
import net.minecraft.util.registry.DynamicRegistryManager;
|
import net.minecraft.util.registry.DynamicRegistryManager;
|
||||||
import net.minecraft.util.registry.Registry;
|
import net.minecraft.util.registry.Registry;
|
||||||
import net.minecraft.world.gen.GeneratorOptions;
|
import net.minecraft.world.gen.GeneratorOptions;
|
||||||
@@ -47,6 +48,7 @@ public class TerraGeneratorType extends GeneratorType {
|
|||||||
protected ChunkGenerator getChunkGenerator(DynamicRegistryManager manager, long seed) {
|
protected ChunkGenerator getChunkGenerator(DynamicRegistryManager manager, long seed) {
|
||||||
Registry<ChunkGeneratorSettings> chunkGeneratorSettingsRegistry = manager.get(Registry.CHUNK_GENERATOR_SETTINGS_KEY);
|
Registry<ChunkGeneratorSettings> chunkGeneratorSettingsRegistry = manager.get(Registry.CHUNK_GENERATOR_SETTINGS_KEY);
|
||||||
Supplier<ChunkGeneratorSettings> settingsSupplier = () -> chunkGeneratorSettingsRegistry.getOrThrow(ChunkGeneratorSettings.OVERWORLD);
|
Supplier<ChunkGeneratorSettings> settingsSupplier = () -> chunkGeneratorSettingsRegistry.getOrThrow(ChunkGeneratorSettings.OVERWORLD);
|
||||||
return new FabricChunkGeneratorWrapper(new TerraBiomeSource(manager.get(Registry.BIOME_KEY), seed, pack), seed, pack, settingsSupplier);
|
Registry<StructureSet> noiseRegistry = manager.get(Registry.STRUCTURE_SET_KEY);
|
||||||
|
return new FabricChunkGeneratorWrapper(noiseRegistry, new TerraBiomeSource(manager.get(Registry.BIOME_KEY), seed, pack), seed, pack, settingsSupplier);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+9
-6
@@ -17,6 +17,7 @@
|
|||||||
|
|
||||||
package com.dfsek.terra.fabric.mixin.lifecycle.server;
|
package com.dfsek.terra.fabric.mixin.lifecycle.server;
|
||||||
|
|
||||||
|
import net.minecraft.structure.StructureSet;
|
||||||
import net.minecraft.util.registry.DynamicRegistryManager;
|
import net.minecraft.util.registry.DynamicRegistryManager;
|
||||||
import net.minecraft.util.registry.Registry;
|
import net.minecraft.util.registry.Registry;
|
||||||
import net.minecraft.util.registry.SimpleRegistry;
|
import net.minecraft.util.registry.SimpleRegistry;
|
||||||
@@ -47,7 +48,7 @@ public abstract class GeneratorOptionsMixin {
|
|||||||
"Lnet/minecraft/world/gen/GeneratorOptions;",
|
"Lnet/minecraft/world/gen/GeneratorOptions;",
|
||||||
at = @At("HEAD"),
|
at = @At("HEAD"),
|
||||||
cancellable = true)
|
cancellable = true)
|
||||||
private static void fromProperties(DynamicRegistryManager registryManager, Properties properties,
|
private static void fromProperties(DynamicRegistryManager manager, Properties properties,
|
||||||
CallbackInfoReturnable<GeneratorOptions> cir) {
|
CallbackInfoReturnable<GeneratorOptions> cir) {
|
||||||
if(properties.get("level-type") == null) {
|
if(properties.get("level-type") == null) {
|
||||||
return;
|
return;
|
||||||
@@ -72,13 +73,14 @@ public abstract class GeneratorOptionsMixin {
|
|||||||
|
|
||||||
String generate_structures = (String) properties.get("generate-structures");
|
String generate_structures = (String) properties.get("generate-structures");
|
||||||
boolean generateStructures = generate_structures == null || Boolean.parseBoolean(generate_structures);
|
boolean generateStructures = generate_structures == null || Boolean.parseBoolean(generate_structures);
|
||||||
Registry<DimensionType> dimensionTypes = registryManager.get(Registry.DIMENSION_TYPE_KEY);
|
Registry<DimensionType> dimensionTypes = manager.get(Registry.DIMENSION_TYPE_KEY);
|
||||||
Registry<Biome> biomeRegistry = registryManager.get(Registry.BIOME_KEY);
|
Registry<Biome> biomeRegistry = manager.get(Registry.BIOME_KEY);
|
||||||
SimpleRegistry<DimensionOptions> dimensionOptions = DimensionType.createDefaultDimensionOptions(registryManager, seed, false);
|
SimpleRegistry<DimensionOptions> dimensionOptions = DimensionType.createDefaultDimensionOptions(manager, seed, false);
|
||||||
|
|
||||||
Registry<ChunkGeneratorSettings> chunkGeneratorSettingsRegistry = registryManager.get(Registry.CHUNK_GENERATOR_SETTINGS_KEY);
|
Registry<ChunkGeneratorSettings> chunkGeneratorSettingsRegistry = manager.get(Registry.CHUNK_GENERATOR_SETTINGS_KEY);
|
||||||
Supplier<ChunkGeneratorSettings>
|
Supplier<ChunkGeneratorSettings>
|
||||||
settingsSupplier = () -> chunkGeneratorSettingsRegistry.getOrThrow(ChunkGeneratorSettings.OVERWORLD);
|
settingsSupplier = () -> chunkGeneratorSettingsRegistry.getOrThrow(ChunkGeneratorSettings.OVERWORLD);
|
||||||
|
Registry<StructureSet> noiseRegistry = manager.get(Registry.STRUCTURE_SET_KEY);
|
||||||
|
|
||||||
prop = prop.substring(prop.indexOf(":") + 1);
|
prop = prop.substring(prop.indexOf(":") + 1);
|
||||||
|
|
||||||
@@ -94,7 +96,8 @@ public abstract class GeneratorOptionsMixin {
|
|||||||
.getRegistryWithReplacedOverworldGenerator(
|
.getRegistryWithReplacedOverworldGenerator(
|
||||||
dimensionTypes,
|
dimensionTypes,
|
||||||
dimensionOptions,
|
dimensionOptions,
|
||||||
new FabricChunkGeneratorWrapper(new TerraBiomeSource(biomeRegistry, seed, config),
|
new FabricChunkGeneratorWrapper(noiseRegistry,
|
||||||
|
new TerraBiomeSource(biomeRegistry, seed, config),
|
||||||
seed,
|
seed,
|
||||||
config,
|
config,
|
||||||
settingsSupplier))));
|
settingsSupplier))));
|
||||||
|
|||||||
Reference in New Issue
Block a user