@@ -57,41 +57,45 @@ private static StringBuilder parseParts(String translated) {
5757 if (part .isEmpty ()) {
5858 continue ;
5959 }
60- char colorCharacter = part .charAt (0 );
61- ChatColor color = ChatColor .getByChar (colorCharacter );
62-
63- String colors = getLastColors (builder .toString ());
64- if (color != null ) {
65- StringBuilder colorBuilder = new StringBuilder ();
66- for (String cc : colors .split (ChatColor .COLOR_CHAR + "" )) {
67- if (cc .isEmpty ()) {
68- continue ;
69- }
70- if (isFormat (ChatColor .getByChar (cc .charAt (0 )))) {
71- colorBuilder .append (ChatColor .COLOR_CHAR + cc );
72- }
60+ parsePart (part , builder );
61+ }
62+ return builder ;
63+ }
64+
65+ private static void parsePart (String part , StringBuilder builder ) {
66+ char colorCharacter = part .charAt (0 );
67+ ChatColor color = ChatColor .getByChar (colorCharacter );
68+
69+ String colors = getLastColors (builder .toString ());
70+ if (color != null ) {
71+ StringBuilder colorBuilder = new StringBuilder ();
72+ for (String cc : colors .split (ChatColor .COLOR_CHAR + "" )) {
73+ if (cc .isEmpty ()) {
74+ continue ;
75+ }
76+ if (isFormat (ChatColor .getByChar (cc .charAt (0 )))) {
77+ colorBuilder .append (ChatColor .COLOR_CHAR + cc );
7378 }
74- builder .append (color + colorBuilder .toString ());
75- } else {
76- if (colorCharacter == 'z' ) builder .append (ChatColor .BOLD );
77- else if (colorCharacter == 'x' ) builder .append (ChatColor .ITALIC );
78- else if (colorCharacter == 'v' ) builder .append (ChatColor .UNDERLINE );
79- else if (colorCharacter == 'q' ) builder .append (ChatColor .ITALIC );
80- else if (colorCharacter == 'm' ) builder .append (ChatColor .STRIKETHROUGH );
81- else if (colorCharacter == 'w' ) builder .append (ChatColor .MAGIC );
82- else if (colorCharacter == 'Z' ) colors = colors .replace (ChatColor .BOLD .toString (), "" );
83- else if (colorCharacter == 'X' ) colors = colors .replace (ChatColor .ITALIC .toString (), "" );
84- else if (colorCharacter == 'V' ) colors = colors .replace (ChatColor .UNDERLINE .toString (), "" );
85- else if (colorCharacter == 'Q' ) colors = colors .replace (ChatColor .ITALIC .toString (), "" );
86- else if (colorCharacter == 'M' ) colors = colors .replace (ChatColor .STRIKETHROUGH .toString (), "" );
87- else if (colorCharacter == 'W' ) colors = colors .replace (ChatColor .MAGIC .toString (), "" );
88- if (Character .isUpperCase (colorCharacter )) builder .append (ChatColor .RESET + colors );
89- }
90- if (part .length () > 1 ) {
91- builder .append (part .substring (1 ));
9279 }
80+ builder .append (color + colorBuilder .toString ());
81+ } else {
82+ if (colorCharacter == 'z' ) builder .append (ChatColor .BOLD );
83+ else if (colorCharacter == 'x' ) builder .append (ChatColor .ITALIC );
84+ else if (colorCharacter == 'v' ) builder .append (ChatColor .UNDERLINE );
85+ else if (colorCharacter == 'q' ) builder .append (ChatColor .ITALIC );
86+ else if (colorCharacter == 'm' ) builder .append (ChatColor .STRIKETHROUGH );
87+ else if (colorCharacter == 'w' ) builder .append (ChatColor .MAGIC );
88+ else if (colorCharacter == 'Z' ) colors = colors .replace (ChatColor .BOLD .toString (), "" );
89+ else if (colorCharacter == 'X' ) colors = colors .replace (ChatColor .ITALIC .toString (), "" );
90+ else if (colorCharacter == 'V' ) colors = colors .replace (ChatColor .UNDERLINE .toString (), "" );
91+ else if (colorCharacter == 'Q' ) colors = colors .replace (ChatColor .ITALIC .toString (), "" );
92+ else if (colorCharacter == 'M' ) colors = colors .replace (ChatColor .STRIKETHROUGH .toString (), "" );
93+ else if (colorCharacter == 'W' ) colors = colors .replace (ChatColor .MAGIC .toString (), "" );
94+ if (Character .isUpperCase (colorCharacter )) builder .append (ChatColor .RESET + colors );
95+ }
96+ if (part .length () > 1 ) {
97+ builder .append (part .substring (1 ));
9398 }
94- return builder ;
9599 }
96100
97101 private static String replaceWith (String message , String quot , String pre , String suf ) {
0 commit comments