diff --git a/pom.xml b/pom.xml
index fa4d8f3..62cc5ab 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
ce.ajneb97
ConditionalEvents
- 4.76.1
+ 4.76.2
21
diff --git a/src/main/java/ce/ajneb97/managers/MessagesManager.java b/src/main/java/ce/ajneb97/managers/MessagesManager.java
index 0e762bf..7ba1756 100644
--- a/src/main/java/ce/ajneb97/managers/MessagesManager.java
+++ b/src/main/java/ce/ajneb97/managers/MessagesManager.java
@@ -1,145 +1,151 @@
-package ce.ajneb97.managers;
+ package ce.ajneb97.managers;
-import ce.ajneb97.api.ConditionalEventsAPI;
-import ce.ajneb97.libs.centeredmessages.DefaultFontInfo;
-import ce.ajneb97.utils.MiniMessageUtils;
-import ce.ajneb97.utils.OtherUtils;
-import net.md_5.bungee.api.ChatColor;
-import org.bukkit.command.CommandSender;
+ import ce.ajneb97.api.ConditionalEventsAPI;
+ import ce.ajneb97.libs.centeredmessages.DefaultFontInfo;
+ import ce.ajneb97.utils.MiniMessageUtils;
+ import ce.ajneb97.utils.OtherUtils;
+ import net.md_5.bungee.api.ChatColor;
+ import org.bukkit.command.CommandSender;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
+ import java.util.regex.Matcher;
+ import java.util.regex.Pattern;
-public class MessagesManager {
+ public class MessagesManager {
- private String timeSeconds;
- private String timeMinutes;
- private String timeHours;
- private String timeDays;
- private String prefix;
- private String placeholderAPICooldownReady;
- private String placeholderAPICooldownNameError;
+ private String timeSeconds;
+ private String timeMinutes;
+ private String timeHours;
+ private String timeDays;
+ private String prefix;
+ private String placeholderAPICooldownReady;
+ private String placeholderAPICooldownNameError;
- public String getTimeSeconds() {
- return timeSeconds;
- }
+ public String getTimeSeconds() {
+ return timeSeconds;
+ }
- public void setTimeSeconds(String timeSeconds) {
- this.timeSeconds = timeSeconds;
- }
+ public void setTimeSeconds(String timeSeconds) {
+ this.timeSeconds = timeSeconds;
+ }
- public String getTimeMinutes() {
- return timeMinutes;
- }
+ public String getTimeMinutes() {
+ return timeMinutes;
+ }
- public void setTimeMinutes(String timeMinutes) {
- this.timeMinutes = timeMinutes;
- }
+ public void setTimeMinutes(String timeMinutes) {
+ this.timeMinutes = timeMinutes;
+ }
- public String getTimeHours() {
- return timeHours;
- }
+ public String getTimeHours() {
+ return timeHours;
+ }
- public void setTimeHours(String timeHours) {
- this.timeHours = timeHours;
- }
+ public void setTimeHours(String timeHours) {
+ this.timeHours = timeHours;
+ }
- public String getTimeDays() {
- return timeDays;
- }
+ public String getTimeDays() {
+ return timeDays;
+ }
- public void setTimeDays(String timeDays) {
- this.timeDays = timeDays;
- }
+ public void setTimeDays(String timeDays) {
+ this.timeDays = timeDays;
+ }
- public String getPrefix() {
- return prefix;
- }
+ public String getPrefix() {
+ return prefix;
+ }
- public void setPrefix(String prefix) {
- this.prefix = prefix;
- }
+ public void setPrefix(String prefix) {
+ this.prefix = prefix;
+ }
- public String getPlaceholderAPICooldownReady() {
- return placeholderAPICooldownReady;
- }
+ public String getPlaceholderAPICooldownReady() {
+ return placeholderAPICooldownReady;
+ }
- public void setPlaceholderAPICooldownReady(String placeholderAPICooldownReady) {
- this.placeholderAPICooldownReady = placeholderAPICooldownReady;
- }
+ public void setPlaceholderAPICooldownReady(String placeholderAPICooldownReady) {
+ this.placeholderAPICooldownReady = placeholderAPICooldownReady;
+ }
- public String getPlaceholderAPICooldownNameError() {
- return placeholderAPICooldownNameError;
- }
+ public String getPlaceholderAPICooldownNameError() {
+ return placeholderAPICooldownNameError;
+ }
- public void setPlaceholderAPICooldownNameError(String placeholderAPICooldownNameError) {
- this.placeholderAPICooldownNameError = placeholderAPICooldownNameError;
- }
+ public void setPlaceholderAPICooldownNameError(String placeholderAPICooldownNameError) {
+ this.placeholderAPICooldownNameError = placeholderAPICooldownNameError;
+ }
- public void sendMessage(CommandSender sender, String message, boolean prefix){
- if(!message.isEmpty()){
- if(ConditionalEventsAPI.getPlugin().getConfigsManager().getMainConfigManager().isUseMiniMessage()){
- MiniMessageUtils.messagePrefix(sender,message,prefix,this.prefix);
- }else{
- if(prefix){
- sender.sendMessage(getLegacyColoredMessage(this.prefix+message));
+ public void sendMessage(CommandSender sender, String message, boolean prefix){
+ if(!message.isEmpty()){
+ if(ConditionalEventsAPI.getPlugin().getConfigsManager().getMainConfigManager().isUseMiniMessage()){
+ MiniMessageUtils.messagePrefix(sender,message,prefix,this.prefix);
}else{
- sender.sendMessage(getLegacyColoredMessage(message));
+ if(prefix){
+ sender.sendMessage(getLegacyColoredMessage(this.prefix+message));
+ }else{
+ sender.sendMessage(getLegacyColoredMessage(message));
+ }
}
}
}
- }
- public static String getLegacyColoredMessage(String message) {
+ public static String getLegacyColoredMessage(String message) {
if(OtherUtils.isNew()) {
- Pattern pattern = Pattern.compile("#[a-fA-F0-9]{6}");
+ Pattern pattern = Pattern.compile("(|#)[a-fA-F0-9]{6}|&x(&[a-fA-F0-9]){6}");
Matcher match = pattern.matcher(message);
while(match.find()) {
String color = message.substring(match.start(),match.end());
- message = message.replace(color, ChatColor.of(color)+"");
+ String colorToUse = color;
+ if(color.startsWith("&x")){
+ colorToUse = "#" + color.substring(2).replace("&", "");
+ } else if(color.startsWith("")){
+ colorToUse = color.substring(1);
+ }
+ message = message.replace(color, ChatColor.of(colorToUse)+"");
match = pattern.matcher(message);
}
}
- message = ChatColor.translateAlternateColorCodes('&', message);
- return message;
+ message = ChatColor.translateAlternateColorCodes('&', message);
+ return message;
+ }
+
+ public static String getCenteredMessage(String message){
+ int CENTER_PX = 154;
+ int messagePxSize = 0;
+ boolean previousCode = false;
+ boolean isBold = false;
+
+ for(char c : message.toCharArray()){
+ if(c == '\u00A7'){
+ previousCode = true;
+ continue;
+ }else if(previousCode == true){
+ previousCode = false;
+ if(c == 'l' || c == 'L'){
+ isBold = true;
+ continue;
+ }else isBold = false;
+ }else{
+ DefaultFontInfo dFI = DefaultFontInfo.getDefaultFontInfo(c);
+ messagePxSize += isBold ? dFI.getBoldLength() : dFI.getLength();
+ messagePxSize++;
+ }
+ }
+
+ int halvedMessageSize = messagePxSize / 2;
+ int toCompensate = CENTER_PX - halvedMessageSize;
+ int spaceLength = DefaultFontInfo.SPACE.getLength() + 1;
+ int compensated = 0;
+ StringBuilder sb = new StringBuilder();
+ while(compensated < toCompensate){
+ sb.append(" ");
+ compensated += spaceLength;
+ }
+ return (sb.toString() + message);
+ }
}
-
- public static String getCenteredMessage(String message){
- int CENTER_PX = 154;
- int messagePxSize = 0;
- boolean previousCode = false;
- boolean isBold = false;
-
- for(char c : message.toCharArray()){
- if(c == 'ยง'){
- previousCode = true;
- continue;
- }else if(previousCode == true){
- previousCode = false;
- if(c == 'l' || c == 'L'){
- isBold = true;
- continue;
- }else isBold = false;
- }else{
- DefaultFontInfo dFI = DefaultFontInfo.getDefaultFontInfo(c);
- messagePxSize += isBold ? dFI.getBoldLength() : dFI.getLength();
- messagePxSize++;
- }
- }
-
- int halvedMessageSize = messagePxSize / 2;
- int toCompensate = CENTER_PX - halvedMessageSize;
- int spaceLength = DefaultFontInfo.SPACE.getLength() + 1;
- int compensated = 0;
- StringBuilder sb = new StringBuilder();
- while(compensated < toCompensate){
- sb.append(" ");
- compensated += spaceLength;
- }
- return (sb.toString() + message);
- }
-}