Java 类org.bukkit.NamespacedKey 实例源码

项目:CustomRecipes    文件:NBTAdder.java   
@Override
public void accept(Player player, List<String> args) {
    org.bukkit.inventory.ItemStack itemInMainHand = player.getInventory().getItemInMainHand();
    if (itemInMainHand == null) {
        player.sendMessage(ChatColor.RED + "Put the result of the recipe in your main hand when executing this command.");
        return;
    }

    if (args.isEmpty()) {
        player.sendMessage(ChatColor.RED + "Usage: /addrecipe NBT <key> [<group>]");
        return;
    }

    String keyString = args.get(0);
    String group = args.size() >= 2 ? args.get(1) : "";
    NamespacedKey bukkitKey = plugin.getKey(keyString);

    ItemStack result = CraftItemStack.asNMSCopy(itemInMainHand);
    MinecraftKey key = CraftNamespacedKey.toMinecraft(bukkitKey);

    player.openInventory(new NBTRecipeHolder(plugin, result, key, group, player).getInventory());
}
项目:CustomRecipes    文件:CountAdder.java   
@Override
public void accept(Player player, List<String> args) {
    org.bukkit.inventory.ItemStack itemInMainHand = player.getInventory().getItemInMainHand();
    if (itemInMainHand == null) {
        player.sendMessage(ChatColor.RED + "Put the result of the recipe in your main hand when executing this command.");
        return;
    }

    if (args.isEmpty()) {
        player.sendMessage(ChatColor.RED + "Usage: /addrecipe count <key> [<group>]");
        return;
    }

    String keyString = args.get(0);
    String group = args.size() >= 2 ? args.get(1) : "";
    NamespacedKey bukkitKey = plugin.getKey(keyString);

    ItemStack result = CraftItemStack.asNMSCopy(itemInMainHand);
    MinecraftKey key = CraftNamespacedKey.toMinecraft(bukkitKey);

    player.openInventory(new CountRecipeHolder(plugin, result, key, group, player).getInventory());
}
项目:CustomRecipes    文件:PermissionAdder.java   
@Override
public void accept(Player player, List<String> args) {
    org.bukkit.inventory.ItemStack itemInMainHand = player.getInventory().getItemInMainHand();
    if (itemInMainHand == null) {
        player.sendMessage(ChatColor.RED + "Put the result of the recipe in your main hand when executing this command.");
        return;
    }

    if (args.size() < 2) {
        player.sendMessage(ChatColor.RED + "Usage: /addrecipe permission <key> <permission> [<group>]");
        return;
    }

    String keyString = args.get(0);
    String permission = args.get(1);
    String group = args.size() >= 3 ? args.get(2) : "";
    NamespacedKey bukkitKey = plugin.getKey(keyString);

    ItemStack result = CraftItemStack.asNMSCopy(itemInMainHand);
    MinecraftKey key = CraftNamespacedKey.toMinecraft(bukkitKey);

    player.openInventory(new PermissionRecipeHolder(plugin, result, key, group, player, permission).getInventory());
}
项目:CustomRecipes    文件:ShapedAdder.java   
@Override
public void accept(Player player, List<String> args) {
    org.bukkit.inventory.ItemStack itemInMainHand = player.getInventory().getItemInMainHand();
    if (itemInMainHand == null) {
        player.sendMessage(ChatColor.RED + "Put the result of the recipe in your main hand when executing this command.");
        return;
    }

    if (args.isEmpty()) {
        player.sendMessage(ChatColor.RED + "Usage: /addrecipe shaped <key> [<group>]");
        return;
    }

    String keyString = args.get(0);
    String group = args.size() >= 2 ? args.get(1) : "";
    NamespacedKey bukkitKey = plugin.getKey(keyString);

    ItemStack result = CraftItemStack.asNMSCopy(itemInMainHand);
    MinecraftKey key = CraftNamespacedKey.toMinecraft(bukkitKey); 

    player.openInventory(new ShapedRecipeHolder(player, plugin, result, key, group).getInventory());
}
项目:CustomRecipes    文件:ShapelessAdder.java   
@Override
public void accept(Player player, List<String> args) {
    org.bukkit.inventory.ItemStack itemInMainHand = player.getInventory().getItemInMainHand();
    if (itemInMainHand == null) {
        player.sendMessage(ChatColor.RED + "Put the result of the recipe in your main hand when executing this command.");
        return;
    }

    if (args.isEmpty()) {
        player.sendMessage(ChatColor.RED + "Usage: /addrecipe shapeless <key> [<group>]");
        return;
    }

    String keyString = args.get(0);
    String group = args.size() >= 2 ? args.get(1) : "";
    NamespacedKey bukkitKey = plugin.getKey(keyString);

    ItemStack result = CraftItemStack.asNMSCopy(itemInMainHand);
    MinecraftKey key = CraftNamespacedKey.toMinecraft(bukkitKey);

    player.openInventory(new ShapelessRecipeHolder(plugin, result, key, group, player).getInventory());
}
项目:AdvancedAchievements    文件:AchieveConnectionListener.java   
/**
 * Awards advancements created by Advanced Achievements. This method can be seen as a synchronisation to give
 * advancements which were generated after the corresponding achievement was received for a given player.
 * 
 * @param player
 */
