I want the ItemStack that is the result of the crafting (displayed in the crafting output slot) to be coloured, much the same way as it would be after it leaves the crafting output slot - via the use of
IItemColor#getColorFromItemstack
. The mentioned method works for all cases except when the item is residing in the crafting output slot, then a default texture is used (from metadata).
So let's say I've got a test item that has a model file and a custom texture all set up. I register a ColorHandler for it, and return
Color.RED
from
getColorFromItemstack
. The item is properly colored red in my inventory and in the creative tabs. Everything works fine until I decide to craft that item, in which case the item is displayed un-colored (using the default texture, without custom color applied to it) in the crafting output slot. When removed, the item is rendered normally again.
In order to fix this I would need to abandon the subtype system of handling this item and split it up into separate items (one for each color), each with it's own model and texture file. My question is, is there a way of forcing the item in the crafting output slot to be rendered with a color applied to it (just like we do with
getColorFromItemstack
) WITHOUT resorting to dedicating separate item classes, model and texture files? Hope I made more sense this time =)