Using the boolean predicate tag "damaged" to override an in-game texture using a new resource pack texture doesn't work at all. If this is the only tag I use in the predicate for the override, ALL textures for that item will be overridden (as opposed to just the textures for the item while it is damaged), regardless of whether "damaged" is set to 1 or 0. If I add other predicate tags in addition to "damaged," such as "damage," everything works fine, except the game completely ignores the existence of the "damaged" tag.
This is quite frustrating because I am trying to create a system in which the texture for an item will be overridden if the "damaged" predicate tag is 0, but the "damage" tag is a non-zero value. This would make it so that the texture for my item would only be overridden if the item had a non-zero damage value and an "Unbreakable" NBT tag of 1. What I've just described is not possible until the "damaged" predicate tag is repaired.
Comments 4
Sure. I will link a resource pack here called PACK1.
http://www.mediafire.com/file/lg2062hbnk1zfyp/PACK1.rar
In the resource pack, I've replaced the texture for the diamond hoe with Damage: 1561 (supposedly Unbreakable as well, but as indicated in my post, the "damaged" predicate is ignored) with a texture called "forgery"
Could you next time please remove all unnecessary parts of the resource pack, then you could easily attach it here as well.
It looks like this might be the intended behavior. In general all predicates have to match valueForItemStack >= definedValue
, so in your example 1 (damaged) >= 0 (expected not damaged), which is true. You would therefore probably need to list all damaged: 0
overrides (with damaged: 0
removed) and after that all damaged: 1
overrides .
Could you please provide a resource pack which can be used to easily reproduce this?