From a51566b23ea849f64ba528046ca0f08a7571f230 Mon Sep 17 00:00:00 2001 From: Ben Woo <30431861+benwoo1110@users.noreply.github.com> Date: Tue, 3 Jun 2025 10:13:37 +0800 Subject: [PATCH] Disable announce advancements using share handling --- .../mvplugins/multiverse/inventories/share/Sharables.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/main/java/org/mvplugins/multiverse/inventories/share/Sharables.java b/src/main/java/org/mvplugins/multiverse/inventories/share/Sharables.java index ba0115e9..2926dbfb 100644 --- a/src/main/java/org/mvplugins/multiverse/inventories/share/Sharables.java +++ b/src/main/java/org/mvplugins/multiverse/inventories/share/Sharables.java @@ -2,6 +2,7 @@ import com.dumptruckman.minecraft.util.Logging; import com.google.common.collect.Sets; +import org.bukkit.GameRule; import org.bukkit.Material; import org.bukkit.advancement.AdvancementProgress; import org.jetbrains.annotations.ApiStatus; @@ -739,6 +740,10 @@ public boolean updatePlayer(Player player, ProfileData profile) { int totalExperience = player.getTotalExperience(); int level = player.getLevel(); float exp = player.getExp(); + boolean announceAdvancements = Boolean.TRUE.equals(player.getWorld().getGameRuleValue(GameRule.ANNOUNCE_ADVANCEMENTS)); + if (announceAdvancements) { + player.getWorld().setGameRule(GameRule.ANNOUNCE_ADVANCEMENTS, false); + } Bukkit.advancementIterator().forEachRemaining(advancement -> { AdvancementProgress advancementProgress = player.getAdvancementProgress(advancement); @@ -758,6 +763,9 @@ public boolean updatePlayer(Player player, ProfileData profile) { player.setExp(exp); player.setLevel(level); player.setTotalExperience(totalExperience); + if (announceAdvancements) { + player.getWorld().setGameRule(GameRule.ANNOUNCE_ADVANCEMENTS, true); + } return advancements != null; }