private void awardAdvancements(Player player) {
    Advancement advancement = Bukkit.getServer()
            .getAdvancement(new NamespacedKey(plugin, AdvancementManager.ADVANCED_ACHIEVEMENTS_PARENT));
    // If no parent, user has not used /aach generate, do not do anything.
    if (advancement != null) {
        AdvancementProgress advancementProgress = player.getAdvancementProgress(advancement);
        if (!advancementProgress.isDone()) {
            advancementProgress.awardCriteria(AchievementAdvancement.CRITERIA_NAME);
        }
        for (String achName : plugin.getDatabaseManager().getPlayerAchievementNamesList(player.getUniqueId())) {
            advancement = Bukkit.getServer()
                    .getAdvancement(new NamespacedKey(plugin, AdvancementManager.getKey(achName)));
            // Matching advancement might not exist if user has not called /aach generate.
            if (advancement != null) {
                advancementProgress = player.getAdvancementProgress(advancement);
                if (!advancementProgress.isDone()) {
                    advancementProgress.awardCriteria(AchievementAdvancement.CRITERIA_NAME);
                }
            }
        }
    }
}
项目:CustomRecipes    文件:FurnaceAdder.java   
@Override
public void accept(Player player, List<String> args) {
    org.bukkit.inventory.ItemStack itemInMainHand = player.getInventory().getItemInMainHand();

    if (InventoryUtils.isEmptyStack(itemInMainHand)) {
        player.sendMessage(ChatColor.RED + "Put the result of the recipe in your main hand when executing this command.");
        return;
    }

    if (args.isEmpty()) {
        player.sendMessage(ChatColor.RED + "Usage: /addrecipe furnace <key> [<xp>] [vanilla]");
        return;
    }

    String keyString = args.get(0);
    NamespacedKey bukkitKey = plugin.getKey(keyString);
    float xp = 0;
    if (args.size() >= 2) {
        try {
            xp = Float.parseFloat(args.get(1));
        } catch (NumberFormatException ignored) {
            //xp stays 0
        }
    }
    boolean vanilla = args.size() >= 3 ? "vanilla".equalsIgnoreCase(args.get(2)) : false;

    ItemStack result = CraftItemStack.asNMSCopy(itemInMainHand);

    player.openInventory(new FurnaceRecipeHolder(plugin, player, result, bukkitKey, xp, vanilla).getInventory());
}
项目:CustomRecipes    文件:FurnaceAdder.java   
public FurnaceRecipeHolder(CustomRecipesPlugin plugin, Player player, ItemStack result, NamespacedKey key, float xp, boolean vanilla) {
    this.plugin = plugin;
    this.callbackPlayer = player;
    this.hopperInventory = plugin.getServer().createInventory(this, InventoryType.HOPPER, "Create a furnace recipe!");
    this.key = CraftNamespacedKey.toMinecraft(key);
    this.result = result;
    this.vanilla = vanilla;
    this.xp = xp;
    plugin.getServer().getPluginManager().registerEvents(this, plugin);
}
项目:CustomRecipes    文件:CRCraftingManager.java   
/**
 * {@inheritDoc}
 */
@Override
public boolean addRecipe(NamespacedKey key, CraftingRecipe recipe) {
    if (key == null || recipe == null) return false;

    MinecraftKey minecraftKey = CraftNamespacedKey.toMinecraft(key);

    return putRecipe(minecraftKey, recipe);
}
项目:CustomRecipes    文件:CRCraftingManager.java   
/**
 * {@inheritDoc}
 */
