From 3ba429c17c7e57f1315f23d1f7e5a7d3d2f29e17 Mon Sep 17 00:00:00 2001 From: violetc <58360096+s-yh-china@users.noreply.github.com> Date: Sat, 25 Jun 2022 18:05:03 +0800 Subject: [PATCH] Spectator dont get Advancement --- .../0016-Spectator-dont-get-Advancement.patch | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 patches/server/0016-Spectator-dont-get-Advancement.patch diff --git a/patches/server/0016-Spectator-dont-get-Advancement.patch b/patches/server/0016-Spectator-dont-get-Advancement.patch new file mode 100644 index 00000000..e2ab97fb --- /dev/null +++ b/patches/server/0016-Spectator-dont-get-Advancement.patch @@ -0,0 +1,44 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: violetc <58360096+s-yh-china@users.noreply.github.com> +Date: Sat, 25 Jun 2022 18:04:35 +0800 +Subject: [PATCH] Spectator dont get Advancement + + +diff --git a/src/main/java/net/minecraft/server/PlayerAdvancements.java b/src/main/java/net/minecraft/server/PlayerAdvancements.java +index 6de539d8819b9c25fbf96cd2ac8ef4a87c0fb231..d724564d5dcbcf4a46656b2c93129ba5be63b9a7 100644 +--- a/src/main/java/net/minecraft/server/PlayerAdvancements.java ++++ b/src/main/java/net/minecraft/server/PlayerAdvancements.java +@@ -49,6 +49,7 @@ import net.minecraft.server.level.ServerPlayer; + import net.minecraft.server.players.PlayerList; + import net.minecraft.util.datafix.DataFixTypes; + import net.minecraft.world.level.GameRules; ++import net.minecraft.world.level.GameType; + import org.slf4j.Logger; + import top.leavesmc.leaves.bot.Bot; + +@@ -280,6 +281,9 @@ public class PlayerAdvancements { + return false; + } + // Leaves end - bot can't get advancement ++ if (top.leavesmc.leaves.LeavesConfig.spectatorDontGetAdvancement && player.gameMode.getGameModeForPlayer() == GameType.SPECTATOR) { ++ return false; ++ } + boolean flag = false; + AdvancementProgress advancementprogress = this.getOrStartProgress(advancement); + boolean flag1 = advancementprogress.isDone(); +diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java +index af924f19ca0c77484ae3cdeb2994547b63213767..17f5bc4b4197868bf571c3bb53525dd21e6d0a46 100644 +--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java ++++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java +@@ -175,6 +175,11 @@ public final class LeavesConfig { + private static void buddingAmethystCanPushByPiston() { + buddingAmethystCanPushByPiston = getBoolean("settings.budding-amethyst-can-push-by-piston", buddingAmethystCanPushByPiston); + } ++ ++ public static boolean spectatorDontGetAdvancement = false; ++ private static void spectatorDontGetAdvancement() { ++ spectatorDontGetAdvancement = getBoolean("settings.spectator-dont-get-advancement", spectatorDontGetAdvancement); ++ } + + public static final class WorldConfig { +