mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
55 lines
2.8 KiB
Diff
55 lines
2.8 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
|
|
Date: Tue, 4 Aug 2020 22:08:23 -0500
|
|
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 3751ce065a38cb55b0800f000e33b2b32c7e0f5d..c8b6c5c65a4cd3a53b300358513f96acdaaba449 100644
|
|
--- a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
|
+++ b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
|
|
@@ -2,6 +2,9 @@ package net.minecraft.world.inventory;
|
|
|
|
import java.util.Iterator;
|
|
import java.util.Map;
|
|
+
|
|
+import io.papermc.paper.adventure.PaperAdventure;
|
|
+import net.kyori.adventure.text.format.TextDecoration;
|
|
import net.minecraft.nbt.IntTag;
|
|
import net.minecraft.network.chat.TextComponent;
|
|
import net.minecraft.network.protocol.game.ClientboundContainerSetDataPacket;
|
|
@@ -276,6 +279,17 @@ public class AnvilMenu extends ItemCombinerMenu {
|
|
} else if (!this.itemName.equals(itemstack.getHoverName().getString())) {
|
|
b1 = 1;
|
|
i += b1;
|
|
+ // Purpur start
|
|
+ if (player != null && player.level.purpurConfig.anvilAllowColors && player.getBukkitEntity().hasPermission("purpur.anvil.color")) {
|
|
+ final net.kyori.adventure.text.Component renameTextComponent;
|
|
+ if (itemName.startsWith("&r") && player.getBukkitEntity().hasPermission("purpur.anvil.remove_italics")) {
|
|
+ renameTextComponent = PaperAdventure.LEGACY_AMPERSAND.deserialize(itemName.substring(2)).decoration(TextDecoration.ITALIC, false);
|
|
+ } else {
|
|
+ renameTextComponent = PaperAdventure.LEGACY_AMPERSAND.deserialize(itemName);
|
|
+ }
|
|
+ itemstack1.setHoverName(PaperAdventure.asVanilla(renameTextComponent));
|
|
+ } else
|
|
+ // Purpur end
|
|
itemstack1.setHoverName(new TextComponent(this.itemName));
|
|
}
|
|
|
|
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
index bad29754e48433e211b5c163c270fafaeb6794f4..7bc99c280d16aa22f083c5d644c4ee3bec0bae49 100644
|
|
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
@@ -301,6 +301,11 @@ public class PurpurWorldConfig {
|
|
voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt);
|
|
}
|
|
|
|
+ public boolean anvilAllowColors = false;
|
|
+ private void anvilSettings() {
|
|
+ anvilAllowColors = getBoolean("blocks.anvil.allow-colors", anvilAllowColors);
|
|
+ }
|
|
+
|
|
public boolean bedExplode = true;
|
|
public double bedExplosionPower = 5.0D;
|
|
public boolean bedExplosionFire = true;
|