fix more weirdness with the anvil colors patch

This commit is contained in:
BillyGalbreath
2022-11-16 12:19:27 -06:00
parent a4d8cefe26
commit 79accf69dc
3 changed files with 18 additions and 10 deletions

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Allow anvil colors
diff --git a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
index 0363d2263b2d6bd6166fa21d7849297e95eddd77..92efc8caf43661b24e95653f7a43bc4cfa0f4110 100644
index 0363d2263b2d6bd6166fa21d7849297e95eddd77..2c5a8be7799aef8d39007761bd9e3396ce5d755e 100644
--- a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
+++ b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
@@ -280,6 +280,36 @@ public class AnvilMenu extends ItemCombinerMenu {
@@ -280,6 +280,44 @@ public class AnvilMenu extends ItemCombinerMenu {
} else if (!this.itemName.equals(itemstack.getHoverName().getString())) {
b1 = 1;
i += b1;
@@ -17,9 +17,17 @@ index 0363d2263b2d6bd6166fa21d7849297e95eddd77..92efc8caf43661b24e95653f7a43bc4c
+ org.bukkit.craftbukkit.entity.CraftHumanEntity player = this.player.getBukkitEntity();
+ String name = this.itemName;
+ boolean removeItalics = false;
+ if (player.hasPermission("purpur.anvil.remove_italics") && (name.startsWith("&r") || name.startsWith("<r>") || name.startsWith("<reset>"))) {
+ name = name.substring(2);
+ removeItalics = true;
+ if (player.hasPermission("purpur.anvil.remove_italics")) {
+ if (name.startsWith("&r")) {
+ name = name.substring(2);
+ removeItalics = true;
+ } else if (name.startsWith("<r>")) {
+ name = name.substring(3);
+ removeItalics = true;
+ } else if (name.startsWith("<reset>")) {
+ name = name.substring(7);
+ removeItalics = true;
+ }
+ }
+ if (this.player.level.purpurConfig.anvilAllowColors) {
+ if (player.hasPermission("purpur.anvil.color")) {
@@ -31,7 +39,7 @@ index 0363d2263b2d6bd6166fa21d7849297e95eddd77..92efc8caf43661b24e95653f7a43bc4c
+ }
+ net.kyori.adventure.text.Component component;
+ if (this.player.level.purpurConfig.anvilColorsUseMiniMessage && player.hasPermission("purpur.anvil.minimessage")) {
+ component = net.kyori.adventure.text.minimessage.MiniMessage.miniMessage().deserialize(name);
+ component = net.kyori.adventure.text.minimessage.MiniMessage.miniMessage().deserialize(org.bukkit.ChatColor.stripColor(name));
+ } else {
+ component = net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(name);
+ }