Merge branch 'ver/1.21.11' into feat/lightning-affects-blocks

This commit is contained in:
granny
2025-12-17 20:22:53 -08:00
796 changed files with 38036 additions and 49832 deletions

View File

@@ -0,0 +1,25 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: granny <contact@granny.dev>
Date: Wed, 17 Dec 2025 20:20:00 -0800
Subject: [PATCH] lightning transforms blocks
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index 690181c032667326c2e9c7edf678b2cdcd319c64..3d7a26bed64c53be69eb19d14c1991dee224da46 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -1962,7 +1962,13 @@ public class CraftEventFactory {
}
public static LightningStrikeEvent callLightningStrikeEvent(LightningStrike entity, LightningStrikeEvent.Cause cause) {
- LightningStrikeEvent event = new LightningStrikeEvent(entity.getWorld(), entity, cause);
+ // Purpur start - lightning transforms blocks
+ List<CraftBlockState> blocks = ((org.bukkit.craftbukkit.entity.CraftLightningStrike) entity).getHandle().blocks;
+ LightningStrikeEvent event = new LightningStrikeEvent(entity.getWorld(), entity, cause, (List<org.bukkit.block.BlockState>) (List) blocks);
+ if (!event.getBlocks().equals(blocks)) {
+ ((org.bukkit.craftbukkit.entity.CraftLightningStrike) entity).getHandle().blocks = (List<org.bukkit.craftbukkit.block.CraftBlockState>) (List) event.getBlocks();
+ }
+ // Purpur end - lightning transforms blocks
Bukkit.getPluginManager().callEvent(event);
return event;
}