handle TODOs

This commit is contained in:
granny
2024-04-29 02:46:49 -07:00
parent 633a2e7358
commit 989502454a
12 changed files with 107 additions and 68 deletions

View File

@@ -41,7 +41,7 @@ index 6d47aa73788eef78aa6714384db879b4e907de9b..8a132fcdeb620d2e7f1c0c8b9e592ff2
}
}
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index fe250c154aed8b10e33c6b916cabedb0dda3d5d6..4077269113e6f2369194e2372d415f2f6737317c 100644
index fe250c154aed8b10e33c6b916cabedb0dda3d5d6..07d08bc8d95025fda0859c84b9ea84fe6870d004 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -299,6 +299,7 @@ public class ServerPlayer extends Player {
@@ -52,7 +52,15 @@ index fe250c154aed8b10e33c6b916cabedb0dda3d5d6..4077269113e6f2369194e2372d415f2f
// Paper start - replace player chunk loader
private final java.util.concurrent.atomic.AtomicReference<io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances> viewDistances = new java.util.concurrent.atomic.AtomicReference<>(new io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances(-1, -1, -1));
@@ -685,6 +686,7 @@ public class ServerPlayer extends Player {
@@ -609,6 +610,7 @@ public class ServerPlayer extends Player {
});
}
+ if (nbt.contains("Purpur.TPSBar")) { this.tpsBar = nbt.getBoolean("Purpur.TPSBar"); } // Purpur
}
@Override
@@ -685,6 +687,7 @@ public class ServerPlayer extends Player {
});
}
@@ -60,7 +68,7 @@ index fe250c154aed8b10e33c6b916cabedb0dda3d5d6..4077269113e6f2369194e2372d415f2f
}
// CraftBukkit start - World fallback code, either respawn location or global spawn
@@ -2986,5 +2988,13 @@ public class ServerPlayer extends Player {
@@ -2986,5 +2989,13 @@ public class ServerPlayer extends Player {
this.server.getPlayerList().respawn(this, toLevel, true, to, !toLevel.paperConfig().environment.disableTeleportationSuffocationCheck, org.bukkit.event.player.PlayerRespawnEvent.RespawnReason.DEATH);
}
}

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Fix stuck in portals
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 4077269113e6f2369194e2372d415f2f6737317c..c8f5c10952a8bf09a09604e76f7e3cc66a262b77 100644
index 07d08bc8d95025fda0859c84b9ea84fe6870d004..146c2e46e0fb9a9358484a054f716d72b9750ed8 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1347,6 +1347,7 @@ public class ServerPlayer extends Player {
@@ -1348,6 +1348,7 @@ public class ServerPlayer extends Player {
playerlist.sendPlayerPermissionLevel(this);
worldserver1.removePlayerImmediately(this, Entity.RemovalReason.CHANGED_DIMENSION);
this.unsetRemoved();

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Config to ignore nearby mobs when sleeping
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index c8f5c10952a8bf09a09604e76f7e3cc66a262b77..0da3b7bb3b597002b5e4bbc9d892a8bf4d2d6ccb 100644
index 146c2e46e0fb9a9358484a054f716d72b9750ed8..c9458551b1da419f484e9dce6b3fba8d79c2de79 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1504,7 +1504,7 @@ public class ServerPlayer extends Player {
@@ -1505,7 +1505,7 @@ public class ServerPlayer extends Player {
return entitymonster.isPreventingPlayerRest(this);
});

View File

@@ -17,10 +17,10 @@ index 94893039363b5fe2d7d0622d0592bce2c867b1c3..ef520d1dd00ae9473c1f34e2df4d8b06
// Paper end
}
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 0da3b7bb3b597002b5e4bbc9d892a8bf4d2d6ccb..65d6ca59fca1ece4c2867bc297c926e3c480cc06 100644
index c9458551b1da419f484e9dce6b3fba8d79c2de79..2b10087cf34be4c36d8596d0263d68476bb1a521 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1088,6 +1088,7 @@ public class ServerPlayer extends Player {
@@ -1089,6 +1089,7 @@ public class ServerPlayer extends Player {
}));
PlayerTeam scoreboardteam = this.getTeam();

