Non résolu Changer la texture et le model d'un item lors d'un clique droit
-
Bonjour, je suis débutant et j’aimerais savoir comment faire en sorte que lorsque le joueur effectue un clique droit avec par exemple une épée présente dans mon mod, sa texture et son model changent s’il vous plaît.
Merci. -
j’ai réussi à trouver ça sur le forum forge anglophone :
https://www.minecraftforge.net/forum/topic/44170-solved-111-changing-texturemodel-file-on-right-click/mais étant débutant je ne comprend pas ce qu’il se dit
Est-ce que quelqu’un pourrait m’expliquer ce qu’il faut faire s’il vous plaît ?
-
Salut, pour changer la texture, tu a besoin de changer le
UnlocalizedName
, tu dois dans le constructeur ajouterthis.setHasSubTypes(true);
pour dire que tu as plusieur metadata pour l’item et aussi override la méthodegetUnlocalizedName(ItemStack)
comme cela :@Override public String getUnlocalizedName(ItemStack stack) { String name = ""; switch(stack.getMetadata()) { case 0: name = "item1"; case 1: name = "item2"; } return name + ".name"; }
Ici la texture va etre
item1
si la meta est de 0 et si elle est de 1, ce seraitem2
.
Tu dois aussi override la methodegetSubItems(CreativeTabs, List)
ou tu ajoutes les différents items avec des metas différentes.
Et pour finir il faut aussi register un model custom avec :ModelLoader.setCustomModelResourceLocation(item, stack.getMetadata(), new ModelResourceLocation(getRegistryName(item.getUnlocalizedName(stack).substring(5)), "inventory"));
Ici stack vient d’un
for
de la liste produite pargetSubItems();
-
@Eno_gamer10
D’accord merci beaucoup pour ta réponse je prendrais le temps d’assimiler tout ça et de tester pour voir si ça fonctionne je te tiendrai au courant, merci encore !