mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-06-17 14:21:08 +00:00
move seedhack into common
This commit is contained in:
+1
-4
@@ -22,11 +22,9 @@ import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
|
||||
import com.dfsek.terra.fabric.data.Codecs;
|
||||
import com.dfsek.terra.fabric.util.ProtoPlatformBiome;
|
||||
|
||||
import com.dfsek.terra.fabric.util.SeedHack;
|
||||
import com.dfsek.terra.mod.util.SeedHack;
|
||||
|
||||
import com.mojang.serialization.Codec;
|
||||
import it.unimi.dsi.fastutil.objects.Object2LongMap;
|
||||
import it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap;
|
||||
import net.minecraft.util.registry.Registry;
|
||||
import net.minecraft.util.registry.RegistryEntry;
|
||||
import net.minecraft.world.biome.source.BiomeSource;
|
||||
@@ -34,7 +32,6 @@ import net.minecraft.world.biome.source.util.MultiNoiseUtil.MultiNoiseSampler;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.stream.StreamSupport;
|
||||
|
||||
|
||||
|
||||
+2
-2
@@ -1,5 +1,7 @@
|
||||
package com.dfsek.terra.fabric.mixin.lifecycle;
|
||||
|
||||
import com.dfsek.terra.mod.util.SeedHack;
|
||||
|
||||
import net.minecraft.util.math.noise.DoublePerlinNoiseSampler;
|
||||
import net.minecraft.util.registry.Registry;
|
||||
import net.minecraft.world.biome.source.util.MultiNoiseUtil.MultiNoiseSampler;
|
||||
@@ -12,8 +14,6 @@ import org.spongepowered.asm.mixin.injection.At;
|
||||
import org.spongepowered.asm.mixin.injection.Inject;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||
|
||||
import com.dfsek.terra.fabric.util.SeedHack;
|
||||
|
||||
|
||||
/**
|
||||
* Hack to map noise sampler to seeds
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
package com.dfsek.terra.fabric.util;
|
||||
|
||||
import it.unimi.dsi.fastutil.objects.Object2LongMap;
|
||||
import it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap;
|
||||
import net.minecraft.world.biome.source.util.MultiNoiseUtil.MultiNoiseSampler;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
|
||||
/**
|
||||
* Holder for hacky biome source seed workaround
|
||||
*/
|
||||
public class SeedHack {
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(SeedHack.class);
|
||||
|
||||
private static final Object2LongMap<MultiNoiseSampler> seedMap = new Object2LongOpenHashMap<>();
|
||||
|
||||
public static long getSeed(MultiNoiseSampler sampler) {
|
||||
if(!seedMap.containsKey(sampler)) {
|
||||
throw new IllegalArgumentException("Sampler is not registered: " + sampler);
|
||||
}
|
||||
return seedMap.getLong(sampler);
|
||||
}
|
||||
|
||||
public static void register(MultiNoiseSampler sampler, long seed) {
|
||||
LOGGER.info("Registered seed {} to sampler {}", seed, sampler.hashCode());
|
||||
seedMap.put(sampler, seed);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user