@Override
public CraftingRecipe getRecipe(NamespacedKey key) {
    if (key == null) return null;

    MinecraftKey mcKey = CraftNamespacedKey.toMinecraft(key);
    IRecipe mcRecipe = getNMSRecipe(mcKey);
    if (mcRecipe == null) return null;
    return fromNMSRecipe(mcRecipe);
}
项目:CustomRecipes    文件:CRCraftingManager.java   
/**
 * {@inheritDoc}
 */
@Override
public CraftingRecipe removeRecipe(NamespacedKey key) {
    if (key == null) return null;

    MinecraftKey mcKey = CraftNamespacedKey.toMinecraft(key);
    IRecipe removed = removeRecipe(mcKey);
    if (removed == null) return null;

    CraftingRecipe recipe = fromNMSRecipe(removed);
    nms2cr.remove(removed);

    return recipe;
}
项目:CustomRecipes    文件:CRCraftingManager.java   
/**
 * {@inheritDoc}
 */
@Override
public NamespacedKey getKey(CraftingRecipe recipe) {
    if (recipe == null) return null;

    IRecipe nmsRecipe = toNMSRecipe(recipe);
    MinecraftKey key = getKey(nmsRecipe);
    return key == null ? null : CraftNamespacedKey.fromMinecraft(key);
}
项目:CustomRecipes    文件:CRCraftingManager.java   
/**
 * {@inheritDoc}
 */
@Override
public NamespacedKey removeRecipe(CraftingRecipe recipe) {
    if (recipe == null) return null;

    IRecipe nmsRecipe = toNMSRecipe(recipe);
    if (nmsRecipe == null) return null;

    MinecraftKey key = removeRecipe(nmsRecipe);
    if (key == null) return null;

    return CraftNamespacedKey.fromMinecraft(key);
}
项目:CustomRecipes    文件:WorldAdder.java   
@Override
public void accept(Player player, List<String> args) {
    org.bukkit.inventory.ItemStack itemInMainHand = player.getInventory().getItemInMainHand();
    if (itemInMainHand == null) {
        player.sendMessage(ChatColor.RED + "Put the result of the recipe in your main hand when executing this command.");
        return;
    }

    if (args.isEmpty()) {
        player.sendMessage(ChatColor.RED + "Usage: /addrecipe world <key> [<world name>] [<group>]");
        return;
    }

    UUID world = player.getWorld().getUID();
    if (args.size() >= 2) {
        World bukkitWorld = plugin.getServer().getWorld(args.get(1));
        if (bukkitWorld != null) world = bukkitWorld.getUID();
    }

    String keyString = args.get(0); 
    String group = args.size() >= 3 ? args.get(2) : "";
    NamespacedKey bukkitKey = plugin.getKey(keyString);

    ItemStack result = CraftItemStack.asNMSCopy(itemInMainHand);
    MinecraftKey key = CraftNamespacedKey.toMinecraft(bukkitKey);

    player.openInventory(new WorldRecipeHolder(plugin, result, key, group, player, world).getInventory());
}
项目:Karus-Commons    文件:KnowledgeBookBuilderTest.java   
@Test
void build() {
    NamespacedKey recipe = mock(NamespacedKey.class);
    builder.recipe(recipe);

    verify(meta).addRecipe(recipe);
}
项目:AdvancedAchievements    文件:AdvancementManager.java   
/**
 * Removes all advancements previously generated by the plugin.
 */
private void cleanupOldAchievementAdvancements() {
    int achievementsCleaned = 0;
    Iterator<Advancement> advancements = Bukkit.getServer().advancementIterator();
    while (advancements.hasNext()) {
        NamespacedKey namespacedKey = advancements.next().getKey();
        if ("advancedachievements".equals(namespacedKey.getNamespace())
                && !ADVANCED_ACHIEVEMENTS_PARENT.equals(namespacedKey.getKey())) {
            ++achievementsCleaned;
            unsafeValues.removeAdvancement(namespacedKey);
        }
    }
    Bukkit.getServer().reloadData();
    plugin.getLogger().info("Cleaned " + achievementsCleaned + " old advancements.");
}
项目:AdvancedAchievements    文件:AdvancementManager.java   
/**
 * Registers an "Advanced Achievements" advancement, which will be used as the parent of all advancements generated
 * by Advanced Achievements.
 */
