Posted July 8, 20178 yr Hello, I have a quick question about or dictionary how do you get the ore dictionary name of a block/item. For example if i input Items.IRON_INGOT i will get a string "ingotIron". I hope this makes sense. In need this functionality because i have an item that needs to test what block it is rightclicked on and i would like to to be cross compatible with other mods. Thank you in advance for any solutions to my question. Edited July 8, 20178 yr by drok0920 Expanded on question
July 8, 20178 yr OreDictionary::getOreIDs takes an ItemStack and returns all ore ids associated with that ItemStack. You can get a string ore name out of an integer ore id using OreDictionary::getOreName. Be aware that if the itemstack has no ore ids associated you will get an empty array of ids. And you also need to be aware that an item may have more than one ore name associated with it, hence the ore id being an array.
July 8, 20178 yr Author Ok then one more question. How can i get an item stack from a block to use in your method.
July 9, 20178 yr Author 15 hours ago, diesieben07 said: This won't work for all blocks, e.g. repeaters or cauldrons. If you really want to do this properly, you either need to check for those cases (check if the block has an associated item, which may not be the one you want) or call getPickBlock on the Block. I have tried to implement what you have suggested but im not sure what to pass in as the target. Should i just raycast from the player to the BlockPos?
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.