Package net.minecraft.util.math.random
Class Xoroshiro128PlusPlusRandom
java.lang.Object
net.minecraft.util.math.random.Xoroshiro128PlusPlusRandom
- All Implemented Interfaces:
Random
Xoroshiro128++ based pseudo random number generator.
- Implementation Note:
- The actual implementation can be found on
Xoroshiro128PlusPlusRandomImpl
. - Mappings:
Namespace Name official did
intermediary net/minecraft/class_6677
named net/minecraft/util/math/random/Xoroshiro128PlusPlusRandom
-
Nested Class Summary
-
Field Summary
Modifier and TypeFieldDescriptionprivate static final double
private static final float
private final GaussianGenerator
private Xoroshiro128PlusPlusRandomImpl
Fields inherited from interface net.minecraft.util.math.random.Random
field_38930
-
Constructor Summary
ConstructorDescriptionXoroshiro128PlusPlusRandom
(long seed) Xoroshiro128PlusPlusRandom
(long seedLo, long seedHi) -
Method Summary
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface net.minecraft.util.math.random.Random
nextBetween, nextBetweenExclusive, nextTriangular
-
Field Details
-
FLOAT_MULTIPLIER
private static final float FLOAT_MULTIPLIER- See Also:
- Mappings:
Namespace Name Mixin selector official b
Ldid;b:F
intermediary field_35148
Lnet/minecraft/class_6677;field_35148:F
named FLOAT_MULTIPLIER
Lnet/minecraft/util/math/random/Xoroshiro128PlusPlusRandom;FLOAT_MULTIPLIER:F
-
DOUBLE_MULTIPLIER
private static final double DOUBLE_MULTIPLIER- See Also:
- Mappings:
Namespace Name Mixin selector official c
Ldid;c:D
intermediary field_35149
Lnet/minecraft/class_6677;field_35149:D
named DOUBLE_MULTIPLIER
Lnet/minecraft/util/math/random/Xoroshiro128PlusPlusRandom;DOUBLE_MULTIPLIER:D
-
implementation
- Mappings:
Namespace Name Mixin selector official d
Ldid;d:Ldic;
intermediary field_35150
Lnet/minecraft/class_6677;field_35150:Lnet/minecraft/class_6676;
named implementation
Lnet/minecraft/util/math/random/Xoroshiro128PlusPlusRandom;implementation:Lnet/minecraft/util/math/random/Xoroshiro128PlusPlusRandomImpl;
-
gaussianGenerator
- Mappings:
Namespace Name Mixin selector official e
Ldid;e:Ldhe;
intermediary field_35151
Lnet/minecraft/class_6677;field_35151:Lnet/minecraft/class_6672;
named gaussianGenerator
Lnet/minecraft/util/math/random/Xoroshiro128PlusPlusRandom;gaussianGenerator:Lnet/minecraft/util/math/random/GaussianGenerator;
-
-
Constructor Details
-
Xoroshiro128PlusPlusRandom
public Xoroshiro128PlusPlusRandom(long seed) - Mappings:
Namespace Name Mixin selector official <init>
Ldid;<init>(J)V
intermediary <init>
Lnet/minecraft/class_6677;<init>(J)V
named <init>
Lnet/minecraft/util/math/random/Xoroshiro128PlusPlusRandom;<init>(J)V
-
Xoroshiro128PlusPlusRandom
public Xoroshiro128PlusPlusRandom(long seedLo, long seedHi) - Mappings:
Namespace Name Mixin selector official <init>
Ldid;<init>(JJ)V
intermediary <init>
Lnet/minecraft/class_6677;<init>(JJ)V
named <init>
Lnet/minecraft/util/math/random/Xoroshiro128PlusPlusRandom;<init>(JJ)V
-
-
Method Details
-
split
-
nextSplitter
- Specified by:
nextSplitter
in interfaceRandom
- Mappings:
Namespace Name Mixin selector official e
Lapd;e()Ldhp;
intermediary method_38421
Lnet/minecraft/class_5819;method_38421()Lnet/minecraft/class_6574;
named nextSplitter
Lnet/minecraft/util/math/random/Random;nextSplitter()Lnet/minecraft/util/math/random/RandomSplitter;
-
setSeed
public void setSeed(long seed) -
nextInt
public int nextInt() -
nextInt
public int nextInt(int bound) -
nextLong
public long nextLong() -
nextBoolean
public boolean nextBoolean()- Specified by:
nextBoolean
in interfaceRandom
- Mappings:
Namespace Name Mixin selector official h
Lapd;h()Z
intermediary method_43056
Lnet/minecraft/class_5819;method_43056()Z
named nextBoolean
Lnet/minecraft/util/math/random/Random;nextBoolean()Z
-
nextFloat
public float nextFloat() -
nextDouble
public double nextDouble()- Specified by:
nextDouble
in interfaceRandom
- Mappings:
Namespace Name Mixin selector official j
Lapd;j()D
intermediary method_43058
Lnet/minecraft/class_5819;method_43058()D
named nextDouble
Lnet/minecraft/util/math/random/Random;nextDouble()D
-
nextGaussian
public double nextGaussian()- Specified by:
nextGaussian
in interfaceRandom
- Mappings:
Namespace Name Mixin selector official k
Lapd;k()D
intermediary method_43059
Lnet/minecraft/class_5819;method_43059()D
named nextGaussian
Lnet/minecraft/util/math/random/Random;nextGaussian()D
-
skip
public void skip(int count) -
next
private long next(int bits) Returnsbits
upper bits of random value.- Returns:
bits
upper bits of random value- Implementation Note:
- In Xoroshiro128++, the lower bits have to be discarded in order to ensure proper randomness. For example, to obtain a double, the upper 53 bits should be used instead of the lower 53 bits.
- Mappings:
Namespace Name Mixin selector official c
Ldid;c(I)J
intermediary method_39008
Lnet/minecraft/class_6677;method_39008(I)J
named next
Lnet/minecraft/util/math/random/Xoroshiro128PlusPlusRandom;next(I)J
-