Skip to content

Commit

Permalink
handle item script id cleaner (ItemTag)
Browse files Browse the repository at this point in the history
  • Loading branch information
mcmonkey4eva committed Aug 1, 2020
1 parent b59600a commit 53c6c2e
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 7 deletions.
Expand Up @@ -372,11 +372,11 @@ public int comparesTo(ItemStack compared_to) {
* @return True if it does, otherwise false
*/
public boolean isItemscript() {
return ItemScriptHelper.isItemscript(item);
return ItemScriptHelper.isItemscript(this);
}

public String getScriptName() {
ItemScriptContainer cont = ItemScriptHelper.getItemScriptContainer(item);
ItemScriptContainer cont = ItemScriptHelper.getItemScriptContainer(this);
if (cont != null) {
return cont.getName();
}
Expand Down Expand Up @@ -719,7 +719,7 @@ public static void registerTags() {
// -->
registerTag("recipe_ids", (attribute, object) -> {
String type = attribute.hasContext(1) ? CoreUtilities.toLowerCase(attribute.getContext(1)) : null;
ItemScriptContainer container = object.isItemscript() ? ItemScriptHelper.getItemScriptContainer(object.getItemStack()) : null;
ItemScriptContainer container = object.isItemscript() ? ItemScriptHelper.getItemScriptContainer(object) : null;
ListTag list = new ListTag();
for (Recipe recipe : Bukkit.getRecipesFor(object.getItemStack())) {
if (!Utilities.isRecipeOfType(recipe, type)) {
Expand Down
Expand Up @@ -268,21 +268,22 @@ public void scriptReload(ScriptReloadEvent event) {
rebuildRecipes();
}

public static boolean isItemscript(ItemStack item) {
public static boolean isItemscript(ItemTag item) {
return getItemScriptContainer(item) != null;
}

public static ItemScriptContainer getItemScriptContainer(ItemStack item) {
public static ItemScriptContainer getItemScriptContainer(ItemTag item) {
if (item == null) {
return null;
}
String nbt = NMSHandler.getItemHelper().getNbtData(item).getString("Denizen Item Script");
String nbt = NMSHandler.getItemHelper().getNbtData(item.getItemStack()).getString("Denizen Item Script");
if (nbt != null && !nbt.equals("")) {
return item_scripts_by_hash_id.get(nbt);
}
if (!item.hasItemMeta() || !item.getItemMeta().hasLore()) {
if (!item.getItemMeta().hasLore()) {
return null;
}
// TODO: Remove legacy lore script support?
for (String itemLore : item.getItemMeta().getLore()) {
if (itemLore.startsWith(ItemTag.itemscriptIdentifier)) {
return item_scripts.get(itemLore.replace(ItemTag.itemscriptIdentifier, ""));
Expand Down

0 comments on commit 53c6c2e

Please sign in to comment.