diff --git a/plugin/src/main/java/com/denizenscript/denizen/utilities/FormattedTextHelper.java b/plugin/src/main/java/com/denizenscript/denizen/utilities/FormattedTextHelper.java index 6e3e293f48..946f0a6b6a 100644 --- a/plugin/src/main/java/com/denizenscript/denizen/utilities/FormattedTextHelper.java +++ b/plugin/src/main/java/com/denizenscript/denizen/utilities/FormattedTextHelper.java @@ -5,6 +5,7 @@ import com.denizenscript.denizen.objects.EntityTag; import com.denizenscript.denizen.objects.ItemTag; import com.denizenscript.denizencore.utilities.CoreUtilities; +import com.denizenscript.denizencore.utilities.debugging.Debug; import net.md_5.bungee.api.ChatColor; import net.md_5.bungee.api.chat.*; @@ -179,7 +180,7 @@ public static BaseComponent[] parse(String str, ChatColor baseColor, boolean cle base.addExtra(new TextComponent(str)); // This is for compat with how Spigot does parsing of plaintext. return new BaseComponent[] { base }; } - TextComponent root = new TextComponent(str.substring(0, firstChar)); + TextComponent root = new TextComponent(); TextComponent base = new TextComponent(); if (cleanBase) { base.setBold(false); @@ -188,6 +189,10 @@ public static BaseComponent[] parse(String str, ChatColor baseColor, boolean cle base.setUnderlined(false); base.setObfuscated(false); base.setColor(baseColor); + root.setText(str.substring(0, firstChar)); + } + else { + base.setText(str.substring(0, firstChar)); } root.addExtra(base); str = str.substring(firstChar); @@ -353,6 +358,11 @@ else if (colorChar.length() == 7) { else if (innardType.equals("font")) { nextText.setFont(innardBase.get(1)); } + else { + if (Debug.verbose) { + Debug.echoError("Text parse issue: cannot interpret type '" + innardType + "' with " + innardParts.size() + " parts."); + } + } } i = endBracket; started = endBracket + 1;