Posted September 28, 201411 yr How can I set an item name colour? I've seen it done in some large mods like IC2 with different tiers is a different colour and I want to do something like it. Does it just require something extra or more code? The proud(ish) developer of Ancients
September 28, 201411 yr All you had to do was google it... Check out http://www.minecraftforge.net/wiki/Creating_NBT_for_items Last bit of code in addInformation
September 28, 201411 yr close david, he wanted the "Item Name" not "Tool Tip" I'd say overwrite the Item's "getItemStackDisplayName" method and have it return: return this.getUnlocalizedName(par1ItemStack) == null ? "" : EnumChatFormatting.RED+StatCollector.translateToLocal(this.getUnlocalizedName(par1ItemStack)); and pick a color. give that a shot. Currently updating my Mod to 1.10.2 https://bitbucket.org/hugo_the_dwarf/riseoftristram2016/src?at=master
September 28, 201411 yr Author Would it be possible to use a .lang file something like item.itemname.color? or does it have to in the item class The proud(ish) developer of Ancients
September 28, 201411 yr Author hugo I tried your way the name is red but it's item.null and the name was working fine before The proud(ish) developer of Ancients
September 28, 201411 yr Author I fixed it but I had to hard-wire the name in by changing StatCollector.translateToLocal(this.getUnlocalizedName(par1ItemStack); to StatCollector.translateToLocal("Item name"); unfortunately now it doesn't work with the .lang file The proud(ish) developer of Ancients
September 28, 201411 yr Well the way I do it is this: @Override public String getItemStackDisplayName(ItemStack par1ItemStack) { String size = UtilityNBTHelper.getString(par1ItemStack, UtilityWeaponNBTKeyNames.size); if ((size == "normal") || (size == "")) { return ("" + StatCollector.translateToLocal(this .getUnlocalizedNameInefficiently(par1ItemStack) + ".name")).trim(); } else { return (size.substring(0, 1).toUpperCase() + size.substring(1) + " " + StatCollector .translateToLocal(this.getUnlocalizedNameInefficiently(par1ItemStack) + ".name")).trim(); } } but I don't add color, maybe you just need an extra "space" to seperate the color and the name? EDIT: Tested it with my weapons that use this, by placing "EnumChatFormatting.RED" just before the " " and I get "Large Sword" EDIT2: Also seems I jumped the gun as was not a very favorable person. David was correct, I think you just need to alter the first entry of the List in addInformation() method. Either way mine works, but seems to require more work then necessary. Currently updating my Mod to 1.10.2 https://bitbucket.org/hugo_the_dwarf/riseoftristram2016/src?at=master
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.