MajekDev/HexNicks

Allow `/nickcolor #facade` as `/nickcolor <#facade>`

funnyboy-roks opened this issue · 2 comments

Is your feature request related to a problem? Please describe.
Soooo many people are confused about /nickcolor needing the angle brackets (<>) for the command

Describe the solution you'd like
Interpret #rrggbb as <#rrggbb> and red as <red>

Describe alternatives you've considered
The only other way that could benefit users would be to give a more helpful error message that is not just "You may only includes color codes."

Potential Implementation
Check if the argument has <> and add them if it doesn't before it's parsed, this would be a bit of a dirty implementation, but it would work well, and shouldn't break anything else.

Basically, we take this

String nickInput = String.join(" ", args);

and add

if (!nickInput.startsWith("<") && !nickInput.endsWith(">")) {
    nickInput = '<' + nickInput + '>';
}

If there is a concern about that failing, then we could put the "corrected" version in a new variable and use the old one if the colour code is detected to be wrong.

I'd be happy to open a PR with these changes, if feature is desired.

Love the idea!

Because of the legacy format, I think the best way of doing this would be to try to parse what they originally wrote, and if that fails then try to parse it by adding <> around it.

Oh yeah, I forgot about legacy 😞. Doing the original first should work, that would also catch edge cases where the player's username is a colour.