#Hotbar item != Hand item
5 messages · Page 1 of 1 (latest)
Welcome to the help forum!
Please make sure to read #1029373817119838218 as it may answer your question!
Once your question has been resolved, please mark the post as closed by using the </close:1163944441741049897> command.
yes in 1.21.4+ you can use an item definition file to make an item use different models depending on the "display context" so like in the inventory or in your hand
!faq java gui model
Java: Java Gui Model
Disclaimer: This will only work for 1.21.4 and newer. For older versions you will need to use mods or shader workarounds to do this.
To have a different model in the gui than in the hand (or other displays) you do the following
- Create a new .json file in
assets/minecraft/items(not to be confused withmodels/item!) - Make a .json file in there that looks something like this:
{
"model": {
"type": "minecraft:select",
"property": "minecraft:display_context",
"cases": [
{
"when": [
"gui",
"ground",
"fixed"
],
"model": {
"type": "minecraft:model",
"model": "minecraft:item/2d"
}
}
],
"fallback": {
"type": "minecraft:model",
"model": "item/3d"
}
}
}```
3. Name the .json the same as the id of the item you want to do this for (unless you are using this in combination with the item_model= component).
4. Replace `item/2d` and `item/3d` with the repsective model references to the 3D and 2D model. Your "2D model" can be just something like this
```json
{
"parent": "item/generated",
"textures": {
"layer0": "item/feather"
}
}``` (replace item/feather with your actual texture)
_Note: The bot example basically works the same as a trident. If you want the 2D model to appear in more/less displays adjust the values in the "when" array accordingly._