From 7bc1dab51643b377ed5ff5f9d30bba781b709633 Mon Sep 17 00:00:00 2001 From: Aya <31237389+tal5@users.noreply.github.com> Date: Thu, 22 Dec 2022 03:47:48 +0200 Subject: [PATCH] Allow removing custom names (#2416) --- .../properties/entity/EntityCustomName.java | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/plugin/src/main/java/com/denizenscript/denizen/objects/properties/entity/EntityCustomName.java b/plugin/src/main/java/com/denizenscript/denizen/objects/properties/entity/EntityCustomName.java index 7918183add..366f638fe1 100644 --- a/plugin/src/main/java/com/denizenscript/denizen/objects/properties/entity/EntityCustomName.java +++ b/plugin/src/main/java/com/denizenscript/denizen/objects/properties/entity/EntityCustomName.java @@ -2,9 +2,8 @@ import com.denizenscript.denizen.objects.EntityTag; import com.denizenscript.denizen.utilities.PaperAPITools; -import com.denizenscript.denizencore.objects.core.ElementTag; -import com.denizenscript.denizencore.objects.Mechanism; import com.denizenscript.denizencore.objects.ObjectTag; +import com.denizenscript.denizencore.objects.core.ElementTag; import com.denizenscript.denizencore.objects.properties.Property; import com.denizenscript.denizencore.objects.properties.PropertyParser; import com.denizenscript.denizencore.utilities.CoreUtilities; @@ -24,10 +23,6 @@ public static EntityCustomName getFrom(ObjectTag entity) { } } - public static final String[] handledMechs = new String[] { - "custom_name" - }; - private EntityCustomName(EntityTag ent) { entity = ent; } @@ -61,10 +56,6 @@ public static void register() { } return new ElementTag(name, true); }); - } - - @Override - public void adjust(Mechanism mechanism) { // <--[mechanism] // @object EntityTag @@ -72,12 +63,12 @@ public void adjust(Mechanism mechanism) { // @input ElementTag // @description // Sets the custom name (equivalent to a name tag item) of the entity. + // Provide no input to remove the custom name. // @tags // // --> - if (mechanism.matches("custom_name")) { - PaperAPITools.instance.setCustomName(entity.getBukkitEntity(), CoreUtilities.clearNBSPs(mechanism.getValue().asString())); - } - + PropertyParser.registerMechanism(EntityCustomName.class, "custom_name", (object, mechanism) -> { + PaperAPITools.instance.setCustomName(object.entity.getBukkitEntity(), mechanism.value != null ? CoreUtilities.clearNBSPs(mechanism.getValue().asString()) : null); + }); } }