View File

@@ -38,10 +38,10 @@ index 1dc58b41d3963c2adc58e79cd6db7e146ac049ad..83ec2e31d81d6209953252a3780552c3
}
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 65d6ca59fca1ece4c2867bc297c926e3c480cc06..2480f449d8ceeb9ac6ef55163d8e649271f5c1c0 100644
index 2b10087cf34be4c36d8596d0263d68476bb1a521..7bb82c9b652a509c2bf1a43ed82a5da709fb2cb2 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1545,7 +1545,19 @@ public class ServerPlayer extends Player {
@@ -1546,7 +1546,19 @@ public class ServerPlayer extends Player {
});
if (!this.serverLevel().canSleepThroughNights()) {

View File

@@ -6,7 +6,7 @@ Subject: [PATCH] option to disable shulker box items from dropping contents
diff --git a/src/main/java/net/minecraft/world/item/BlockItem.java b/src/main/java/net/minecraft/world/item/BlockItem.java
index 96fb69ec6db2e7c8c728435f0c537b076259b2fb..f713734efaad4312be270d808e79f0e562c84466 100644
index 96fb69ec6db2e7c8c728435f0c537b076259b2fb..167a8f6fb2354151d5e16aaa6f268f8a536c0a55 100644
--- a/src/main/java/net/minecraft/world/item/BlockItem.java
+++ b/src/main/java/net/minecraft/world/item/BlockItem.java
@@ -28,6 +28,7 @@ import net.minecraft.world.level.block.ShulkerBoxBlock;
@@ -17,14 +17,14 @@ index 96fb69ec6db2e7c8c728435f0c537b076259b2fb..f713734efaad4312be270d808e79f0e5
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.gameevent.GameEvent;
import net.minecraft.world.phys.shapes.CollisionContext;
@@ -256,6 +257,7 @@ public class BlockItem extends Item {
@Override
public void onDestroyed(ItemEntity entity) {
+ //entity.level().purpurConfig.shulkerBoxItemDropContentsWhenDestroyed // Purpur - TODO: shulkerBoxItemDropContentsWhenDestroyed
@@ -259,6 +260,7 @@ public class BlockItem extends Item {
ItemContainerContents itemcontainercontents = (ItemContainerContents) entity.getItem().set(DataComponents.CONTAINER, ItemContainerContents.EMPTY);
if (itemcontainercontents != null) {
+ if (entity.level().purpurConfig.shulkerBoxItemDropContentsWhenDestroyed && entity.getItem().is(Items.SHULKER_BOX)) // Purpur
ItemUtils.onContainerDestroyed(entity, itemcontainercontents.nonEmptyItemsCopy());
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index c0bd8bc3a11bfc5120c768cbf3e45efaf52ea6c5..604155c1c99d9f28e5efb60ee9d25cd8af274359 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java

View File

@@ -17,7 +17,7 @@ index 26c9254cef922a78deac3053f93c60037f19d31f..67ec90a2a05269a5912b3c8e64d6d416
if (environment.includeIntegrated) {
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 2480f449d8ceeb9ac6ef55163d8e649271f5c1c0..120a42a6057a9639b66be39099715a8bad1e06b5 100644
index 7bb82c9b652a509c2bf1a43ed82a5da709fb2cb2..e9d9cb47221075447aac66dd30ce6e8f08962cf5 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -300,6 +300,7 @@ public class ServerPlayer extends Player {
@@ -28,16 +28,15 @@ index 2480f449d8ceeb9ac6ef55163d8e649271f5c1c0..120a42a6057a9639b66be39099715a8b
// Paper start - replace player chunk loader
private final java.util.concurrent.atomic.AtomicReference<io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances> viewDistances = new java.util.concurrent.atomic.AtomicReference<>(new io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances(-1, -1, -1));
@@ -610,6 +611,8 @@ public class ServerPlayer extends Player {
});
@@ -611,6 +612,7 @@ public class ServerPlayer extends Player {
}
+ if (nbt.contains("Purpur.TPSBar")) { this.tpsBar = nbt.getBoolean("Purpur.TPSBar"); } // Purpur - TODO: move back up
if (nbt.contains("Purpur.TPSBar")) { this.tpsBar = nbt.getBoolean("Purpur.TPSBar"); } // Purpur
+ if (nbt.contains("Purpur.CompassBar")) { this.compassBar = nbt.getBoolean("Purpur.CompassBar"); } // Purpur
}
@Override
@@ -687,6 +690,7 @@ public class ServerPlayer extends Player {
@@ -688,6 +690,7 @@ public class ServerPlayer extends Player {
}
nbt.putBoolean("Purpur.TPSBar", this.tpsBar); // Purpur
@@ -45,7 +44,7 @@ index 2480f449d8ceeb9ac6ef55163d8e649271f5c1c0..120a42a6057a9639b66be39099715a8b
}
// CraftBukkit start - World fallback code, either respawn location or global spawn
@@ -3010,5 +3014,13 @@ public class ServerPlayer extends Player {
@@ -3011,5 +3014,13 @@ public class ServerPlayer extends Player {
public void tpsBar(boolean tpsBar) {
this.tpsBar = tpsBar;
}

View File

@@ -4,29 +4,59 @@ Date: Sat, 30 Apr 2022 10:32:40 +0200
Subject: [PATCH] Add toggle for enchant level clamping
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
index fb614432722ea27cd044d6cfd3c6a72f797979f1..39d5e156b129bfceae1f28dcdee4bcf6f7537099 100644
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
@@ -1220,6 +1220,7 @@ public final class ItemStack implements DataComponentHolder {
diff --git a/src/main/java/net/minecraft/server/Main.java b/src/main/java/net/minecraft/server/Main.java
index 5443013060b62e3bfcc51cddca96d1c0bc59fe72..8925440dbc35dbc4a7d59f13511d7afeda803260 100644
--- a/src/main/java/net/minecraft/server/Main.java
+++ b/src/main/java/net/minecraft/server/Main.java
@@ -119,6 +119,11 @@ public class Main {
JvmProfiler.INSTANCE.start(Environment.SERVER);
}
public void enchant(Enchantment enchantment, int level) {
EnchantmentHelper.updateEnchantments(this, (itemenchantments_a) -> {
+ //org.purpurmc.purpur.PurpurConfig.clampEnchantLevels // Purpur - TODO: fix clamp enchant levels option
itemenchantments_a.upgrade(enchantment, level);
});
}
diff --git a/src/main/java/net/minecraft/world/item/enchantment/EnchantmentHelper.java b/src/main/java/net/minecraft/world/item/enchantment/EnchantmentHelper.java
index 6d0363cec691996be416ab22ef9d825196399158..96a402b8c5bf083c6120950eacf7970226972b8b 100644
--- a/src/main/java/net/minecraft/world/item/enchantment/EnchantmentHelper.java
+++ b/src/main/java/net/minecraft/world/item/enchantment/EnchantmentHelper.java
@@ -35,6 +35,7 @@ public class EnchantmentHelper {
+ // Purpur start - load config files early
+ org.bukkit.configuration.file.YamlConfiguration purpurConfiguration = io.papermc.paper.configuration.PaperConfigurations.loadLegacyConfigFile((File) optionset.valueOf("purpur-settings"));
+ org.purpurmc.purpur.PurpurConfig.clampEnchantLevels = purpurConfiguration.getBoolean("settings.enchantment.clamp-levels");
+ // Purpur end - load config files early
+
io.papermc.paper.plugin.PluginInitializerManager.load(optionset); // Paper
Bootstrap.bootStrap();
Bootstrap.validate();
diff --git a/src/main/java/net/minecraft/world/item/enchantment/ItemEnchantments.java b/src/main/java/net/minecraft/world/item/enchantment/ItemEnchantments.java
index af18de11dd55938b6091f5ab183bd3fe4e8df152..2c741860afa1fa4d5798c68b84ec3fe13157ff09 100644
--- a/src/main/java/net/minecraft/world/item/enchantment/ItemEnchantments.java
+++ b/src/main/java/net/minecraft/world/item/enchantment/ItemEnchantments.java
@@ -37,7 +37,7 @@ public class ItemEnchantments implements TooltipProvider {
public static final ItemEnchantments EMPTY = new ItemEnchantments(new Object2IntAVLTreeMap<>(ENCHANTMENT_ORDER), true);
// Paper end
public static final int MAX_LEVEL = 255;
- private static final Codec<Integer> LEVEL_CODEC = Codec.intRange(0, 255);
+ private static final Codec<Integer> LEVEL_CODEC = Codec.intRange(0, (org.purpurmc.purpur.PurpurConfig.clampEnchantLevels ? 255 : 32767)); // Purpur
private static final Codec<Object2IntAVLTreeMap<Holder<Enchantment>>> LEVELS_CODEC = Codec.unboundedMap( // Paper
BuiltInRegistries.ENCHANTMENT.holderByNameCodec(), LEVEL_CODEC
)
@@ -72,7 +72,7 @@ public class ItemEnchantments implements TooltipProvider {
public static int getItemEnchantmentLevel(Enchantment enchantment, ItemStack stack) {
ItemEnchantments itemEnchantments = stack.getOrDefault(DataComponents.ENCHANTMENTS, ItemEnchantments.EMPTY);
+ //org.purpurmc.purpur.PurpurConfig.clampEnchantLevels // Purpur - TODO: fix clamp enchant levels option
return itemEnchantments.getLevel(enchantment);
}
for (Entry<Holder<Enchantment>> entry : enchantments.object2IntEntrySet()) {
int i = entry.getIntValue();
- if (i < 0 || i > 255) {
+ if (i < 0 || i > (org.purpurmc.purpur.PurpurConfig.clampEnchantLevels ? 255 : 32767)) { // Purpur
throw new IllegalArgumentException("Enchantment " + entry.getKey() + " has invalid level " + i);
}
}
@@ -169,13 +169,13 @@ public class ItemEnchantments implements TooltipProvider {
if (level <= 0) {
this.enchantments.removeInt(enchantment.builtInRegistryHolder());
} else {
- this.enchantments.put(enchantment.builtInRegistryHolder(), Math.min(level, 255));
+ this.enchantments.put(enchantment.builtInRegistryHolder(), Math.min(level, (org.purpurmc.purpur.PurpurConfig.clampEnchantLevels ? 255 : 32767)));
}
}
public void upgrade(Enchantment enchantment, int level) {
if (level > 0) {
- this.enchantments.merge(enchantment.builtInRegistryHolder(), Math.min(level, 255), Integer::max);
+ this.enchantments.merge(enchantment.builtInRegistryHolder(), Math.min(level, (org.purpurmc.purpur.PurpurConfig.clampEnchantLevels ? 255 : 32767)), Integer::max);
}
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index f0c3566e6b03c88c0cb53a90d44627d0967d13eb..c5dd0979f5bce259b920c47d974f2bf6b805c045 100644

View File

@@ -18,7 +18,7 @@ index d3c42c19a051fb3a670e541fc746b55717192a91..13dfb3e506d50c0b191baf5d05bbfc28
if (environment.includeIntegrated) {
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 24009a27151288fd0f37379732d42a3077fe6d66..2c805bcd63ef5f6d4b3df33fc25f98d05f0972f9 100644
index 826b7e2bb897609a084555632f691ddb38882058..42a623254bd2886d09eb0cfeb01dd12d0dda19cf 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -301,6 +301,7 @@ public class ServerPlayer extends Player {
@@ -29,14 +29,14 @@ index 24009a27151288fd0f37379732d42a3077fe6d66..2c805bcd63ef5f6d4b3df33fc25f98d0
// Paper start - replace player chunk loader
private final java.util.concurrent.atomic.AtomicReference<io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances> viewDistances = new java.util.concurrent.atomic.AtomicReference<>(new io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances(-1, -1, -1));
@@ -611,6 +612,7 @@ public class ServerPlayer extends Player {
});
}
@@ -613,6 +614,7 @@ public class ServerPlayer extends Player {
+ if (nbt.contains("Purpur.RamBar")) { this.ramBar = nbt.getBoolean("Purpur.RamBar"); } // Purpur
if (nbt.contains("Purpur.TPSBar")) { this.tpsBar = nbt.getBoolean("Purpur.TPSBar"); } // Purpur - TODO: move back up
if (nbt.contains("Purpur.TPSBar")) { this.tpsBar = nbt.getBoolean("Purpur.TPSBar"); } // Purpur
if (nbt.contains("Purpur.CompassBar")) { this.compassBar = nbt.getBoolean("Purpur.CompassBar"); } // Purpur
+ if (nbt.contains("Purpur.RamBar")) { this.ramBar = nbt.getBoolean("Purpur.RamBar"); } // Purpur
}
@Override
@@ -689,6 +691,7 @@ public class ServerPlayer extends Player {
});
}

View File

@@ -27,25 +27,30 @@ index ddc880ac0c8378bc1132be5deba746c1484c941c..7a8e4b9a9f2e1e5a9c38ad330c75df1f
}
}
diff --git a/src/main/java/net/minecraft/world/entity/ai/attributes/RangedAttribute.java b/src/main/java/net/minecraft/world/entity/ai/attributes/RangedAttribute.java
index f0703302e7dbbda88de8c648d20d87c55ed9b1e0..0ed72ec09443de7b62a5320841202b683a393314 100644
index f0703302e7dbbda88de8c648d20d87c55ed9b1e0..a913ebabaa5f443afa987b972355a8f8d1723c78 100644
--- a/src/main/java/net/minecraft/world/entity/ai/attributes/RangedAttribute.java
+++ b/src/main/java/net/minecraft/world/entity/ai/attributes/RangedAttribute.java
@@ -29,6 +29,7 @@ public class RangedAttribute extends Attribute {
@Override
public double sanitizeValue(double value) {
+ //if (!org.purpurmc.purpur.PurpurConfig.clampAttributes) return Double.isNaN(value) ? this.minValue : value; // Purpur // Purpur - TODO: fix clamp enchant levels option
+ if (!org.purpurmc.purpur.PurpurConfig.clampAttributes) return Double.isNaN(value) ? this.minValue : value; // Purpur
return Double.isNaN(value) ? this.minValue : Mth.clamp(value, this.minValue, this.maxValue);
}
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index 1a5133d07b3da44b54e560320d0c7461250cd4d1..c895adeef1dcf3d16eb966233dd3a593eda314a8 100644
index 1a5133d07b3da44b54e560320d0c7461250cd4d1..91bbd0ff7e67fffcfa206fcde3008d6a8e70170f 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -480,6 +480,11 @@ public class PurpurConfig {
@@ -480,6 +480,16 @@ public class PurpurConfig {
usernameValidCharactersPattern = java.util.regex.Pattern.compile(setPattern == null || setPattern.isBlank() ? defaultPattern : setPattern);
}
+ public static boolean clampAttributes = true;
+ private static void clampAttributes() {
+ clampAttributes = getBoolean("settings.clamp-attributes", clampAttributes);
+ }
+
+ public static boolean limitArmor = true;
+ private static void limitArmor() {
+ limitArmor = getBoolean("settings.limit-armor", limitArmor);

View File

@@ -31,10 +31,10 @@ index b6881d7f02ad4e9e45e947eaec54f0c6b8ff957a..b206d65750fee0a42b805de24ecbb900
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index c895adeef1dcf3d16eb966233dd3a593eda314a8..395ff2bb672c972ce2fd1cd5dc66f30b64222f0a 100644
index 91bbd0ff7e67fffcfa206fcde3008d6a8e70170f..1a7967981e03fc2bb4f278008d0e8ed52b343e95 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -545,4 +545,9 @@ public class PurpurConfig {
@@ -550,4 +550,9 @@ public class PurpurConfig {
block.fallDistanceMultiplier = fallDistanceMultiplier.floatValue();
});
}

View File

@@ -20,25 +20,22 @@ index 13dfb3e506d50c0b191baf5d05bbfc28c20be0ae..f9d0e8ee9414b3897f268ba78a1469dd
RaidCommand.register(this.dispatcher, commandRegistryAccess);
DebugPathCommand.register(this.dispatcher);
diff --git a/src/main/java/net/minecraft/server/Main.java b/src/main/java/net/minecraft/server/Main.java
index 5443013060b62e3bfcc51cddca96d1c0bc59fe72..868932a170c3052e49dc69c2e8eb3ac9c405b45f 100644
index 8925440dbc35dbc4a7d59f13511d7afeda803260..411f1f8c6be072cfc5ba88cbec38dbc4300a41d1 100644
--- a/src/main/java/net/minecraft/server/Main.java
+++ b/src/main/java/net/minecraft/server/Main.java
@@ -133,6 +133,10 @@ public class Main {
// Paper start - load config files early for access below if needed
org.bukkit.configuration.file.YamlConfiguration bukkitConfiguration = io.papermc.paper.configuration.PaperConfigurations.loadLegacyConfigFile((File) optionset.valueOf("bukkit-settings"));
org.bukkit.configuration.file.YamlConfiguration spigotConfiguration = io.papermc.paper.configuration.PaperConfigurations.loadLegacyConfigFile((File) optionset.valueOf("spigot-settings"));
+ // Purpur start
+ org.bukkit.configuration.file.YamlConfiguration purpurConfiguration = io.papermc.paper.configuration.PaperConfigurations.loadLegacyConfigFile((File) optionset.valueOf("purpur-settings"));
@@ -122,6 +122,7 @@ public class Main {
// Purpur start - load config files early
org.bukkit.configuration.file.YamlConfiguration purpurConfiguration = io.papermc.paper.configuration.PaperConfigurations.loadLegacyConfigFile((File) optionset.valueOf("purpur-settings"));
org.purpurmc.purpur.PurpurConfig.clampEnchantLevels = purpurConfiguration.getBoolean("settings.enchantment.clamp-levels");
+ org.purpurmc.purpur.PurpurConfig.registerMinecraftDebugCommands = purpurConfiguration.getBoolean("settings.register-minecraft-debug-commands");
+ // Purpur end
// Paper end - load config files early for access below if needed
// Purpur end - load config files early
if (optionset.has("initSettings")) { // CraftBukkit
io.papermc.paper.plugin.PluginInitializerManager.load(optionset); // Paper
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index 395ff2bb672c972ce2fd1cd5dc66f30b64222f0a..eab357f5eb221fd1e2b64cf7a9635e1954a9fdc7 100644
index 1a7967981e03fc2bb4f278008d0e8ed52b343e95..53188a65cf8f360abc83129ddef039ae6af0ce47 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -550,4 +550,9 @@ public class PurpurConfig {
@@ -555,4 +555,9 @@ public class PurpurConfig {
private static void playerDeathsAlwaysShowItem() {
playerDeathsAlwaysShowItem = getBoolean("settings.player-deaths-always-show-item", playerDeathsAlwaysShowItem);
}