mirror of
https://github.com/PaperMC/Paper.git
synced 2024-10-30 23:39:58 +01:00
aa52bf9e33
Mojang made some changes to priorities in 1.17 and it seems that these changes conflict with the changes made in this patch, which in some cases appears to cause excessive rescheduling of tasks. This, however, is not confirmed as such but seems to be the behavior that we're seeing to cause this issue, if mojang has adopted the changes we suggested, then a good chunk of this patch may be unneeded, but, this needs a much better look than I'm currently able to do
56 lines
2.5 KiB
Diff
56 lines
2.5 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
|
|
Date: Sat, 24 Apr 2021 02:09:32 -0700
|
|
Subject: [PATCH] Implement methods to convert between Component and
|
|
Brigadier's Message
|
|
|
|
|
|
diff --git a/src/main/java/io/papermc/paper/brigadier/PaperBrigadierProviderImpl.java b/src/main/java/io/papermc/paper/brigadier/PaperBrigadierProviderImpl.java
|
|
new file mode 100644
|
|
index 0000000000000000000000000000000000000000..dd6012b6a097575b2d1471be5069eccee4537c0a
|
|
--- /dev/null
|
|
+++ b/src/main/java/io/papermc/paper/brigadier/PaperBrigadierProviderImpl.java
|
|
@@ -0,0 +1,30 @@
|
|
+package io.papermc.paper.brigadier;
|
|
+
|
|
+import com.mojang.brigadier.Message;
|
|
+import io.papermc.paper.adventure.PaperAdventure;
|
|
+import net.kyori.adventure.text.Component;
|
|
+import net.kyori.adventure.text.ComponentLike;
|
|
+import net.minecraft.network.chat.ComponentUtils;
|
|
+import org.checkerframework.checker.nullness.qual.NonNull;
|
|
+
|
|
+import static java.util.Objects.requireNonNull;
|
|
+
|
|
+public enum PaperBrigadierProviderImpl implements PaperBrigadierProvider {
|
|
+ INSTANCE;
|
|
+
|
|
+ PaperBrigadierProviderImpl() {
|
|
+ PaperBrigadierProvider.initialize(this);
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ public @NonNull Message message(final @NonNull ComponentLike componentLike) {
|
|
+ requireNonNull(componentLike, "componentLike");
|
|
+ return PaperAdventure.asVanilla(componentLike.asComponent());
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ public @NonNull Component componentFromMessage(final @NonNull Message message) {
|
|
+ requireNonNull(message, "message");
|
|
+ return PaperAdventure.asAdventure(ComponentUtils.fromMessage(message));
|
|
+ }
|
|
+}
|
|
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
|
index 41d1816543d0b98bd6a3ff5600cdd26257c7497a..9b5430bae4a863004aaa0fc41e7b75a7d5797b92 100644
|
|
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
|
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
|
|
@@ -220,6 +220,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
|
|
}
|
|
com.destroystokyo.paper.PaperConfig.registerCommands();
|
|
com.destroystokyo.paper.VersionHistoryManager.INSTANCE.getClass(); // load version history now
|
|
+ io.papermc.paper.brigadier.PaperBrigadierProviderImpl.INSTANCE.getClass(); // init PaperBrigadierProvider
|
|
// Paper end
|
|
|
|
this.setPvpAllowed(dedicatedserverproperties.pvp);
|