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.5k 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.
    • 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
              • robin4002R Hors-ligne
                robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                dernière édition par

                Si tu veux que la réparation soit possible pour toutes les armures, il faut mettre la fonction dans la classe Armor et dans IristArmor

                Pour les effets, ça dépend ce que tu veux comme effet. Il y a différente façon de faire en fonction du résultat que tu veux (voir la partie bonus).

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

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

                    Ok merci j’aurais juste une dernière question, dans ma classe principale j’ai testé de créer une creativetabs et dans mon jeu une deuxième page apparaît bien le problème c’est que lorsque je clique dessus ça crash

                    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

                      Ça c’est en général causé par l’utilisation d’un item / bloc en tant qu’image qui est null.

                      Assures-toi que l’item / le bloc que tu as mis est bien initialisé, avant l’onglet créatif.

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

                        Bah j’ai ça comme code dans ma classe principale mais ça crash toujours …

                        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("tab_icon.png");;
                                
                                //Armure Aithia
                                helmetAithia = new ArmorAithia(armorAithia, 0).setUnlocalizedName("Aithia Helmet").setTextureName("hypalacore:aithia_helmet").setCreativeTab(tabHypalaCore);
                                chestPlateAithia = new ArmorAithia(armorAithia, 1).setUnlocalizedName("Aithia Chestplate").setTextureName("hypalacore:aithia_chestplate").setCreativeTab(tabHypalaCore);
                                leggingsAithia = new ArmorAithia(armorAithia, 2).setUnlocalizedName("Aithia Leggings").setTextureName("hypalacore:aithia_leggings").setCreativeTab(tabHypalaCore);
                                bootsAithia = new ArmorAithia(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 ArmorLirium(armorLirium, 0).setUnlocalizedName("Lirium Helmet").setTextureName("hypalacore:lirium_helmet").setCreativeTab(tabHypalaCore);
                                chestPlateLirium = new ArmorLirium(armorLirium, 1).setUnlocalizedName("Lirium Chestplate").setTextureName("hypalacore:lirium_chestplate").setCreativeTab(tabHypalaCore);
                                leggingsLirium = new ArmorLirium(armorLirium, 2).setUnlocalizedName("Lirium Leggings").setTextureName("hypalacore:lirium_leggings").setCreativeTab(tabHypalaCore);
                                bootsLirium = new ArmorLirium(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 ArmorIrist(armorIrist, 0).setUnlocalizedName("Irist Helmet").setTextureName("hypalacore:irist_helmet").setCreativeTab(tabHypalaCore);
                                chestPlateIrist = new ArmorIrist(armorIrist, 1).setUnlocalizedName("Irist Chestplate").setTextureName("hypalacore:irist_chestplate").setCreativeTab(tabHypalaCore);
                                leggingsIrist = new ArmorIrist(armorIrist, 2).setUnlocalizedName("Irist Leggings").setTextureName("hypalacore:irist_leggings").setCreativeTab(tabHypalaCore);
                                bootsIrist = new ArmorIrist(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)
                            {
                               
                            }
                        }
                        

                        Tu saurais d’où ça vient ?

                        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

                          En fait tu n’as même pas mis d’icône a ton onglet, ce qui explique le problème.

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

                            Ah et comment j’en met un ? Pourtant dans mes dossiers j’ai bien ma texture qui est mise

                            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

                              La texture que tu as la c’est la texture de fond, pas l’item utilisé comme icône

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

                                Ah ok quelle est le code a mettre dans ce cas ?

                                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

                                  C’est la fonction getTabIconItem qui gère ça.
                                  En fait je suis en train de le dire sur tu l’as peut-être déjà, mais je ne peux pas savoir comme tu n’as pas envoyé le code de la classe de ton onglet créatif.

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

                                    Bah dans ma classe CreativeTabs j’ai presque rien

                                    package com.hypala.hypalacore.common;
                                    
                                    public class HypalaCoreTabs
                                    {
                                    
                                    }
                                    

                                    Je dois mettre la fonction citée avant dans ce package ou a la suite dans la classe principale ?

                                    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

                                      Tout est expliqué là : https://www.minecraftforgefrance.fr/topic/1254/créer-un-onglet-créatif

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

                                        D’accord merci d’avoir pris le temps de me répondre

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

                                          @robin4002 pour mon creativetabs J’ai mis la fonction dans la classe Creativetabs mais lorsque je veux choisir un item comme icône il me transforme mon item en bloc

                                          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

                                            C’est-à-dire ?
                                            Tu as mis quoi dans la classe de ton onglet créatif ?

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB