1717
1818import java .util .ArrayList ;
1919import java .util .List ;
20+ import java .util .logging .Logger ;
2021import java .util .regex .Pattern ;
2122
2223public class Set extends SubCommand {
23- MiniMessage serializer = MiniMessage . builder (). tags ( TagResolver . empty ()). build ();
24+ Logger logger = SimpleNicks . getSimpleNicksLogger ();
2425
2526 public Set (String commandName , Permission basicPermission , Permission adminPermission , boolean consoleRunNoPlayer ) {
2627 super (commandName , basicPermission , adminPermission , consoleRunNoPlayer );
@@ -76,8 +77,6 @@ private boolean setPlayerNick(Player player, Component nickComponent) {
7677 }
7778
7879
79-
80-
8180 @ Override
8281 public ArrayList <String > tabComplete (CommandSender sender , String [] args , Player player ) {
8382 if (player == null ) {
@@ -90,26 +89,21 @@ public ArrayList<String> tabComplete(CommandSender sender, String[] args, Player
9089 private Component getNickComponent (CommandSender user , String nick ) {
9190 int permissionCount = 0 ;
9291 String strippedMessage = miniMessage .stripTags (nick );
93- TagResolver .Builder resolverBuilder = TagResolver .builder ();
94- Component finalNick = null ;
92+ TagResolver .Builder resolver = TagResolver .builder ();
9593 for (TagPermission tagPermission : TagPermission .values ()) {
96- if (!user .hasPermission (tagPermission .getPermission ())) {
97- continue ;
94+ if (user .hasPermission (tagPermission .getPermission ())) {
95+ permissionCount ++;
96+ resolver .resolver (tagPermission .getTagResolver ());
9897 }
99- permissionCount ++;
100- resolverBuilder .resolver (tagPermission .getTagResolver ());
101- finalNick = serializer .deserialize (nick , tagPermission .getTagResolver ());
10298 }
10399 if (permissionCount == 0 ) {
104100 return Component .text (strippedMessage );
105101 }
106- String plainNick = PlainTextComponentSerializer .plainText ().serialize (finalNick );
107- if (!plainNick .equals (strippedMessage )) {
108- return null ;
109- }
110- return finalNick ;
102+ MiniMessage parser = MiniMessage .builder ().tags (resolver .build ()).build ();
103+ return parser .deserialize (nick );
111104 }
112105
106+
113107 private boolean passesChecks (CommandSender sender , String nickname , Player player ) {
114108 String strippedMessage = miniMessage .stripTags (nickname );
115109 Pattern regexPattern = ConfigHandler .getInstance ().getRegex ();
0 commit comments