From 423cccdc8d76724e17f5a41e8cbd89f33309d894 Mon Sep 17 00:00:00 2001 From: Bukkit/Spigot Date: Sun, 31 Mar 2013 19:16:53 -0500 Subject: [PATCH] Add method to update state without physics update. Addresses BUKKIT-3939 By: Travis Watkins --- .../main/java/org/bukkit/block/BlockState.java | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/paper-api/src/main/java/org/bukkit/block/BlockState.java b/paper-api/src/main/java/org/bukkit/block/BlockState.java index 08b10e6fa6..bdfae5e2aa 100644 --- a/paper-api/src/main/java/org/bukkit/block/BlockState.java +++ b/paper-api/src/main/java/org/bukkit/block/BlockState.java @@ -138,6 +138,18 @@ public interface BlockState extends Metadatable { */ boolean update(); + /** + * Attempts to update the block represented by this state, setting it to the + * new values as defined by this state. + *

+ * This has the same effect as calling update(force, true). That is to say, + * this will trigger a physics update to surrounding blocks. + * + * @param force true to forcefully set the state + * @return true if the update was successful, otherwise false + */ + boolean update(boolean force); + /** * Attempts to update the block represented by this state, setting it to the * new values as defined by this state. @@ -148,11 +160,15 @@ public interface BlockState extends Metadatable { *

* If force is true, it will set the type of the block to match the new state, * set the state data and then return true. + *

+ * If applyPhysics is true, it will trigger a physics update on surrounding + * blocks which could cause them to update or disappear. * * @param force true to forcefully set the state + * @param applyPhysics false to cancel updating physics on surrounding blocks * @return true if the update was successful, otherwise false */ - boolean update(boolean force); + boolean update(boolean force, boolean applyPhysics); /** * @return The data as a raw byte.