30 lines
1.2 KiB
Java
30 lines
1.2 KiB
Java
package tc.oc.commons.bukkit.broadcast;
|
|
|
|
import com.google.common.collect.ImmutableMap;
|
|
import java.util.Map;
|
|
import net.md_5.bungee.api.ChatColor;
|
|
import net.md_5.bungee.api.chat.BaseComponent;
|
|
import net.md_5.bungee.api.chat.TranslatableComponent;
|
|
import tc.oc.commons.bukkit.broadcast.model.BroadcastPrefix;
|
|
import tc.oc.commons.core.chat.Component;
|
|
|
|
public class BroadcastFormatter {
|
|
|
|
private static final Map<BroadcastPrefix, ChatColor> COLORS = ImmutableMap.<BroadcastPrefix, ChatColor>builder()
|
|
.put(BroadcastPrefix.TIP, ChatColor.BLUE)
|
|
.put(BroadcastPrefix.NEWS, ChatColor.YELLOW)
|
|
.put(BroadcastPrefix.ALERT, ChatColor.RED)
|
|
.put(BroadcastPrefix.INFO, ChatColor.LIGHT_PURPLE)
|
|
.put(BroadcastPrefix.FACT, ChatColor.GOLD)
|
|
.put(BroadcastPrefix.CHAT, ChatColor.GREEN)
|
|
.build();
|
|
|
|
public BaseComponent broadcast(BroadcastPrefix prefix, BaseComponent content) {
|
|
return new Component(ChatColor.GRAY, ChatColor.BOLD)
|
|
.extra("[")
|
|
.extra(new Component(new TranslatableComponent("prefixed." + prefix.name().toLowerCase()), COLORS.get(prefix)))
|
|
.extra("] ")
|
|
.extra(new Component(content, ChatColor.AQUA).bold(false));
|
|
}
|
|
}
|