Merge branch '1.21' into new-container-api

This commit is contained in:
DBotThePony 2025-03-22 00:31:35 +07:00
commit 45181c9e55
Signed by: DBot
GPG Key ID: DCC23B5715498507
2 changed files with 3 additions and 9 deletions

View File

@ -2,15 +2,12 @@ package ru.dbotthepony.mc.otm.core.util
import net.minecraft.util.Mth import net.minecraft.util.Mth
import net.minecraft.util.RandomSource import net.minecraft.util.RandomSource
import net.minecraft.world.level.levelgen.MarsagliaPolarGaussian
import net.minecraft.world.level.levelgen.PositionalRandomFactory import net.minecraft.world.level.levelgen.PositionalRandomFactory
import net.minecraft.world.level.levelgen.RandomSupport import net.minecraft.world.level.levelgen.RandomSupport
import ru.dbotthepony.kommons.random.GJRAND64Random import ru.dbotthepony.kommons.random.GJRAND64Random
import java.lang.StringBuilder import java.lang.StringBuilder
class GJRAND64RandomSource : GJRAND64Random, IRandomSourceGenerator { class GJRAND64RandomSource : GJRAND64Random, IRandomSourceGenerator {
private val gaussian = MarsagliaPolarGaussian(this)
constructor() : super(RandomSupport.generateUniqueSeed(), RandomSupport.generateUniqueSeed()) constructor() : super(RandomSupport.generateUniqueSeed(), RandomSupport.generateUniqueSeed())
constructor(seed: Long) : super(seed) constructor(seed: Long) : super(seed)
constructor(seed0: Long, seed1: Long) : super(seed0, seed1) constructor(seed0: Long, seed1: Long) : super(seed0, seed1)
@ -19,10 +16,6 @@ class GJRAND64RandomSource : GJRAND64Random, IRandomSourceGenerator {
return nextLong().ushr(32).toInt() return nextLong().ushr(32).toInt()
} }
override fun nextGaussian(): Double {
return gaussian.nextGaussian()
}
override fun fork(): RandomSource { override fun fork(): RandomSource {
return GJRAND64RandomSource(nextLong(), nextLong()) return GJRAND64RandomSource(nextLong(), nextLong())
} }
@ -33,7 +26,6 @@ class GJRAND64RandomSource : GJRAND64Random, IRandomSourceGenerator {
override fun setSeed(seed: Long) { override fun setSeed(seed: Long) {
reinitialize(seed) reinitialize(seed)
gaussian.reset()
} }
class Positional(private val seed0: Long, private val seed1: Long) : PositionalRandomFactory { class Positional(private val seed0: Long, private val seed1: Long) : PositionalRandomFactory {

View File

@ -26,5 +26,7 @@ interface IRandomSourceGenerator : RandomSource, RandomGenerator {
return super.nextDouble() return super.nextDouble()
} }
override fun nextGaussian(): Double override fun nextGaussian(): Double {
return super.nextGaussian()
}
} }