mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-20 09:57:43 +01:00
Fix paper's deserializer removing italics on anvils
This commit is contained in:
@@ -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
|
diff --git a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||||
index 0363d2263b2d6bd6166fa21d7849297e95eddd77..2c5a8be7799aef8d39007761bd9e3396ce5d755e 100644
|
index 0363d2263b2d6bd6166fa21d7849297e95eddd77..d39b86b90aefab85b92e980f56f690bdfb9da82f 100644
|
||||||
--- a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
--- a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||||
+++ b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
+++ b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||||
@@ -280,6 +280,44 @@ public class AnvilMenu extends ItemCombinerMenu {
|
@@ -280,6 +280,54 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||||
} else if (!this.itemName.equals(itemstack.getHoverName().getString())) {
|
} else if (!this.itemName.equals(itemstack.getHoverName().getString())) {
|
||||||
b1 = 1;
|
b1 = 1;
|
||||||
i += b1;
|
i += b1;
|
||||||
@@ -31,10 +31,20 @@ index 0363d2263b2d6bd6166fa21d7849297e95eddd77..2c5a8be7799aef8d39007761bd9e3396
|
|||||||
+ }
|
+ }
|
||||||
+ if (this.player.level.purpurConfig.anvilAllowColors) {
|
+ if (this.player.level.purpurConfig.anvilAllowColors) {
|
||||||
+ if (player.hasPermission("purpur.anvil.color")) {
|
+ if (player.hasPermission("purpur.anvil.color")) {
|
||||||
+ name = name.replaceAll("(?i)&([0-9a-fr])", "\u00a7$1");
|
+ java.util.regex.Matcher matcher = java.util.regex.Pattern.compile("(?i)&([0-9a-fr])").matcher(name);
|
||||||
|
+ while (matcher.find()) {
|
||||||
|
+ String match = matcher.group(1);
|
||||||
|
+ name = name.replace("&" + match, "\u00a7" + match.toLowerCase(java.util.Locale.ROOT));
|
||||||
|
+ }
|
||||||
|
+ //name = name.replaceAll("(?i)&([0-9a-fr])", "\u00a7$1");
|
||||||
+ }
|
+ }
|
||||||
+ if (player.hasPermission("purpur.anvil.format")) {
|
+ if (player.hasPermission("purpur.anvil.format")) {
|
||||||
+ name = name.replaceAll("(?i)&([l-or])", "\u00a7$1");
|
+ java.util.regex.Matcher matcher = java.util.regex.Pattern.compile("(?i)&([l-or])").matcher(name);
|
||||||
|
+ while (matcher.find()) {
|
||||||
|
+ String match = matcher.group(1);
|
||||||
|
+ name = name.replace("&" + match, "\u00a7" + match.toLowerCase(java.util.Locale.ROOT));
|
||||||
|
+ }
|
||||||
|
+ //name = name.replaceAll("(?i)&([l-or])", "\u00a7$1");
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+ net.kyori.adventure.text.Component component;
|
+ net.kyori.adventure.text.Component component;
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ index 7c012f1e37b0085c0939797b0dae8996b4953ab8..155b0a1aa58b891e98a55e10f112f611
|
|||||||
++i;
|
++i;
|
||||||
} else if (targets.size() == 1) {
|
} else if (targets.size() == 1) {
|
||||||
diff --git a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
diff --git a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||||
index 2c5a8be7799aef8d39007761bd9e3396ce5d755e..277bd715c0c1dc3724718f643a279b36b8cb1ebc 100644
|
index d39b86b90aefab85b92e980f56f690bdfb9da82f..eb942aa4cea106f2cd5eaf1e55f96373fe7bea8d 100644
|
||||||
--- a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
--- a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||||
+++ b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
+++ b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||||
@@ -209,7 +209,8 @@ public class AnvilMenu extends ItemCombinerMenu {
|
@@ -209,7 +209,8 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||||
@@ -60,7 +60,7 @@ index 2c5a8be7799aef8d39007761bd9e3396ce5d755e..277bd715c0c1dc3724718f643a279b36
|
|||||||
i2 = enchantment.getMaxLevel();
|
i2 = enchantment.getMaxLevel();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -360,7 +361,7 @@ public class AnvilMenu extends ItemCombinerMenu {
|
@@ -370,7 +371,7 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||||
sendAllDataToRemote(); // CraftBukkit - SPIGOT-6686: Always send completed inventory to stay in sync with client
|
sendAllDataToRemote(); // CraftBukkit - SPIGOT-6686: Always send completed inventory to stay in sync with client
|
||||||
this.broadcastChanges();
|
this.broadcastChanges();
|
||||||
// Purpur start
|
// Purpur start
|
||||||
@@ -70,7 +70,7 @@ index 2c5a8be7799aef8d39007761bd9e3396ce5d755e..277bd715c0c1dc3724718f643a279b36
|
|||||||
((ServerPlayer) player).connection.send(new ClientboundContainerSetDataPacket(containerId, 0, cost.get()));
|
((ServerPlayer) player).connection.send(new ClientboundContainerSetDataPacket(containerId, 0, cost.get()));
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
|
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
|
||||||
index 2b2115d218a279245f8be5e0c93a2b6200f81241..f7017c330ee2d8e17ab2be294865d7e3fd796456 100644
|
index 9e308183917884dcb2f8831324d45c9aeef55051..c124f2f3a3cd5a4abfa07d47a230e1730c19455a 100644
|
||||||
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
|
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
|
||||||
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
|
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
|
||||||
@@ -1153,6 +1153,12 @@ public final class ItemStack {
|
@@ -1153,6 +1153,12 @@ public final class ItemStack {
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Make anvil cumulative cost configurable
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
diff --git a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||||
index 277bd715c0c1dc3724718f643a279b36b8cb1ebc..7e518a1382b2bbb5151c8bb3c651c2646b2f2f1b 100644
|
index eb942aa4cea106f2cd5eaf1e55f96373fe7bea8d..7c52c048fb9b265d57f57f0c69796668235a26fd 100644
|
||||||
--- a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
--- a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||||
+++ b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
+++ b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
||||||
@@ -370,7 +370,7 @@ public class AnvilMenu extends ItemCombinerMenu {
|
@@ -380,7 +380,7 @@ public class AnvilMenu extends ItemCombinerMenu {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int calculateIncreasedRepairCost(int cost) {
|
public static int calculateIncreasedRepairCost(int cost) {
|
||||||
|
|||||||
Reference in New Issue
Block a user