mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
Fix lightning
This commit is contained in:
32
patches/server/0260-Fix-lightning.patch
Normal file
32
patches/server/0260-Fix-lightning.patch
Normal 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;
|
||||||
Reference in New Issue
Block a user