Initial commit
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
package com.alttd.fishingevent.util;
|
||||
|
||||
import com.alttd.fishingevent.objects.Rarity;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.configuration.ConfigurationSection;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.meta.SkullMeta;
|
||||
import org.bukkit.profile.PlayerProfile;
|
||||
import org.bukkit.profile.PlayerTextures;
|
||||
|
||||
import java.net.MalformedURLException;
|
||||
import java.net.URL;
|
||||
import java.util.Optional;
|
||||
import java.util.UUID;
|
||||
|
||||
public class FishConfigHelper {
|
||||
public static Optional<Rarity> getRarity(Logger logger, ConfigurationSection fishSection) {
|
||||
Rarity rarity;
|
||||
try {
|
||||
rarity = Rarity.valueOf(fishSection.getString("rarity", "REPLACE").toUpperCase());
|
||||
} catch (IllegalArgumentException e) {
|
||||
logger.warning("Invalid rarity for " + fishSection.getCurrentPath());
|
||||
return Optional.empty();
|
||||
}
|
||||
return Optional.of(rarity);
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
public static Optional<ItemStack> loadFishItem(Logger logger, ConfigurationSection fishSection) {
|
||||
ConfigurationSection fishItemSection = fishSection.getConfigurationSection("item");
|
||||
if (fishItemSection == null) {
|
||||
logger.warning("Invalid fish item section: " + fishSection.getCurrentPath() + ".item");
|
||||
return Optional.empty();
|
||||
}
|
||||
|
||||
ItemStack skull = new ItemStack(Material.PLAYER_HEAD);
|
||||
SkullMeta skullMeta = (SkullMeta) skull.getItemMeta();
|
||||
|
||||
PlayerProfile playerProfile = Bukkit.getOfflinePlayer(UUID.fromString(fishItemSection.getString("uuid", UUID.randomUUID().toString()))).getPlayerProfile();
|
||||
PlayerTextures playerTextures = playerProfile.getTextures();
|
||||
try {
|
||||
playerTextures.setSkin(new URL("http://textures.minecraft.net/texture/" + fishItemSection.getString("url-texture")));
|
||||
} catch (MalformedURLException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
playerProfile.setTextures(playerTextures);
|
||||
skullMeta.setOwnerProfile(playerProfile);
|
||||
skull.setItemMeta(skullMeta);
|
||||
return Optional.of(skull);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
package com.alttd.fishingevent.util;
|
||||
|
||||
import com.alttd.fishingevent.config.Config;
|
||||
|
||||
public class Logger {
|
||||
|
||||
private final java.util.logging.Logger logger;
|
||||
static private final String RESET = "\u001B[0m";
|
||||
static private final String GREEN = "\u001B[32m";
|
||||
static private final String TEAL = "\u001B[36m";
|
||||
|
||||
public Logger(java.util.logging.Logger logger) {
|
||||
this.logger = logger;
|
||||
}
|
||||
|
||||
public void debug(String debug, String... variables) {
|
||||
if (!Config.SETTINGS.DEBUG)
|
||||
return;
|
||||
logger.info(TEAL + replace(debug, variables) + RESET);
|
||||
}
|
||||
|
||||
public void info(String info, String... variables) {
|
||||
logger.info(GREEN + replace(info, variables) + RESET);
|
||||
}
|
||||
|
||||
public void warning(String warning, String... variables) {
|
||||
if (!Config.SETTINGS.WARNINGS)
|
||||
return;
|
||||
logger.warning(replace(warning, variables));
|
||||
}
|
||||
|
||||
public void severe(String severe, String... variables) {
|
||||
logger.severe(replace(severe, variables));
|
||||
}
|
||||
|
||||
private String replace(String text, String... variables) {
|
||||
for (String variable : variables) {
|
||||
text = text.replaceFirst("%", variable);
|
||||
}
|
||||
return text;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user