PaperMC/patches/api/0333-Multi-Block-Change-API.patch

41 lines
2 KiB
Diff
Raw Permalink Normal View History

2022-01-20 18:50:50 +01:00
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Brody Beckwith <brody@beckwith.dev>
Date: Fri, 14 Jan 2022 00:40:42 -0500
Subject: [PATCH] Multi Block Change API
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
2024-04-23 19:02:08 +02:00
index b177daa7a974125dc4ccf1bc6d119ad42dba3514..cd2d59a8a098227ec7725d121a63cc90e2a139fa 100644
2022-01-20 18:50:50 +01:00
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
2024-04-23 19:02:08 +02:00
@@ -939,6 +939,29 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
2022-01-20 18:50:50 +01:00
*/
public void sendBlockDamage(@NotNull Location loc, float progress);
+ // Paper start
+ /**
+ * Send multiple block changes. This fakes a multi block change packet for each
+ * chunk section that a block change occurs. This will not actually change the world in any way.
+ *
+ * @param blockChanges A map of the positions you want to change to their new block data
2022-01-20 18:50:50 +01:00
+ */
2023-06-08 22:56:13 +02:00
+ void sendMultiBlockChange(@NotNull Map<? extends io.papermc.paper.math.Position, BlockData> blockChanges);
2022-01-20 18:50:50 +01:00
+
+ /**
+ * Send multiple block changes. This fakes a multi block change packet for each
+ * chunk section that a block change occurs. This will not actually change the world in any way.
+ *
+ * @param blockChanges A map of the positions you want to change to their new block data
2022-01-20 18:50:50 +01:00
+ * @param suppressLightUpdates Whether to suppress light updates or not
2023-06-08 22:56:13 +02:00
+ * @deprecated suppressLightUpdates is no longer available in 1.20+, use {@link #sendMultiBlockChange(Map)}
2022-01-20 18:50:50 +01:00
+ */
2023-06-08 22:56:13 +02:00
+ @Deprecated
+ default void sendMultiBlockChange(@NotNull Map<? extends io.papermc.paper.math.Position, BlockData> blockChanges, boolean suppressLightUpdates) {
+ this.sendMultiBlockChange(blockChanges);
+ }
2022-01-20 18:50:50 +01:00
+ // Paper end
+
/**
* Send block damage. This fakes block break progress at a certain location
* sourced by the provided entity. This will not actually change the block's