MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    Render Models

    Planifier Épinglé Verrouillé Déplacé Résolu 1.8.x
    1.8
    18 Messages 6 Publieurs 3.3k Vues 1 Watching
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • robin4002R Hors-ligne
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
      dernière édition par

      Salut,
      Je ne me suis pas encore intérressé aux armures en 1.8, tu peux montrer un screen du problème et le détailler ?

      1 réponse Dernière réponse Répondre Citer 0
      • DeletedD Hors-ligne
        Deleted
        dernière édition par

        @‘robin4002’:

        Salut,
        Je ne me suis pas encore intérressé aux armures en 1.8, tu peux montrer un screen du problème et le détailler ?

        Je pense que la méthode getArmorTexture a changé de nom. Je n’ai jamais codé en 1.8 dont je ne peux pas te l’assurer.

        1 réponse Dernière réponse Répondre Citer 0
        • checconioC Hors-ligne
          checconio
          dernière édition par

          Alors voila mon armure est créer correctement:

          Mais n’apparais pas sur le joueur:

          Voici le code d’erreur de la console.

          
          [23:14:59] [Client thread/ERROR]: Couldn't render entity
          java.lang.NullPointerException
              at net.minecraft.client.renderer.entity.layers.LayerArmorBase.getArmorResource(LayerArmorBase.java:179) ~[LayerArmorBase.class:?]
              at net.minecraft.client.renderer.entity.layers.LayerArmorBase.func_177182_a(LayerArmorBase.java:62) ~[LayerArmorBase.class:?]
              at net.minecraft.client.renderer.entity.layers.LayerArmorBase.doRenderLayer(LayerArmorBase.java:38) ~[LayerArmorBase.class:?]
              at net.minecraft.client.renderer.entity.RendererLivingEntity.func_177093_a(RendererLivingEntity.java:480) ~[RendererLivingEntity.class:?]
              at net.minecraft.client.renderer.entity.RendererLivingEntity.doRender(RendererLivingEntity.java:190) [RendererLivingEntity.class:?]
              at net.minecraft.client.renderer.entity.RenderPlayer.func_180596_a(RenderPlayer.java:71) [RenderPlayer.class:?]
              at net.minecraft.client.renderer.entity.RenderPlayer.doRender(RenderPlayer.java:275) [RenderPlayer.class:?]
              at net.minecraft.client.renderer.entity.RenderManager.doRenderEntity(RenderManager.java:377) [RenderManager.class:?]
              at net.minecraft.client.renderer.entity.RenderManager.renderEntityWithPosYaw(RenderManager.java:357) [RenderManager.class:?]
              at net.minecraft.client.gui.inventory.GuiInventory.drawEntityOnScreen(GuiInventory.java:123) [GuiInventory.class:?]
              at net.minecraft.client.gui.inventory.GuiContainerCreative.drawGuiContainerBackgroundLayer(GuiContainerCreative.java:827) [GuiContainerCreative.class:?]
              at net.minecraft.client.gui.inventory.GuiContainer.drawScreen(GuiContainer.java:95) [GuiContainer.class:?]
              at net.minecraft.client.renderer.InventoryEffectRenderer.drawScreen(InventoryEffectRenderer.java:53) [InventoryEffectRenderer.class:?]
              at net.minecraft.client.gui.inventory.GuiContainerCreative.drawScreen(GuiContainerCreative.java:659) [GuiContainerCreative.class:?]
              at net.minecraftforge.client.ForgeHooksClient.drawScreen(ForgeHooksClient.java:460) [ForgeHooksClient.class:?]
              at net.minecraft.client.renderer.EntityRenderer.updateCameraAndRender(EntityRenderer.java:1134) [EntityRenderer.class:?]
              at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1114) [Minecraft.class:?]
              at net.minecraft.client.Minecraft.run(Minecraft.java:376) [Minecraft.class:?]
              at net.minecraft.client.main.Main.main(Main.java:117) [Main.class:?]
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_45]
              at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_45]
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_45]
              at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_45]
              at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.11.jar:?]
              at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.11.jar:?]
              at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source) [start/:?]
              at GradleStart.main(Unknown Source) [start/:?]
          
          

          Youtubeur Minecraft: https://www.youtube.com/user/checconio84

          1 réponse Dernière réponse Répondre Citer 0
          • L Hors-ligne
            Laserflip33
            dernière édition par

            Tu es sûr que ce n’est pas un problème venant de la texture du layer qui n’est pas adaptée? Sinon elle se pourrait oui que certaine méthodes aient changé de nom.

            1 réponse Dernière réponse Répondre Citer 0
            • robin4002R Hors-ligne
              robin4002 Moddeurs confirmés Rédacteurs Administrateurs
              dernière édition par

              Je peux voir la déclaration de ton ArmorMaterial dans ta classe principale ?
              Aussi je viens de voir qu’il manque le : dans le return de ta fonction getArmorTexture

              1 réponse Dernière réponse Répondre Citer 0
              • SCAREXS Hors-ligne
                SCAREX
                dernière édition par

                Rajoute l’annotation @override au-dessus de ta méthode pour vérifier qu’elle existe, ou fait Alt + shift + s puis “override/implement methods” et choisis la méthode, çà évite de faire des erreurs.

                Site web contenant mes scripts : http://SCAREXgaming.github.io

                Pas de demandes de support par MP ni par skype SVP.
                Je n'accepte sur skype que l…

                1 réponse Dernière réponse Répondre Citer 0
                • EmotionFoxE Hors-ligne
                  EmotionFox
                  dernière édition par

                  Pour la déclaration de ton matériel d’armure ça ce passe comme ça (avec la déclaration des items) :

                  public static ArmorMaterial enumArmorMaterialViridis = EnumHelper.addArmorMaterial("VIRIDIS", "viridis", 17, new int[] {3, 6, 5, 3}, 9);
                  

                  "

                  (String name, String textureName, int durability, int[] reductionAmounts, int enchantability)
                  

                  "

                  L’armure en diamant ayant ces propriétés :

                  DIAMOND("diamond", 33, new int[]{3, 8, 6, 3}, 10);
                  

                  Puis les items :

                     public static Item viridisHelmet = new ViridisArmor(enumArmorMaterialViridis, 5, 0);
                     public static Item viridisChestplate = new ViridisArmor(enumArmorMaterialViridis, 5, 1);
                     public static Item viridisLeggings = new ViridisArmor(enumArmorMaterialViridis, 5, 2);
                     public static Item viridisBoots = new ViridisArmor(enumArmorMaterialViridis, 5, 3);
                  

                  Et finalement la classe de l’armure ici “ViridisArmor” :

                  public class ViridisArmor extends ItemArmor
                  {
                     public ViridisArmor(ArmorMaterial material, int renderIndex, int armorType)
                     {
                         super(material, renderIndex, armorType);
                     }
                  
                     @Override
                     public String getArmorTexture(ItemStack stack, Entity entity, int slot, String type)
                     {
                         if(slot == 2)
                         {
                             return Infos.MODID + ":textures/models/armor/viridis_layer_2.png";
                         }
                         return Infos.MODID + ":textures/models/armor/viridis_layer_1.png";
                     }
                  
                     @Override
                     public boolean getIsRepairable(ItemStack input, ItemStack repair)
                     {
                         if(repair.getItem() == Item.getItemFromBlock(EmotionBlocks.viridisCristal))
                         {
                             return true;
                         }
                         return false;
                     }
                  }
                  

                  Avec la fonction “getIsRepairable” pour que l’armure puisse être réparée via l’enclume (très utile), voilà je pense que ça devrait fonctionner et que tu comprendra facilement le code.

                  Ps: Il y auras peut-être des erreurs dans ce cas préviens moi étant donné que j’utilise maintenant un rendue personnalisée pour mon armure.

                  Ps 2: Je te conseil de reprendre les textures de l’armure en diamant pour designer la tienne.

                  1 réponse Dernière réponse Répondre Citer 0
                  • checconioC Hors-ligne
                    checconio
                    dernière édition par

                    @‘SCAREX’:

                    Rajoute l’annotation @override au-dessus de ta méthode pour vérifier qu’elle existe, ou fait Alt + shift + s puis “override/implement methods” et choisis la méthode, çà évite de faire des erreurs.

                    lorsque j’implémente Override il n’y a aucune erreur.

                    Youtubeur Minecraft: https://www.youtube.com/user/checconio84

                    1 réponse Dernière réponse Répondre Citer 0
                    • SCAREXS Hors-ligne
                      SCAREX
                      dernière édition par

                      Implémente ? C’est une annotation, pas une interface

                      Site web contenant mes scripts : http://SCAREXgaming.github.io

                      Pas de demandes de support par MP ni par skype SVP.
                      Je n'accepte sur skype que l…

                      1 réponse Dernière réponse Répondre Citer 0
                      • checconioC Hors-ligne
                        checconio
                        dernière édition par

                        @‘EmotionFox’:

                        Pour la déclaration de ton matériel d’armure ça ce passe comme ça (avec la déclaration des items) :

                        public static ArmorMaterial enumArmorMaterialViridis = EnumHelper.addArmorMaterial("VIRIDIS", "viridis", 17, new int[] {3, 6, 5, 3}, 9);
                        

                        "

                        (String name, String textureName, int durability, int[] reductionAmounts, int enchantability)
                        

                        "

                        L’armure en diamant ayant ces propriétés :

                        DIAMOND("diamond", 33, new int[]{3, 8, 6, 3}, 10);
                        

                        Puis les items :

                           public static Item viridisHelmet = new ViridisArmor(enumArmorMaterialViridis, 5, 0);
                           public static Item viridisChestplate = new ViridisArmor(enumArmorMaterialViridis, 5, 1);
                           public static Item viridisLeggings = new ViridisArmor(enumArmorMaterialViridis, 5, 2);
                           public static Item viridisBoots = new ViridisArmor(enumArmorMaterialViridis, 5, 3);
                        

                        Et finalement la classe de l’armure ici “ViridisArmor” :

                        public class ViridisArmor extends ItemArmor
                        {
                           public ViridisArmor(ArmorMaterial material, int renderIndex, int armorType)
                           {
                               super(material, renderIndex, armorType);
                           }
                        
                           @Override
                           public String getArmorTexture(ItemStack stack, Entity entity, int slot, String type)
                           {
                               if(slot == 2)
                               {
                                   return Infos.MODID + ":textures/models/armor/viridis_layer_2.png";
                               }
                               return Infos.MODID + ":textures/models/armor/viridis_layer_1.png";
                           }
                        
                           @Override
                           public boolean getIsRepairable(ItemStack input, ItemStack repair)
                           {
                               if(repair.getItem() == Item.getItemFromBlock(EmotionBlocks.viridisCristal))
                               {
                                   return true;
                               }
                               return false;
                           }
                        }
                        

                        Avec la fonction “getIsRepairable” pour que l’armure puisse être réparée via l’enclume (très utile), voilà je pense que ça devrait fonctionner et que tu comprendra facilement le code.

                        Ps: Il y auras peut-être des erreurs dans ce cas préviens moi étant donné que j’utilise maintenant un rendue personnalisée pour mon armure.

                        Ps 2: Je te conseil de reprendre les textures de l’armure en diamant pour designer la tienne.

                        Merci en regardant les codes que tu m’a envoyer j’ai trouver mon erreur, dans la ligne correspondant au material l’emplacement où il fallait maitre le nom de la texture j’y avais mit <<null>> voila pourquoi il ne chercher pas les textures.

                        Par contre au moment de la fonction “getIsRepairable” il y a “EmotionBlocks.viridisCristal” il s’agit que quel block ?</null>

                        Youtubeur Minecraft: https://www.youtube.com/user/checconio84

                        1 réponse Dernière réponse Répondre Citer 0
                        • checconioC Hors-ligne
                          checconio
                          dernière édition par

                          @‘SCAREX’:

                          Implémente ? C’est une annotation, pas une interface

                          A ok ^^ mais j’ai trouver mon problème merci quand même 🙂

                          Youtubeur Minecraft: https://www.youtube.com/user/checconio84

                          1 réponse Dernière réponse Répondre Citer 0
                          • robin4002R Hors-ligne
                            robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                            dernière édition par

                            Si c’est résolu mets la balise résolu.

                            1 réponse Dernière réponse Répondre Citer 0
                            • checconioC Hors-ligne
                              checconio
                              dernière édition par

                              Merci à tous 🙂

                              Youtubeur Minecraft: https://www.youtube.com/user/checconio84

                              1 réponse Dernière réponse Répondre Citer 0
                              • EmotionFoxE Hors-ligne
                                EmotionFox
                                dernière édition par

                                Il s’agit du bloc qui permet de réparer l’armure, tu peux aussi mettre un item :

                                @Override
                                public boolean getIsRepairable(ItemStack input, ItemStack repair)
                                {
                                if(repair.getItem() == Items.apple)
                                {
                                return true;
                                }
                                return false;
                                }
                                

                                1 réponse Dernière réponse Répondre Citer 0
                                • checconioC Hors-ligne
                                  checconio
                                  dernière édition par

                                  @‘EmotionFox’:

                                  Il s’agit du bloc qui permet de réparer l’armure, tu peux aussi mettre un item :

                                     @Override
                                     public boolean getIsRepairable(ItemStack input, ItemStack repair)
                                     {
                                         if(repair.getItem() == Items.apple)
                                         {
                                             return true;
                                         }
                                         return false;
                                     }
                                  

                                  A ok merci

                                  Youtubeur Minecraft: https://www.youtube.com/user/checconio84

                                  1 réponse Dernière réponse Répondre Citer 0
                                  • 1 / 1
                                  • Premier message
                                    Dernier message
                                  Design by Woryk
                                  ContactMentions Légales

                                  MINECRAFT FORGE FRANCE © 2024

                                  Powered by NodeBB