| 123456789101112131415161718192021222324252627282930313233343536 |
- package me.lethunderhawk.minion.enchantedVariant.item.abstraction;
- import org.bukkit.NamespacedKey;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.ItemMeta;
- import org.bukkit.persistence.PersistentDataContainer;
- import org.bukkit.persistence.PersistentDataType;
- import java.util.HashSet;
- import java.util.Set;
- public final class EnchantedItemRegistry {
- private EnchantedItemRegistry() {}
- // Items that are NOT allowed to be placed
- private static final Set<NamespacedKey> NO_PLACE_ITEMS = new HashSet<>();
- public static void registerNoPlaceItem(NamespacedKey key) {
- NO_PLACE_ITEMS.add(key);
- }
- public static boolean isNoPlaceItem(ItemStack item) {
- if (item == null || !item.hasItemMeta()) return false;
- ItemMeta meta = item.getItemMeta();
- PersistentDataContainer pdc = meta.getPersistentDataContainer();
- for (NamespacedKey key : NO_PLACE_ITEMS) {
- if (pdc.has(key, PersistentDataType.STRING)) {
- return true;
- }
- }
- return false;
- }
- }
|