9
0
mirror of https://github.com/LeavesMC/Leaves.git synced 2025-12-19 14:59:32 +00:00
Files
LeavesMC/leaves-server/patches/minecraft-patches/features/0026-Random-flatten-triangular-distribution.patch
2025-12-18 13:02:56 +08:00

40 lines
1.7 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: violetc <58360096+s-yh-china@users.noreply.github.com>
Date: Wed, 30 Nov 2022 07:32:05 +0800
Subject: [PATCH] Random flatten triangular distribution
This patch is Powered by Carpet-TIS-Addition(https://github.com/plusls/Carpet-TIS-Addition)
diff --git a/net/minecraft/util/RandomSource.java b/net/minecraft/util/RandomSource.java
index 98a54bc4de251014342cda6d0951b7fea79ce553..17a79cef7dac1b407e4e62883b4a943d172fa6b9 100644
--- a/net/minecraft/util/RandomSource.java
+++ b/net/minecraft/util/RandomSource.java
@@ -52,13 +52,25 @@ public interface RandomSource {
double nextGaussian();
+ // Leaves start - flattenTriangularDistribution
default double triangle(double center, double maxDeviation) {
- return center + maxDeviation * (this.nextDouble() - this.nextDouble());
+ if (org.leavesmc.leaves.LeavesConfig.modify.flattenTriangularDistribution) {
+ this.nextDouble();
+ return center + maxDeviation * (-1 + this.nextDouble() * 2);
+ } else {
+ return center + maxDeviation * (this.nextDouble() - this.nextDouble());
+ }
}
default float triangle(float center, float maxDeviation) {
- return center + maxDeviation * (this.nextFloat() - this.nextFloat());
+ if (org.leavesmc.leaves.LeavesConfig.modify.flattenTriangularDistribution) {
+ this.nextFloat();
+ return center + maxDeviation * (-1 + this.nextFloat() * 2);
+ } else {
+ return center + maxDeviation * (this.nextFloat() - this.nextFloat());
+ }
}
+ // Leaves end - flattenTriangularDistribution
default void consumeCount(int count) {
for (int i = 0; i < count; i++) {