Texture 'pulling' arc
-
Pfiou, tous cela m’a l’air bien plus compliqué de ce que je pensait…
Je pense que je vais abbandoner pour l’instant, je reprendrais plus tard, quand je serais assez expérimenté pour faire cela -
Bon, je me suis remis a ce topic
J’ai tenté, et j’ai foiréClasse du Clientproxy
registerItem(BladedBowDiamond.diamond_bladed_bow, 0, Reference.MOD_ID + ":diamond_bladed_bow_standby"); registerItem(BladedBowDiamond.diamond_bladed_bow, 1, Reference.MOD_ID + ":diamond_bladed_bow_pulling_0"); registerItem(BladedBowDiamond.diamond_bladed_bow, 2, Reference.MOD_ID + ":diamond_bladed_bow_pulling_1"); registerItem(BladedBowDiamond.diamond_bladed_bow, 3, Reference.MOD_ID + ":diamond_bladed_bow_pulling_2"); ModelBakery.addVariantName(BladedBowDiamond.diamond_bladed_bow, new String[] {Reference.MOD_ID + ":diamond_bladed_bow_standby", Reference.MOD_ID + ":diamond_bladed_bow_pulling_0", Reference.MOD_ID + ":diamond_bladed_bow_pulling_1", Reference.MOD_ID + ":diamond_bladed_bow_pulling_2"}); } private void registerItem(Item diamond_bladed_bow, int i, String identifier) { ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher(); mesher.register(diamond_bladed_bow, i, new ModelResourceLocation(identifier, "inventory")); }J’ai du utilisé la méthode registerItem auto généré, car celle de robin ne fonctionnait pas.
Classe de l’itme
@Override public ModelResourceLocation getModel(ItemStack stack, EntityPlayer player, int useRemaining) { ModelResourceLocation modelresourcelocation = new ModelResourceLocation(Reference.MOD_ID + ":diamond_bladed_bow_standby", "inventory"); if(stack.getItem() == this && player.getItemInUse() != null) { if(useRemaining >= 18) { modelresourcelocation = new ModelResourceLocation(Reference.MOD_ID + ":diamond_bladed_bow_pulling_0", "inventory"); } else if(useRemaining > 13) { modelresourcelocation = new ModelResourceLocation(Reference.MOD_ID + ":diamond_bladed_bow_pulling_1", "inventory"); } else if(useRemaining > 0) { modelresourcelocation = new ModelResourceLocation(Reference.MOD_ID + ":diamond_bladed_bow_pulling_2", "inventory"); } } return modelresourcelocation; }Pour une fois, j’ai relu 3x mon code avant de demander de l’aide !
Je me demande : Faudrait-il un .json pour chaque phase de l’arc ?
Car l’arc de base à plusieurs .json- bow_standby.json
- bow_pulling_0.json
- bow_pulling_1.json
- bow_pulling_2.json
Il est assez tard à l’heure ou j’ecrit ce message ( 01:45 ), je vais dormir et je vais tester cela
Cela focntionne, mais je n’ai qu’une animation ( La pulling_0 je croit )
-
Ajoute des logs en mettant dedans la variable useRemaining pour voir jusqu’où cette valeur va.
-
Euh… je n’ai pas trop compris ce que tu veut dire
Je n’ai aps encore une troop grande expérience sur Java ( Mais je me lance sur OpenClassroom quand je serais en vacances ( Lieu )) donc je ne sais pas faire un logger
j’ai tenter de mettre un PrintIn dans une méthode else if(useRemaining), mais cela fait crasher mon jeu -
Si tu n’as pas de logger, fait un System.ou.println(useRemaining) dans la fonction getModel.
-
Déso, j’avais un crash, et je devais le regler
Quand je right click avec l’arc, ce la donne ça dans les logs0 0 71993 71986 71981 71975 71969 71963 0 0
Donc c’est bon, j’ai compris l’erreur, je vais faire des tests pour voir quels sont les meilleurs valeurs a mettre
(PS : j’ai un bug sur mon client Debug, sa me le lance en normal, idée de ce que cela pourrait être ? ) -
C’est à dire ? Si tu cliques sur debug, çà lance en debug.
-
eh bien non, moi ca ne me lance pas les consoles suplémentaires du débug, et quand je modfie une valeur, elle n’est pas modfié en temps réel
-
Il n’y a pas de console supplémentaire en debug, si tu as une autre page sur eclipse qui veut s’ouvrir c’est qu’il y a eu une erreur donc il faut que tu lances en version normale. çà arrive notamment quand un thread autre que celui principal crash.
-
Ah non c’est bon, mon Debug fonctionne.
Je le clos le sujet, en espérent ne jamais avoir a le re-ouvrir