Jump to content

[SOLVED]Cannot take changed anvil output from AnvilUpdateEvent


Anon10W1z

Recommended Posts

@SubscribeEvent
public void onAnvilUpdate(AnvilUpdateEvent event) {
   if (event.right.getItem() == Items.written_book) {
      NBTTagCompound bookTagCompound = event.right.getTagCompound();
      NBTTagList pagesList = bookTagCompound.getTagList("pages",;
      ItemStack output = event.left.copy();
      NBTTagCompound outputTagCompound = new NBTTagCompound();
      NBTTagList loreList = new NBTTagList();
      for (int i = 0; i < pagesList.tagCount(); ++i) {
         String[] pageSplit = pagesList.getStringTagAt(i).substring(1, pagesList.getStringTagAt(i).length() - 1).replace("\\n", "\n").split("\n");
         for (String line : pageSplit)
            loreList.appendTag(new NBTTagString(line));
      }
      outputTagCompound.setTag("Lore", loreList);
      output.setTagInfo("display", outputTagCompound);
      if (!event.name.trim().isEmpty())
         output.setStackDisplayName(event.name);
      event.output = output;
   }
}

I am using the above code to allow application of written books as lore on items. It works perfectly except for one thing: The result can't be taken out of its slot. Shift clicking and regular left-clicking do not do anything, in fact. Is this a bug or am I doing something wrong?

 

The reason I am replacing the literal "\n" with the actual linefeed "\n" is that it shows as the literal in the lore. Then I have to split the linefeed "\n" because it renders as an LF icon rather than an actual new line.

 

Solved by setting event.cost.

Maker of the Craft++ mod.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.