Ms_Raven Posted September 26, 2015 Posted September 26, 2015 I have a command that's supposed to give item info to the player. I want it to return both its literal name (e.g: iron_ingot) and its final name (e.g: Iron Ingot), among several other things, in a list that's printed in an external window. But there's only a getUnlocalizedName() method that returns the final name from the language file. How do I get the literal name, too? Quote
Failender Posted September 26, 2015 Posted September 26, 2015 im not 100% sure, but taking a look at ChatComponentTranslation should lead u to ur goal Quote
Choonster Posted September 26, 2015 Posted September 26, 2015 RegistryNamespaced#getNameForObject will return a ResourceLocation of the object's name (e.g. minecraft:iron_ingot ). Item.itemRegistry contains a reference to the item registry. If you have an ItemStack , you should use ItemStack#getUnlocalizedName to get the item's unlocalised name and ItemStack#getDisplayName to get the item's localised display name. If you only have an Item , use Item#getUnlocalizedName to get the item's unlocalised name and StatCollector.translateToLocal(item.getUnlocalizedName() + ".name") to get the item's localised display name. Quote Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.
Recommended Posts
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.