Raxen/src/main/java/gq/unurled/raxen/utils/Utils.java

170 lines
5.3 KiB
Java
Raw Normal View History

2021-11-27 10:49:11 +00:00
package gq.unurled.raxen.utils;
2021-11-20 10:33:03 +00:00
2021-11-27 10:49:11 +00:00
import gq.unurled.raxen.Raxen;
2021-11-20 10:33:03 +00:00
import net.kyori.adventure.text.Component;
2022-03-19 23:35:06 +00:00
import net.kyori.adventure.text.TextComponent;
import net.kyori.adventure.text.minimessage.MiniMessage;
import net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer;
2022-02-25 10:25:50 +00:00
import org.bukkit.Bukkit;
2021-11-20 10:33:03 +00:00
import org.bukkit.Material;
2022-03-19 23:35:06 +00:00
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.file.FileConfiguration;
2021-11-20 10:33:03 +00:00
import org.bukkit.entity.Player;
import org.bukkit.inventory.Inventory;
2021-11-20 10:33:03 +00:00
import org.bukkit.inventory.ItemStack;
public class Utils {
2022-03-19 23:35:06 +00:00
/**
*
* @param stringToComponent a string
* @return a component
*/
public static Component colorComp(String stringToComponent) {
return MiniMessage.miniMessage().deserialize(stringToComponent);
}
2021-11-20 10:33:03 +00:00
2022-03-19 23:35:06 +00:00
public static TextComponent colorTextComp(String stringToComponent) {
return (TextComponent) MiniMessage.miniMessage().deserialize(stringToComponent);
}
/**
*
* @param string a string
* @return a colored string
*/
public static String colorString(String string) {
return PlainTextComponentSerializer.plainText().serialize(MiniMessage.miniMessage().deserialize(string));
2021-11-20 10:33:03 +00:00
}
public static String decolor(String string) {
2022-03-19 23:35:06 +00:00
return MiniMessage.miniMessage().stripTags(string);
2021-11-20 10:33:03 +00:00
}
2022-02-25 10:25:50 +00:00
/**
* debug output to console if debug is set to true in config
* @param main Raxen instance
* @param strings ouptut to console
*/
public static void debug(Raxen main, String... strings) {
FileConfiguration config = main.getConfig();
if(config.getBoolean("debug")) {
for(String string : strings) {
2022-03-19 23:35:06 +00:00
main.getLogger().info(string);
}
}
}
2022-02-25 10:25:50 +00:00
/**
* debug output to console if debug is set to true in config
* @param strings output to console
*/
public static void debug(String... strings) {
Raxen main = (Raxen) Bukkit.getPluginManager().getPlugin("Raxen");
FileConfiguration config = main.getConfig();
if(config.getBoolean("debug")) {
for(String string : strings) {
2022-03-19 23:35:06 +00:00
main.getLogger().info(string);
2022-02-25 10:25:50 +00:00
}
}
}
2022-03-19 23:35:06 +00:00
2022-02-25 10:25:50 +00:00
/**
* debug output to console if debug is set to true in config
* @param config main file config
* @param strings ouput to console
*/
public static void debug(FileConfiguration config, String... strings) {
2022-03-19 23:35:06 +00:00
Raxen main = (Raxen) Bukkit.getPluginManager().getPlugin("Raxen");
2022-02-25 10:25:50 +00:00
if(config.getBoolean("debug")) {
for(String string : strings) {
2022-03-19 23:35:06 +00:00
main.getLogger().info(string);
2022-02-25 10:25:50 +00:00
}
}
}
2022-03-19 23:35:06 +00:00
public static void log(Raxen main, String... strings) {
for(String string : strings) {
main.getLogger().info(string);
}
}
2021-11-20 10:33:03 +00:00
public static void log(String... strings) {
2022-03-19 23:35:06 +00:00
Raxen main = (Raxen) Bukkit.getPluginManager().getPlugin("Raxen");
assert main != null;
2021-11-20 10:33:03 +00:00
for(String string : strings) {
2022-03-19 23:35:06 +00:00
main.getLogger().info(string);
2021-11-20 10:33:03 +00:00
}
}
public static void warn(String... strings) {
2022-03-19 23:35:06 +00:00
Raxen main = (Raxen) Bukkit.getPluginManager().getPlugin("Raxen");
assert main != null;
2021-11-20 10:33:03 +00:00
for(String string : strings) {
2022-03-19 23:35:06 +00:00
main.getLogger().warning(string);
}
}
public static void warn(Raxen main, String... strings) {
for(String string : strings) {
main.getLogger().warning(string);
2021-11-20 10:33:03 +00:00
}
}
public static void error(String... strings) {
2022-03-19 23:35:06 +00:00
Raxen main = (Raxen) Bukkit.getPluginManager().getPlugin("Raxen");
assert main != null;
for(String string : strings) {
main.getLogger().severe(string);
}
}
public static void error(Raxen main, String... strings) {
2021-11-20 10:33:03 +00:00
for(String string : strings) {
2022-03-19 23:35:06 +00:00
main.getLogger().severe(string);
2021-11-20 10:33:03 +00:00
}
}
public static void msgPlayer(Player player, String... strings) {
for(String string : strings) {
2022-03-19 23:35:06 +00:00
player.sendMessage(colorComp(string));
}
}
public static void msgPlayer(Player player, TextComponent strings) {
player.sendMessage(colorComp(PlainTextComponentSerializer.plainText().serialize(strings)));
}
public static void msgSender(CommandSender player, TextComponent strings) {
player.sendMessage(colorComp(PlainTextComponentSerializer.plainText().serialize(strings)));
}
public static void msgSender(CommandSender player, String... strings) {
for(String string : strings) {
player.sendMessage(colorComp(string));
2021-11-20 10:33:03 +00:00
}
}
public static Inventory fillGreyPane(Inventory inv) {
Integer in = -1;
for (ItemStack it : inv) {
in++;
if (it == null || it.getType() == Material.AIR) {
inv.setItem(in, Items.greyPane());
}
}
return inv;
}
2021-11-20 10:33:03 +00:00
public static Component noPerms() {
2022-03-19 23:35:06 +00:00
return colorComp("<red>You don't have the permission to use this feature.");
2021-11-20 10:33:03 +00:00
}
public static Component error() {
2022-03-19 23:35:06 +00:00
return colorComp("<red>An Error has occurred. Please retry or contact an Admin.");
2021-11-20 10:33:03 +00:00
}
}