@@ -103,7 +103,7 @@ protected Message(@NotNull String message, @NotNull MessageReplacement... replac
103103 * @return The replacements
104104 */
105105 public @ NotNull String [] getReplacements (@ NotNull Locales locales , @ Nullable CommandIssuer commandIssuer ) {
106- return getReplacements ( );
106+ return toReplacementsArray ( locales , commandIssuer , replacements );
107107 }
108108
109109 /**
@@ -152,7 +152,7 @@ protected Message(@NotNull String message, @NotNull MessageReplacement... replac
152152 * @return The formatted, localized message
153153 */
154154 public @ NotNull String formatted (@ NotNull CommandIssuer commandIssuer ) {
155- return formatted ();
155+ return formatted (commandIssuer . getManager (). getLocales (), commandIssuer );
156156 }
157157
158158 /**
@@ -166,7 +166,11 @@ protected Message(@NotNull String message, @NotNull MessageReplacement... replac
166166 * @return The formatted, localized message
167167 */
168168 public @ NotNull String formatted (@ NotNull Locales locales , @ Nullable CommandIssuer commandIssuer ) {
169- return formatted ();
169+ String [] parsedReplacements = getReplacements (locales , commandIssuer );
170+ if (parsedReplacements .length == 0 ) {
171+ return raw ();
172+ }
173+ return ACFUtil .replaceStrings (message , parsedReplacements );
170174 }
171175
172176 private static String [] toReplacementsArray (@ NotNull MessageReplacement ... replacements ) {
@@ -178,4 +182,19 @@ private static String[] toReplacementsArray(@NotNull MessageReplacement... repla
178182 }
179183 return replacementsArray ;
180184 }
185+
186+ private static String [] toReplacementsArray (
187+ @ NotNull Locales locales ,
188+ @ Nullable CommandIssuer commandIssuer ,
189+ @ NotNull MessageReplacement ... replacements ) {
190+ String [] replacementsArray = new String [replacements .length * 2 ];
191+ int i = 0 ;
192+ for (MessageReplacement replacement : replacements ) {
193+ replacementsArray [i ++] = replacement .getKey ();
194+ replacementsArray [i ++] = replacement .getReplacement ().fold (
195+ str -> str ,
196+ message -> message .formatted (locales , commandIssuer ));
197+ }
198+ return replacementsArray ;
199+ }
181200}
0 commit comments