[SPIGOT-441] Itemstack block NBT Created: 18/Jan/15  Updated: 23/Aug/15  Resolved: 24/Jan/15

Status: Resolved
Project: Spigot
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: Conor McS Assignee: Unassigned
Resolution: Won't Fix Votes: 0
Labels: blocks, item, nbt

Issue Links:
Cloners
is cloned by SPIGOT-1143 CLONE - Itemstack block NBT Resolved

 Description   

There needs to be some way to set/modify block data on an item stack, as in the kind of thing when you Ctrl+pickblock on a block with NBT data and it holds that data on the item for next time you place it.
It would also be nice to add a way to modify block NBT tags without delving into NMS.
Sorry if duplicate, I did search already.



 Comments   
Comment by Nathan Wolf [ 28/Jan/15 ]

For what it's worth, this part of the ticket description was interesting to me:

"as in the kind of thing when you Ctrl+pickblock on a block with NBT data and it holds that data on the item for next time you place it"

I'm not actually familiar with that feature- but an API method that can take any block (include TileEntity data and whatever else) and turn it into an item that will reproduce the block when placed.. if that were possible, that would be pretty cool.

Comment by Conor McS [ 28/Jan/15 ]

@md_5 I don't see what the issue with arbitary NBT access is? People make hacky ways to do it all the time. You're basically forcing people to resort to these hacks to achieve what they want to do. If you had this sort of attitude towards everything, then the project would most likely not exist. As far as I'm concerned, this thing is drowning anyway, and the release of Sponge will be Spigot's last gasp.
I will no longer be requiring Spigot's service.

Comment by md_5 [ 26/Jan/15 ]

Can you please read my message. Arbitrary NBT is not API, structured access to specific elements is. Maybe if you opened a ticket elaborating on what specific NBT you need to access, then the issue could be addressed.

Comment by md_5 [ 24/Jan/15 ]

Arbitrary NBT access won't be added - thats not what API is for. If you require the ability to edit specific NBT (most NBT can already be edited via the Meta API), then please open a new ticket.

Comment by Nathan Wolf [ 19/Jan/15 ]

So are you asking for a generalized NBT API (like SPIGOT-67), or something more specific for the BlockEntityTag tag?

A generalized NBT API would give plugins the ability to set that tag directly, put an inventory in it, etc- but you'd have to know the right tags to set, I guess, to make the TileEntity work properly when placed.

If you're asking for something more specific- like "getBlockEntityData().getInventory()" or something that knows what data is valid based on block type, then you might want to clarify or elaborate a little on how that should work? It could just be I'm confused

Comment by Nathan Wolf [ 18/Jan/15 ]

This is basically a duplicate of SPIGOT-67

Generated at Sat Mar 15 03:08:17 UTC 2025 using Jira 10.3.3#10030003-sha1:d220e3fefc8dfc6d47f522d3b9a20c1455e12b7b.