MFF

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

    Créer une armure

    Planifier Épinglé Verrouillé Déplacé Les items
    1.7.x
    247 Messages 39 Publieurs 73.4k Vues 9 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.
    • A Hors-ligne
      aypristyle
      dernière édition par

      @‘Plaigon’:

      https://www.minecraftforgefrance.fr/showthread.php?tid=4020

      Bonjour Plaigon j’ai déjà regarder ce tutoriel mais je n’ai pas réussi à le faire marcher pour la version 1.11 de minecraft (le sujet est en 1.7.10) mais  merci quand même si un jour je me met à coder en 1.7.10 je saurais ou chercher 😉

      **Je suis un membre apprécié et joueur, j'ai déjà obtenu 1[ point de réputation./…

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

        Salut,
        il ne s’agit pas d’un tutoriel mais d’une demande d’aide. As-tu également regardé la première réponse de Benjamin Loison ? La réponse est dans son écrit.

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

          @‘Plaigon’:

          Salut,
          il ne s’agit pas d’un tutoriel mais d’une demande d’aide. As-tu également regardé la première réponse de Benjamin Loison ? La réponse est dans son écrit.

          Désolé Plaigon je me suis trompée ce n’est pas le tutorile mais bien la demande d’aide j’ai bien regarder la première réponse le problème est que en 1.11 quand j’essaye de sélectionner une pièce d’armure dans la fonction

          if(player.inventory.armorInventory[0] != null)
          ``` 
          j'ai l'erreur suivante qui apparaît  - The type of the expression must be an array type but it resolved to NonNullList <itemstack>je vais essayer de bidouiller un truc pour que ça fonctionne je te tiens au courant ;)</itemstack>

          **Je suis un membre apprécié et joueur, j'ai déjà obtenu 1[ point de réputation./…

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

            Évite les null-check, c’est inutile sur NonNullList comme t’indique eclipse.

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

              @‘Plaigon’:

              Évite les null-check, c’est inutile sur NonNullList comme t’indique eclipse.

              Désolé de te déranger mais je ne comprend pas la marche à suivre pour que cette fonction marche j’ai essayé de ne pas mettre le selecteur et je n’ai plus d’erreur c même eclipse qui me propose via l’ampoule d’ajouter un nulle check puis ensuite ça me dit de l’enlever je ne comprend pas le fonctionnement de cette fonction

              **Je suis un membre apprécié et joueur, j'ai déjà obtenu 1[ point de réputation./…

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

                En fait, en 1.11, les ItemStack[] ont été remplacé par des NonNullList<itemstack>, qui ont plusieurs différences : on ne peut pas utiliser les crochets pour sélectionner un objet, mais on doit utiliser la fonction get. De plus, comme son nom l’indique, les ItemStack ne peuvent plus être null. Il faut donc remplacer

                if(player.inventory.armorInventory[0] != null)
                

                par

                if(!player.inventory.armorInventory.get(0).isEmpty())
                ```</itemstack>
                1 réponse Dernière réponse Répondre Citer 0
                • A Hors-ligne
                  aypristyle
                  dernière édition par

                  Un grand merci à toi @Plaigon pour ta patience et à toi @LeBossMax2 pour ta réponse je n’étais pas au courant de ce changement !
                  EDIT: l’erreur persiste je vais essayer de voir si je trouve une solution c’est le .get(0) qui cause le problème

                  **Je suis un membre apprécié et joueur, j'ai déjà obtenu 1[ point de réputation./…

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

                    @‘LeBossMax2’:

                    En fait, en 1.11, les ItemStack[] ont été remplacé par des NonNullList<itemstack>, qui ont plusieurs différences : on ne peut pas utiliser les crochets pour sélectionner un objet, mais on doit utiliser la fonction get. De plus, comme son nom l’indique, les ItemStack ne peuvent plus être null. Il faut donc remplacer

                    if(player.inventory.armorInventory[0] != null)
                    

                    par

                    if(!player.inventory.armorInventory.get(0).isEmpty())
                    ```</itemstack>
                    

                    Je viens d’essayer ta méthode mais elle ne fonctionne pas non plus j’ai toujours des erreurs… je vais essayer d’autre chose pour essayer de faire marcher cette fonction 😉

                    **Je suis un membre apprécié et joueur, j'ai déjà obtenu 1[ point de réputation./…

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

                      Salut
                          Sur mon mod 1.7.10 j’ai essayer de mettre les models plusieurs fois mais ça ne marche pas y pas d’erreur mais dans le jeu ça ma affiche pas les models et il y la texture du cuir blanc voila le code de la class

                      
                      package com.Project.Iriduim.Items;
                      
                      import com.Project.Iriduim.Reference;
                      import com.Project.Iriduim.init.ItemMod;
                      import com.sun.xml.internal.stream.Entity;
                      
                      import net.minecraft.entity.player.EntityPlayer;
                      import net.minecraft.item.ItemArmor;
                      import net.minecraft.item.ItemStack;
                      import net.minecraft.potion.Potion;
                      import net.minecraft.potion.PotionEffect;
                      import net.minecraft.world.World;
                      
                      public class IriduimArmor extends ItemArmor
                      {
                      
                         public IriduimArmor(ArmorMaterial Material,  int type)
                         {
                             super(Material, 0, type);    }
                      
                         public String getArmorTexture(ItemStack stack, Entity entity, int slot, String type)
                         {
                             if(stack.getItem() == ItemMod.IriduimLeggings)
                             {
                             return Reference.MOD_ID + ":textures/models/Armor/test_layer_2.png";
                             }
                             return Reference.MOD_ID + ":textures/models/Armor/test_layer_1.png";
                         }
                      public boolean getIsRepairable(ItemStack input, ItemStack repair)
                      {
                          if(repair.getItem() == ItemMod.IriduimIngot_)
                          {
                              return true;
                          }
                          return false;
                      
                      }
                         public void onArmorTick(World world, EntityPlayer player, ItemStack stack)
                         {
                      
                             player.addPotionEffect(new PotionEffect(Potion.nightVision.id, 220, 0));
                             player.addPotionEffect(new PotionEffect(Potion.moveSpeed.id, 220, 0));
                        }
                      
                      }
                      
                      

                      merci de me répondre

                      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

                        Salut,
                        Retires la ligne “import com.sun.xml.internal.stream.Entity;” et importes le bon Entity (celui dans net.minecraft.entity).

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

                          Bonjour j’ai un problème :
                          J’ai créé 3 armures j’ai vérifié trois fois le code mais lorsque je vais en jeu je vois bien le nom modifié, la texture de l’item, mais je ne vois pas la texture sur le joueur

                          Voici mon fichier Armor.java

                          package com.hypala.hypalacore.common;
                          
                          import com.sun.xml.internal.stream.Entity;
                          
                          import net.minecraft.item.ItemArmor;
                          import net.minecraft.item.ItemStack;
                          
                          public class Armor extends ItemArmor
                          {
                          
                              public Armor(ArmorMaterial material, int type)
                              {
                                  super(material, 0, type);
                              }
                              
                              //Armures Textures
                              public String getArmorTexture(ItemStack stack, Entity entity, int slot, String type)
                              {
                                      if(stack.getItem() == HypalaCore.leggingsLirium)
                                      {
                                          return HypalaCore.MODID + ":textures/models/armor/lirium_layer_2.png";
                                      }
                                      if(stack.getItem() == HypalaCore.chestPlateLirium || stack.getItem() == HypalaCore.helmetLirium || stack.getItem() == HypalaCore.bootsLirium)
                                      {
                                          return HypalaCore.MODID + ":textures/models/armor/lirium_layer_1.png";
                                      }
                                      if(stack.getItem() == HypalaCore.leggingsAithia)
                                      {
                                          return HypalaCore.MODID + ":textures/models/armor/aithia_layer_2.png";
                                      }
                                      if(stack.getItem() == HypalaCore.chestPlateAithia || stack.getItem() == HypalaCore.helmetAithia || stack.getItem() == HypalaCore.bootsAithia)
                                      {
                                          return HypalaCore.MODID + ":textures/models/armor/aithia_layer_1.png";
                                      }
                                      if(stack.getItem() == HypalaCore.leggingsIrist)
                                      {
                                          return HypalaCore.MODID + ":textures/models/armor/irist_layer_2.png";
                                      }
                                      else if(stack.getItem() == HypalaCore.chestPlateIrist || stack.getItem() == HypalaCore.helmetIrist || stack.getItem() == HypalaCore.bootsIrist)
                                      {
                                          return HypalaCore.MODID + ":textures/models/armor/irist_layer_1.png";
                                      }
                                      return "";
                              }
                          }
                          

                          Et voici ma classe principale :

                          package com.hypala.hypalacore.common;
                          
                          import com.hypala.hypalacore.proxy.CommonProxy;
                          
                          import cpw.mods.fml.common.Mod;
                          import cpw.mods.fml.common.Mod.EventHandler;
                          import cpw.mods.fml.common.Mod.Instance;
                          import cpw.mods.fml.common.SidedProxy;
                          import cpw.mods.fml.common.event.FMLInitializationEvent;
                          import cpw.mods.fml.common.event.FMLPostInitializationEvent;
                          import cpw.mods.fml.common.event.FMLPreInitializationEvent;
                          import cpw.mods.fml.common.registry.GameRegistry;
                          import net.minecraft.creativetab.CreativeTabs;
                          import net.minecraft.item.Item;
                          import net.minecraft.item.ItemArmor.ArmorMaterial;
                          import net.minecraftforge.common.util.EnumHelper;
                          
                          @Mod(modid = "hypalacore", name = "HypalaCore", version = "1.0.0")
                          
                          public class HypalaCore
                          {
                              public static final String MODID = "hypalacore";
                              
                              @Instance("hypalacore")
                              public static HypalaCore instance;
                              
                              @SidedProxy(clientSide = "com.hypala.hypalacore.proxy.ClientProxy", serverSide = "com.hypala.hypalacore.proxy.CommonProxy")
                              public static CommonProxy proxy;
                              
                              public static CreativeTabs tabHypalaCore;
                              public static Item aithiaIngot, liriumIngot, iristIngot, mythicIngot, mythicFragment, helmetAithia, chestPlateAithia, leggingsAithia, bootsAithia;
                              public static Item helmetLirium, chestPlateLirium, leggingsLirium, bootsLirium, helmetIrist, chestPlateIrist, leggingsIrist, bootsIrist;
                             
                              public static ArmorMaterial armorAithia = EnumHelper.addArmorMaterial("AITHIA", 30, new int[]{4, 9, 7, 4}, 20);
                              public static ArmorMaterial armorLirium = EnumHelper.addArmorMaterial("LIRIUM", 40, new int[]{5, 10, 7, 5}, 25);
                              public static ArmorMaterial armorIrist = EnumHelper.addArmorMaterial("IRIST", 50, new int[]{7, 10, 8, 7}, 15);
                              
                              @EventHandler
                              public void preInit(FMLPreInitializationEvent event)
                              {
                                  tabHypalaCore= new TabHypalaCore("HypalaCore").setBackgroundImageName("Menu");
                                  
                                  //Armure Aithia
                                  helmetAithia = new Armor(armorAithia, 0).setUnlocalizedName("Aithia Helmet").setTextureName("hypalacore:aithia_helmet").setCreativeTab(tabHypalaCore);
                                  chestPlateAithia = new Armor(armorAithia, 1).setUnlocalizedName("Aithia Chestplate").setTextureName("hypalacore:aithia_chestplate").setCreativeTab(tabHypalaCore);
                                  leggingsAithia = new Armor(armorAithia, 2).setUnlocalizedName("Aithia Leggings").setTextureName("hypalacore:aithia_leggings").setCreativeTab(tabHypalaCore);
                                  bootsAithia = new Armor(armorAithia, 3).setUnlocalizedName("Aithia Boots").setTextureName("hypalacore:aithia_boots").setCreativeTab(tabHypalaCore);
                                  
                                  GameRegistry.registerItem(helmetAithia, "aithia_helmet");
                                  GameRegistry.registerItem(chestPlateAithia, "aithia_chestplate");
                                  GameRegistry.registerItem(leggingsAithia, "aithia_legging");
                                  GameRegistry.registerItem(bootsAithia, "aithia_boots");
                                  
                                  //Armure Lirium
                                  helmetLirium = new Armor(armorLirium, 0).setUnlocalizedName("Lirium Helmet").setTextureName("hypalacore:lirium_helmet").setCreativeTab(tabHypalaCore);
                                  chestPlateLirium = new Armor(armorLirium, 1).setUnlocalizedName("Lirium Chestplate").setTextureName("hypalacore:lirium_chestplate").setCreativeTab(tabHypalaCore);
                                  leggingsLirium = new Armor(armorLirium, 2).setUnlocalizedName("Lirium Leggings").setTextureName("hypalacore:lirium_leggings").setCreativeTab(tabHypalaCore);
                                  bootsLirium = new Armor(armorLirium, 3).setUnlocalizedName("Lirium Boots").setTextureName("hypalacore:lirium_boots").setCreativeTab(tabHypalaCore);
                                  
                                  GameRegistry.registerItem(helmetLirium, "lirium_helmet");
                                  GameRegistry.registerItem(chestPlateLirium, "lirium_chestplate");
                                  GameRegistry.registerItem(leggingsLirium, "lirium_legging");
                                  GameRegistry.registerItem(bootsLirium, "lirium_boots");
                                  
                                  //Armure Irist
                                  helmetIrist = new Armor(armorIrist, 0).setUnlocalizedName("Irist Helmet").setTextureName("hypalacore:irist_helmet").setCreativeTab(tabHypalaCore);
                                  chestPlateIrist = new Armor(armorIrist, 1).setUnlocalizedName("Irist Chestplate").setTextureName("hypalacore:irist_chestplate").setCreativeTab(tabHypalaCore);
                                  leggingsIrist = new Armor(armorIrist, 2).setUnlocalizedName("Irist Leggings").setTextureName("hypalacore:irist_leggings").setCreativeTab(tabHypalaCore);
                                  bootsIrist = new Armor(armorIrist, 3).setUnlocalizedName("Irist Boots").setTextureName("hypalacore:irist_boots").setCreativeTab(tabHypalaCore);
                                  
                                  GameRegistry.registerItem(helmetIrist, "irist_helmet");
                                  GameRegistry.registerItem(chestPlateIrist, "irist_chestplate");
                                  GameRegistry.registerItem(leggingsIrist, "irist_legging");
                                  GameRegistry.registerItem(bootsIrist, "irist_boots");
                                  
                                  //Lingots
                                  aithiaIngot = new Ingot().setUnlocalizedName("Aithia Ingot").setTextureName("hypalacore:aithia_ingot").setCreativeTab(tabHypalaCore);
                                  liriumIngot = new Ingot().setUnlocalizedName("Lirium Ingot").setTextureName("hypalacore:lirium_ingot").setCreativeTab(tabHypalaCore);
                                  iristIngot = new Ingot().setUnlocalizedName("Irist Ingot").setTextureName("hypalacore:irist_ingot").setCreativeTab(tabHypalaCore);
                                  mythicIngot = new Ingot().setUnlocalizedName("Mythic Ingot").setTextureName("hypalacore:mythic_ingot").setCreativeTab(tabHypalaCore);
                                  mythicFragment = new Ingot().setUnlocalizedName("Mythic Fragment").setTextureName("hypalacore:mythic_fragment").setCreativeTab(tabHypalaCore);
                                  
                                  GameRegistry.registerItem(aithiaIngot, "aithia_ingot");
                                  GameRegistry.registerItem(liriumIngot, "lirium_ingot");
                                  GameRegistry.registerItem(iristIngot, "irist_ingot");
                                  GameRegistry.registerItem(mythicIngot, "mythic_ingot");
                                  GameRegistry.registerItem(mythicFragment, "mythic_fragment");
                              }
                              
                              @EventHandler
                              public void init(FMLInitializationEvent event)
                              {
                                 
                              }
                              
                              @EventHandler
                              public void postInit(FMLPostInitializationEvent event)
                              {
                                 
                              }
                          }
                          

                          Merci d’avance pour votre aide !

                          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

                            Exactement le même problème que précédemment, tu as importé le mauvais Entity

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

                              Ah merci je n’avais pas fait attention sur le coup car j’ai regardé le tuto plusieurs fois pour voir le problème. Merci de m’avoir aidé !

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

                                Ce message a été supprimé !
                                1 réponse Dernière réponse Répondre Citer 0
                                • OverSquidO Hors-ligne
                                  OverSquid
                                  dernière édition par

                                  Ce message a été supprimé !
                                  1 réponse Dernière réponse Répondre Citer 0
                                  • OverSquidO Hors-ligne
                                    OverSquid
                                    dernière édition par

                                    J’aurais juste une question sur ou mettre les effets car j’ai 3 armures mais je voudrais mettre des effets et je ne sais pas où il faut placer la fonction.

                                    package com.hypala.hypalacore.common;
                                    
                                    import cpw.mods.fml.relauncher.Side;
                                    import cpw.mods.fml.relauncher.SideOnly;
                                    import net.minecraft.entity.Entity;
                                    import net.minecraft.init.Items;
                                    import net.minecraft.item.ItemArmor;
                                    import net.minecraft.item.ItemStack;
                                    
                                    public class Armor extends ItemArmor
                                    {
                                    
                                        public Armor(ArmorMaterial material, int type)
                                        {
                                            super(material, 0, type);
                                        }
                                        
                                        //Armures Textures
                                        public String getArmorTexture(ItemStack stack, Entity entity, int slot, String type)
                                        {
                                            
                                                //Lirium
                                                if(stack.getItem() == HypalaCore.leggingsLirium)
                                                {
                                                    return HypalaCore.MODID + ":textures/models/armor/lirium_layer_2.png";
                                                }
                                                else if(stack.getItem() == HypalaCore.chestPlateLirium || stack.getItem() == HypalaCore.helmetLirium || stack.getItem() == HypalaCore.bootsLirium)
                                                {
                                                    return HypalaCore.MODID + ":textures/models/armor/lirium_layer_1.png";
                                                }
                                                
                                                //Aithia
                                                if(stack.getItem() == HypalaCore.leggingsAithia)
                                                {
                                                    return HypalaCore.MODID + ":textures/models/armor/aithia_layer_2.png";
                                                }
                                                else if(stack.getItem() == HypalaCore.chestPlateAithia || stack.getItem() == HypalaCore.helmetAithia || stack.getItem() == HypalaCore.bootsAithia)
                                                {
                                                    return HypalaCore.MODID + ":textures/models/armor/aithia_layer_1.png";
                                                }
                                                
                                                //Irist
                                                if(stack.getItem() == HypalaCore.leggingsIrist)
                                                {
                                                    return HypalaCore.MODID + ":textures/models/armor/irist_layer_2.png";
                                                }
                                                return HypalaCore.MODID + ":textures/models/armor/irist_layer_1.png";
                                        }
                                        public boolean getIsRepairable(ItemStack input, ItemStack repairItem)
                                        {
                                            return false;
                                        }
                                        public boolean hasEffect(ItemStack par1ItemStack, int pass)
                                        {
                                            return true;
                                        }
                                    }
                                    

                                    PS: J’aimerai mettre des effets sur une seule armure mais les rendre toutes réparables

                                    Merci pour votre aide !

                                    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

                                      Tu peux créer une classe différente pour ton armure ayant des effets.

                                      OverSquidO 1 réponse Dernière réponse Répondre Citer 0
                                      • OverSquidO Hors-ligne
                                        OverSquid @robin4002
                                        dernière édition par OverSquid

                                        D’accord mais quelle nom doit elle avoir ? Je ne comprend pas ou mettre le code pour les fonctions que je souhaite ajouter. J’aimerais mettre des effest sur la dernière armure celle en Irist et sur les autres j’aimerais juste qu’elle soit réparables.
                                        Merci de ton aide

                                        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 robin4002

                                          Si c’est l’armure en Irist, nommes la classe IristArmor.
                                          Il faudra juste dans ta classe principale penser à changer le new Armor par new IristArmor.

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

                                            D’accord et dans la classe IristArmor je dois mettre la fonction des effets ? Peut on combiner plusieurs effets mais sur des parties d’armure différentes ?

                                            Et par rapport à la fonction Repair j’ai juste à supprimer le code sur l’armure en irist (et la mettre dans la classe IristArmor) et mettre à la suite du code la fonction repair (dans la classe principale) ? La fonction repair sera appliquée à toutes les armures en faisant cette technique ?

                                            J’avoue avoir du mal à comprendre sur ce que je dois faire exactement

                                            1 réponse Dernière réponse Répondre Citer 0
                                            • 1
                                            • 2
                                            • 9
                                            • 10
                                            • 11
                                            • 12
                                            • 13
                                            • 13 / 13
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB