Posted May 8, 20169 yr Hey does anyone know how to make an item have the enchantment glow when it's not actually enchanted just like a nether star?
May 8, 20169 yr If you have a custom class for your item, make it extend ItemSimpleFoiled instead of Item . If you don't have a custom class for it, use ItemSimpleFoiled instead of Item when creating the item. The key here is making public boolean hasEffect(ItemStack stack) return true with your item.
May 8, 20169 yr As mentioned above, but you don't need to bother with ItemSimpleFoiled or anything else, just override #hasEffect in your Item class and return true. If you don't have a custom class, instantiate your Item using an anonymous class and override it from there. http://i.imgur.com/NdrFdld.png[/img]
May 8, 20169 yr As mentioned above, but you don't need to bother with ItemSimpleFoiled or anything else, just override #hasEffect in your Item class and return true. If you don't have a custom class, instantiate your Item using an anonymous class and override it from there. While it doesn't make any difference right now, I think it's good practice to extend ItemSimpleFoiled . That way, if ItemSimpleFoiled gets changed in the future, the mod is more likely to continue to work as intended.
May 8, 20169 yr While it doesn't make any difference right now, I think it's good practice to extend ItemSimpleFoiled . That way, if ItemSimpleFoiled gets changed in the future, the mod is more likely to continue to work as intended. Except the OP's item probably isn't an ItemSimpleFoiled - you should only extend a class when your object is specifically related to that class. One wouldn't extend ItemSword to make a chair just because one wanted an attack damage attribute modifier. If ItemSimpleFoiled were a class that only dealt with the enchanted item glow and that was its sole purpose, and everyone understood that anything that glows should extend from that class, then I would agree with you. http://i.imgur.com/NdrFdld.png[/img]
May 8, 20169 yr Author Thanks guys, I made a few changes to my mod to get it to work, I did use that "extends ItemSimpleFoiled" and made a new class for enchanted items themselves, may not have been the best way but it seems to work, so thanks again.
May 8, 20169 yr Except the OP's item probably isn't an ItemSimpleFoiled - you should only extend a class when your object is specifically related to that class. One wouldn't extend ItemSword to make a chair just because one wanted an attack damage attribute modifier. If ItemSimpleFoiled were a class that only dealt with the enchanted item glow and that was its sole purpose, and everyone understood that anything that glows should extend from that class, then I would agree with you. Sorry, you are correct. I thought that SimpleItemFoiled was a generic class for items that had the enchantment effect, but it appears that other such items ( ItemExpBottle , ItemEnchantedBook , etc.) merely override hasEffect() . Thanks guys, I made a few changes to my mod to get it to work, I did use that "extends ItemSimpleFoiled" and made a new class for enchanted items themselves, may not have been the best way but it seems to work, so thanks again. As mentioned by coolAlias above, don't extend ItemSimpleFoiled , just insert this into your class: @SideOnly(Side.CLIENT) @Override public boolean hasEffect(ItemStack stack) { return true; }
May 8, 20169 yr Author How would I specify what items to have the glow on though, without making a new class?
May 8, 20169 yr How would I specify what items to have the glow on though, without making a new class? If your glowing items would normally be extending Item anyway, you can make one class e.g. ItemGlowing that the only thing it does is override #hasEffect to return true. Then any item you want to glow, you use that class. If you have multiple glowing items that would all be different classes, e.g. one that is an ItemTool, one an ItemFood, etc., then you either have to make separate classes for each of them (which you'd probably be doing anyway), or use an anonymous class. If you have some glowing items and some not using the same class, then you can use a final class field e.g. 'boolean glows' that is set via the constructor, and return that field from #hasEffect. That way, each item can specify whether or not it glows. http://i.imgur.com/NdrFdld.png[/img]
May 8, 20169 yr Author Oh okay thanks both for all the help, I did the new way you suggested and it works still.
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.