Bases rapides
Single display model donne un aspect fixe. Selected state bascule avec une condition sur selected. Charge stages suit le temps de recharge avec range_dispatch. Main-hand context utilise select sur la main.
Assemblez les nouveaux fichiers item definition dans assets/
Chargez un modèle de départ puis remplacez les chemins et valeurs par ceux de votre pack.
Choisissez comment l’objet sélectionne son modèle, remplissez chemins et branches, et copiez un seul fichier d’item definition.
Single display model donne un aspect fixe. Selected state bascule avec une condition sur selected. Charge stages suit le temps de recharge avec range_dispatch. Main-hand context utilise select sur la main.
Espace de noms et chemin donnent assets/<namespace>/items/<path>.json. Un objet l’utilise via son composant item_model ; un fichier portant le nom d’un objet vanilla dans l’espace minecraft remplace l’apparence de cet objet.
Le modèle affiché quand aucune branche ne correspond. Visez un modèle qui existe, par exemple le vanilla, pour qu’un cas manquant ne s’affiche jamais en texture d’erreur violette et noire.
Pour custom_model_data, l’index choisit la case : la n-ième chaîne pour select, le n-ième flottant pour range_dispatch.
Pour select, une branche est une valeur et un modèle. Pour range_dispatch, un seuil et un modèle : le seuil le plus haut sans dépasser la valeur l’emporte. Pour condition, la première branche sert si vrai, la seconde si faux.
Chaque chemin du fichier mène à assets/<namespace>/models/<path>.json. Une faute de frappe donne la texture d’erreur, pas un message.
Un select sur custom_model_data compare du texte : donnez à l’objet custom_model_data={strings:["novice"]} et écrivez novice dans la branche.
minecraft:damage est normalisé par défaut : 0.25 veut dire qu’un quart de la durabilité est usé, pas 25 points.
Les item definitions existent depuis la 1.21.4 et restent actuelles jusqu’en 26.3. Avant la 1.21.4, les modèles choisissaient leurs variantes via des overrides dans les fichiers models/item : ce fichier n’y fait rien. Commande associée : /give @p minecraft:book[item_model="cubeinsquare:book/formulary",custom_model_data={strings:["novice"]}].