private void registerParentAdvancement() {
    AchievementAdvancementBuilder achievementAdvancementBuilder = new AchievementAdvancementBuilder()
            .iconItem("minecraft:" + getInternalName(new ItemStack(Material.BOOK, 1, (short) 0)))
            .iconData(Integer.toString(0)).title("Advanced Achievements").description("");
    NamespacedKey namespacedKey = new NamespacedKey(plugin, ADVANCED_ACHIEVEMENTS_PARENT);
    if (Bukkit.getServer().getAdvancement(namespacedKey) == null) {
        unsafeValues.loadAdvancement(namespacedKey,
                achievementAdvancementBuilder.buildGoal().toParentJson(configHideAdvancements));
    }
}
项目:AdvancedAchievements    文件:AdvancementManager.java   
/**
 * Registers an individual advancement.
 * 
 * @param categoryName
 * @param configAchievement
 * @param parentKey
 * @param lastAchievement
 * @return the key of the registered achievement
 */
private String registerAdvancement(String categoryName, String configAchievement, String parentKey,
        boolean lastAchievement) {
    String achName = plugin.getPluginConfig().getString(configAchievement + ".Name", "");
    String achDisplayName = plugin.getPluginConfig().getString(configAchievement + ".DisplayName", "");
    if (StringUtils.isEmpty(achDisplayName)) {
        achDisplayName = achName;
    }
    // Strip colours as the advancements interface does not support them.
    achDisplayName = REGEX_PATTERN_COLOURS.matcher(achDisplayName).replaceAll("");

    String achKey = getKey(achName);
    NamespacedKey namespacedKey = new NamespacedKey(plugin, achKey);
    int metadata = plugin.getPluginGui().getInt(categoryName + ".Metadata", 0);
    String description = "";
    if (configRegisterAdvancementDescriptions) {
        // Give priority to the goal to stick with Vanilla naming of advancements.
        description = plugin.getPluginConfig().getString(configAchievement + ".Goal", "");
        if (!StringUtils.isNotBlank(description)) {
            description = plugin.getPluginConfig().getString(configAchievement + ".Message", "");
        }
        description = REGEX_PATTERN_COLOURS.matcher(description).replaceAll("");
    }

    AchievementAdvancementBuilder achievementAdvancementBuilder = new AchievementAdvancementBuilder()
            .iconItem("minecraft:" + getInternalName(new ItemStack(getMaterial(categoryName), 1, (short) metadata)))
            .iconData(Integer.toString(metadata)).title(achDisplayName).description(description).parent(parentKey);
    if (lastAchievement) {
        unsafeValues.loadAdvancement(namespacedKey, achievementAdvancementBuilder.buildChallenge().toJson());
    } else {
        unsafeValues.loadAdvancement(namespacedKey, achievementAdvancementBuilder.buildTask().toJson());
    }
    ++generatedAdvancements;
    return achKey;
}
项目:CustomRecipes    文件:CustomRecipesPlugin.java   
public static String craftingRecipeFileName(CRCraftingRecipe<? extends IRecipe> recipe) {
    NamespacedKey key = recipe.getKey();
    return key.toString().replace(':', '_') + ".dat";
}
项目:CustomRecipes    文件:CustomRecipesPlugin.java   
public static String furnaceRecipeFileName(CRFurnaceRecipe recipe) {
    NamespacedKey key = recipe.getKey();
       return key.toString().replace(':', '_') + ".dat";
}
项目:CustomRecipes    文件:CustomRecipesPlugin.java   
@SuppressWarnings("deprecation")
public NamespacedKey getKey(String string) {
    String[] split = string.split(":");
    return split.length == 1 ? new NamespacedKey(this, string) : new NamespacedKey(split[0], split[1]);
}
项目:CustomRecipes    文件:SimpleFurnaceRecipe.java   
public SimpleFurnaceRecipe(NamespacedKey key, CraftingIngredient ingredient, ItemStack result) {
    this.key = Objects.requireNonNull(key, "key cannot be null.");
    this.ingredient = Objects.requireNonNull(ingredient, "ingredient cannot be null.");
    this.result = Objects.requireNonNull(result, "result cannot be null.");
}
项目:CustomRecipes    文件:SimpleFurnaceRecipe.java   
public SimpleFurnaceRecipe(NamespacedKey key, CraftingIngredient ingredient, ItemStack result, float xp) {
    this(key, ingredient, result);
    this.xp = xp;
}
项目:CustomRecipes    文件:SimpleFurnaceRecipe.java   
@Override
public NamespacedKey getKey() {
    return key;
}
项目:CustomRecipes    文件:SerializableKey.java   
public SerializableKey(String namespace, String key) {
    this(new NamespacedKey(namespace, key));
}
项目:CustomRecipes    文件:SerializableKey.java   
public SerializableKey(NamespacedKey namespacedKey) {
    this.key = Objects.requireNonNull(namespacedKey);
}
项目:CustomRecipes    文件:SerializableKey.java   
@Override
public NamespacedKey getKey() {
    return key;
}
项目:CustomRecipes    文件:CRFurnaceManager.java   
@Override
public FurnaceRecipe removeRecipe(NamespacedKey key) {
    NMSFurnaceRecipe recipe = nmsManager.removeRecipe(CraftNamespacedKey.toMinecraft(key));
    return recipe == null ? null : recipe.getBukkitRecipe();
}
项目:CustomRecipes    文件:CRFurnaceManager.java   
@Override
public FurnaceRecipe removeVanillaRecipe(NamespacedKey key) {
    NMSFurnaceRecipe recipe = nmsManager.removeVanillaRecipe(CraftNamespacedKey.toMinecraft(key));
    return recipe == null ? null : recipe.getBukkitRecipe();
}
项目:CustomRecipes    文件:CRFurnaceManager.java   
@Override
public FurnaceRecipe removeCustomRecipe(NamespacedKey key) {
    NMSFurnaceRecipe recipe = nmsManager.removeCustomRecipe(CraftNamespacedKey.toMinecraft(key));
    return recipe == null ? null : recipe.getBukkitRecipe();
}
项目:CustomRecipes    文件:CRFurnaceManager.java   
@Override
public FurnaceRecipe getRecipe(NamespacedKey key) {
    NMSFurnaceRecipe recipe = nmsManager.getRecipe(CraftNamespacedKey.toMinecraft(key));
    return recipe == null ? null : recipe.getBukkitRecipe();
}
项目:CustomRecipes    文件:CRFurnaceManager.java   
@Override
public FurnaceRecipe getCustomRecipe(NamespacedKey key) {
    NMSFurnaceRecipe recipe = nmsManager.getCustomRecipe(CraftNamespacedKey.toMinecraft(key));
    return recipe == null ? null : recipe.getBukkitRecipe();
}
项目:CustomRecipes    文件:CRFurnaceManager.java   
@Override
public FurnaceRecipe getVanillaRecipe(NamespacedKey key) {
    NMSFurnaceRecipe recipe = nmsManager.getVanillaRecipe(CraftNamespacedKey.toMinecraft(key));
    return recipe == null ? null : recipe.getBukkitRecipe();
}
项目:CustomRecipes    文件:CRFurnaceRecipe.java   
@Override
public NamespacedKey getKey() {
    return CraftNamespacedKey.fromMinecraft(nmsRecipe.getKey());
}
项目:CustomRecipes    文件:Bukkit2NMSRecipe.java   
private static NamespacedKey newNamespacedKey() {
    CustomRecipesPlugin plugin = CustomRecipesPlugin.getInstance();
    return new NamespacedKey(plugin, CUSTOM_RECIPES_BUKKITRECIPE_KEY + keyCount.getAndIncrement() + UUID.randomUUID().toString());
}
项目:Arcadia-Spigot    文件:AdvancementAPI.java   
public static AdvancementAPIBuilder builder(NamespacedKey id) {
    return AdvancementAPI.hiddenBuilder().id(id);
}
项目:Leveled-Storage    文件:NamespacedKeyStorage.java   
public NamespacedKeyStorage(NamespacedKey key) {
    this.key = key;
}
项目:Leveled-Storage    文件:NamespacedKeyStorage.java   
@Override
public NamespacedKey getValue() {
    return key;
}
项目:Leveled-Storage    文件:NamespacedKeyStorage.java   
@Override
public void setValue(NamespacedKey value) {
    key = value;
}
项目:Leveled-Storage    文件:NamespacedKeyStorage.java   
@Override
public StorageObject delegate() {
    return new NamespacedKeyStorage(new NamespacedKey(key.getNamespace(), key.getKey()));
}