diff options
Diffstat (limited to 'src/main/java/dev/tylerm/khs/configuration/Items.java')
-rw-r--r-- | src/main/java/dev/tylerm/khs/configuration/Items.java | 220 |
1 files changed, 0 insertions, 220 deletions
diff --git a/src/main/java/dev/tylerm/khs/configuration/Items.java b/src/main/java/dev/tylerm/khs/configuration/Items.java deleted file mode 100644 index af8216d..0000000 --- a/src/main/java/dev/tylerm/khs/configuration/Items.java +++ /dev/null @@ -1,220 +0,0 @@ -package dev.tylerm.khs.configuration; - -import com.cryptomorin.xseries.XItemStack; -import dev.tylerm.khs.Main; -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.inventory.ItemStack; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import java.util.ArrayList; -import java.util.List; - -public class Items { - - public static List<ItemStack> HIDER_ITEMS, SEEKER_ITEMS; - public static ItemStack - HIDER_HELM, SEEKER_HELM, - HIDER_CHEST, SEEKER_CHEST, - HIDER_LEGS, SEEKER_LEGS, - HIDER_BOOTS, SEEKER_BOOTS; - - public static List<PotionEffect> HIDER_EFFECTS, SEEKER_EFFECTS; - - public static void loadItems() { - - ConfigManager manager = ConfigManager.create("items.yml"); - - SEEKER_ITEMS = new ArrayList<>(); - SEEKER_HELM = null; - SEEKER_CHEST = null; - SEEKER_LEGS = null; - SEEKER_BOOTS = null; - - ConfigurationSection SeekerItems = manager.getConfigurationSection("items.seeker"); - - for (int i = 0; i < 9; i++) { - ConfigurationSection section = SeekerItems.getConfigurationSection(String.valueOf(i)); - if (section == null) { - SEEKER_ITEMS.add(null); - continue; - } - ItemStack item = createItem(section); - SEEKER_ITEMS.add(item); - } - - ConfigurationSection SeekerHelmet = SeekerItems.getConfigurationSection("helmet"); - if (SeekerHelmet != null) { - ItemStack item = createItem(SeekerHelmet); - if (item != null) { - SEEKER_HELM = item; - } - } - - ConfigurationSection SeekerChestplate = SeekerItems.getConfigurationSection("chestplate"); - if (SeekerChestplate != null) { - ItemStack item = createItem(SeekerChestplate); - if (item != null) { - SEEKER_CHEST = item; - } - } - - ConfigurationSection SeekerLeggings = SeekerItems.getConfigurationSection("leggings"); - if (SeekerLeggings != null) { - ItemStack item = createItem(SeekerLeggings); - if (item != null) { - SEEKER_LEGS = item; - } - } - - ConfigurationSection SeekerBoots = SeekerItems.getConfigurationSection("boots"); - if (SeekerBoots != null) { - ItemStack item = createItem(SeekerBoots); - if (item != null) { - SEEKER_BOOTS = item; - } - } - - HIDER_ITEMS = new ArrayList<>(); - HIDER_HELM = null; - HIDER_CHEST = null; - HIDER_LEGS = null; - HIDER_BOOTS = null; - - ConfigurationSection HiderItems = manager.getConfigurationSection("items.hider"); - - for (int i = 0; i < 9; i++) { - ConfigurationSection section = HiderItems.getConfigurationSection(String.valueOf(i)); - if (section == null) { - HIDER_ITEMS.add(null); - continue; - } - ItemStack item = createItem(section); - HIDER_ITEMS.add(item); - } - - ConfigurationSection HiderHelmet = HiderItems.getConfigurationSection("helmet"); - if (HiderHelmet != null) { - ItemStack item = createItem(HiderHelmet); - if (item != null) { - HIDER_HELM = item; - } - } - - ConfigurationSection HiderChestplate = HiderItems.getConfigurationSection("chestplate"); - if (HiderChestplate != null) { - ItemStack item = createItem(HiderChestplate); - if (item != null) { - HIDER_CHEST = item; - } - } - - ConfigurationSection HiderLeggings = HiderItems.getConfigurationSection("leggings"); - if (HiderLeggings != null) { - ItemStack item = createItem(HiderLeggings); - if (item != null) { - HIDER_LEGS = item; - } - } - - ConfigurationSection HiderBoots = HiderItems.getConfigurationSection("boots"); - if (HiderBoots != null) { - ItemStack item = createItem(HiderBoots); - if (item != null) { - HIDER_BOOTS = item; - } - } - - SEEKER_EFFECTS = new ArrayList<>(); - ConfigurationSection SeekerEffects = manager.getConfigurationSection("effects.seeker"); - - int i = 1; - while (true) { - ConfigurationSection section = SeekerEffects.getConfigurationSection(String.valueOf(i)); - if (section == null) break; - PotionEffect effect = getPotionEffect(section); - if (effect != null) SEEKER_EFFECTS.add(effect); - i++; - } - - HIDER_EFFECTS = new ArrayList<>(); - ConfigurationSection HiderEffects = manager.getConfigurationSection("effects.hider"); - i = 1; - while (true) { - ConfigurationSection section = HiderEffects.getConfigurationSection(String.valueOf(i)); - if (section == null) break; - PotionEffect effect = getPotionEffect(section); - if (effect != null) HIDER_EFFECTS.add(effect); - i++; - } - } - - private static ItemStack createItem(ConfigurationSection item) { - ConfigurationSection config = new YamlConfiguration().createSection("temp"); - String material = item.getString("material").toUpperCase(); - boolean splash = false; - if (!Main.getInstance().supports(9)) { - if (material.contains("POTION")) { - config.set("level", 1); - } - if (material.equalsIgnoreCase("SPLASH_POTION") || material.equalsIgnoreCase("LINGERING_POTION")) { - material = "POTION"; - splash = true; - } - } - config.set("name", item.getString("name")); - config.set("material", material); - config.set("enchants", item.getConfigurationSection("enchantments")); - config.set("unbreakable", item.getBoolean("unbreakable")); - if (Main.getInstance().supports(14)) { - if (item.contains("model-data")) { - config.set("model-data", item.getInt("model-data")); - } - } - if (item.isSet("lore")) - config.set("lore", item.getStringList("lore")); - if (material.equalsIgnoreCase("POTION") || material.equalsIgnoreCase("SPLASH_POTION") || material.equalsIgnoreCase("LINGERING_POTION")) - config.set("base-effect", String.format("%s,%s,%s", item.getString("type"), false, splash)); - ItemStack stack = XItemStack.deserialize(config); - int amt = item.getInt("amount"); - if (amt < 1) amt = 1; - stack.setAmount(amt); - if (stack.getData().getItemType() == Material.AIR) return null; - return stack; - } - - private static PotionEffect getPotionEffect(ConfigurationSection item) { - String type = item.getString("type"); - if (type == null) return null; - if (PotionEffectType.getByName(type.toUpperCase()) == null) return null; - return new PotionEffect( - PotionEffectType.getByName(type.toUpperCase()), - item.getInt("duration"), - item.getInt("amplifier"), - item.getBoolean("ambient"), - item.getBoolean("particles") - ); - } - - public static boolean matchItem(ItemStack stack){ - for(ItemStack check : HIDER_ITEMS) - if(equals(stack,check)) return true; - for(ItemStack check : SEEKER_ITEMS) - if(equals(stack,check)) return true; - return false; - } - - private static boolean equals(ItemStack a, ItemStack b) { - if (a == null || b == null) { - return false; - } else if (a == b) { - return true; - } else { - return a.getType() == b.getType() && a.hasItemMeta() == b.hasItemMeta() && (!a.hasItemMeta() || Bukkit.getItemFactory().equals(a.getItemMeta(), b.getItemMeta())); - } - } - -} |