mirror of
https://hub.spigotmc.org/stash/scm/spigot/spigot.git
synced 2025-09-18 21:33:01 +00:00
55 lines
2.9 KiB
Diff
55 lines
2.9 KiB
Diff
From c230a2a6aebf945d9eff933675723a38435817a5 Mon Sep 17 00:00:00 2001
|
|
From: md_5 <git@md-5.net>
|
|
Date: Fri, 9 Jun 2017 16:29:31 +1000
|
|
Subject: [PATCH] Configurable Advancement Disabling
|
|
|
|
Allow disabling any (or all) inbuilt advancements with a configuration option.
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/AdvancementDataPlayer.java b/src/main/java/net/minecraft/server/AdvancementDataPlayer.java
|
|
index ce37682c2..08e3252de 100644
|
|
--- a/src/main/java/net/minecraft/server/AdvancementDataPlayer.java
|
|
+++ b/src/main/java/net/minecraft/server/AdvancementDataPlayer.java
|
|
@@ -212,6 +212,7 @@ public class AdvancementDataPlayer {
|
|
}
|
|
|
|
public void save() {
|
|
+ if (org.spigotmc.SpigotConfig.disableAdvancementSaving) return; // Spigot
|
|
Map<MinecraftKey, AdvancementProgress> map = Maps.newHashMap();
|
|
Iterator iterator = this.advancements.entrySet().iterator();
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/AdvancementDataWorld.java b/src/main/java/net/minecraft/server/AdvancementDataWorld.java
|
|
index 54bc56c07..d2aed1f7f 100644
|
|
--- a/src/main/java/net/minecraft/server/AdvancementDataWorld.java
|
|
+++ b/src/main/java/net/minecraft/server/AdvancementDataWorld.java
|
|
@@ -39,6 +39,12 @@ public class AdvancementDataWorld extends ResourceDataJson {
|
|
Map<MinecraftKey, Advancement.SerializedAdvancement> map1 = Maps.newHashMap();
|
|
|
|
map.forEach((minecraftkey, jsonelement) -> {
|
|
+ // Spigot start
|
|
+ if (org.spigotmc.SpigotConfig.disabledAdvancements != null && (org.spigotmc.SpigotConfig.disabledAdvancements.contains("*") || org.spigotmc.SpigotConfig.disabledAdvancements.contains(minecraftkey.toString()) || org.spigotmc.SpigotConfig.disabledAdvancements.contains(minecraftkey.getNamespace()))) {
|
|
+ return;
|
|
+ }
|
|
+ // Spigot end
|
|
+
|
|
try {
|
|
JsonObject jsonobject = ChatDeserializer.convertToJsonObject(jsonelement, "advancement");
|
|
Advancement.SerializedAdvancement advancement_serializedadvancement = Advancement.SerializedAdvancement.fromJson(jsonobject, new LootDeserializationContext(minecraftkey, this.predicateManager));
|
|
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
|
|
index f7033b08c..c44267305 100644
|
|
--- a/src/main/java/org/spigotmc/SpigotConfig.java
|
|
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
|
|
@@ -379,4 +379,11 @@ public class SpigotConfig
|
|
Bukkit.getLogger().info( "Debug logging is disabled" );
|
|
}
|
|
}
|
|
+
|
|
+ public static boolean disableAdvancementSaving;
|
|
+ public static List<String> disabledAdvancements;
|
|
+ private static void disabledAdvancements() {
|
|
+ disableAdvancementSaving = getBoolean("advancements.disable-saving", false);
|
|
+ disabledAdvancements = getList("advancements.disabled", Arrays.asList(new String[]{"minecraft:story/disabled"}));
|
|
+ }
|
|
}
|
|
--
|
|
2.34.1
|
|
|