Fix lightning

This commit is contained in:
BillyGalbreath 2022-01-17 18:11:05 -06:00
parent b8235eed8d
commit 90f8beddd4
No known key found for this signature in database
GPG Key ID: F7D735BF70911FF4

View File

@ -0,0 +1,32 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: BillyGalbreath <Blake.Galbreath@Gmail.com>
Date: Mon, 17 Jan 2022 18:09:10 -0600
Subject: [PATCH] Fix lightning
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 1ef08117f8249e4eb59b0a10263312e3874b4f0b..d225e7cca9f46d53991be2d2c665457f401c5945 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -804,7 +804,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
gameprofilerfiller.push("thunder");
final BlockPos.MutableBlockPos blockposition = this.chunkTickMutablePosition; // Paper - use mutable to reduce allocation rate, final to force compile fail on change
- if (!this.paperConfig.disableThunder && flag && this.isThundering() && this.spigotConfig.thunderChance > 0 && this.random.nextInt(this.spigotConfig.thunderChance) == 0 && chunk.shouldDoLightning(this.random)) { // Spigot // Paper - disable thunder // Pufferfish - replace random with shouldDoLightning
+ if (!this.paperConfig.disableThunder && flag && this.isThundering() && this.spigotConfig.thunderChance > 0 && /*this.random.nextInt(this.spigotConfig.thunderChance) == 0 &&*/ chunk.shouldDoLightning(this.random)) { // Spigot // Paper - disable thunder // Pufferfish - replace random with shouldDoLightning // Purpur
blockposition.set(this.findLightningTargetAround(this.getBlockRandomPos(j, 0, k, 15))); // Paper
if (this.isRainingAt(blockposition)) {
DifficultyInstance difficultydamagescaler = this.getCurrentDifficultyAt(blockposition);
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
index 2b697f0d0b59b5af5aa59850d5e501cde9acf577..6b0b466515f3484ab8c03c547af0c712170d20fa 100644
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
@@ -99,7 +99,7 @@ public class LevelChunk extends ChunkAccess {
// shouldDoLightning compiles down to 29 bytes, which with the default of 35 byte inlining should guarantee an inline
public final boolean shouldDoLightning(java.util.Random random) {
if (this.lightningTick-- <= 0) {
- this.lightningTick = random.nextInt(100000) << 1;
+ this.lightningTick = random.nextInt(this.level.spigotConfig.thunderChance) << 1; // Purpur
return true;
}
return false;