MFF

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

    Une armure

    Planifier Épinglé Verrouillé Déplacé Les items
    1.6.x
    78 Messages 18 Publieurs 32.5k 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.
    • 4 Hors-ligne
      42.
      dernière édition par

      Ça faisait partie des nombreux tests que j’ai fait, et que je n’ai pas remis.
      Le premier devrait néanmoins fonctionner

      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

        Essaye avec public String getArmorTexture(ItemStack stack, Entity entity, int slot, String type) et met un @Override au dessus de la fonction pour voir si ça change quelque chose. (garde le même return)

        1 réponse Dernière réponse Répondre Citer 0
        • 4 Hors-ligne
          42.
          dernière édition par

          Il bloque sur la signature si je mets @Override et que je mets cette signature. Il ne détecte pas d’implémentation dans la classe Item ou ItemArmor, alors que j’ai vérifié, j’ai bien cette fonction dans Item.
          Rajouter @Override au dessus de la signature de la fonction que j’ai actuellement donne exactement le même problème 😕
          J’ai l’impression que je vais réinstaller forge demain….

          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

            Non, inutile de réinstaller Forge, je viens de trouver le problème. Le @Override ne marche pas, car

            getArmorTexture(net.minecraft.item.ItemStack stack, javax.swing.text.html.parser.Entity entity, int slot, int layer) != getArmorTexture(net.minecraft.item.ItemStack stack, net.minecraft.entity.Entity entity, int slot, int layer)
            

            Faite attention à vos importation !

            import javax.swing.text.html.parser.Entity; -> import net.minecraft.entity.Entity;
            
            1 réponse Dernière réponse Répondre Citer 1
            • 4 Hors-ligne
              42.
              dernière édition par

              Effectivement, je venais de le trouver au même moment… Désormais, cela fonctionne
              Je ferais plus attention désormais.
              Merci pour vos tutos 🙂

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

                Bonjour,
                J’ai suivi ton tuto, mais quand je mets mon armure, le layer est celui de base (un truc tout moche noir et rose ;))
                En regardant dans le code d’erreur j’ai remarqué qu’il ne trouve pas la texture :

                
                2013-11-23 15:47:48 [Avertissement] [Minecraft-Client] Failed to load texture: newores:rubis_layer_1
                java.io.FileNotFoundException: newores:rubis_layer_1
                at net.minecraft.client.resources.FallbackResourceManager.getResource(FallbackResourceManager.java:64)
                at net.minecraft.client.resources.SimpleReloadableResourceManager.getResource(SimpleReloadableResourceManager.java:63)
                at net.minecraft.client.renderer.texture.SimpleTexture.loadTexture(SimpleTexture.java:31)
                at net.minecraft.client.renderer.texture.TextureManager.loadTexture(TextureManager.java:84)
                at net.minecraft.client.renderer.texture.TextureManager.bindTexture(TextureManager.java:41)
                at net.minecraft.client.renderer.entity.Render.bindTexture(Render.java:53)
                at net.minecraft.client.renderer.entity.RenderPlayer.setArmorModel(RenderPlayer.java:72)
                at net.minecraft.client.renderer.entity.RenderPlayer.shouldRenderPass(RenderPlayer.java:514)
                at net.minecraft.client.renderer.entity.RendererLivingEntity.doRenderLiving(RendererLivingEntity.java:164)
                at net.minecraft.client.renderer.entity.RenderPlayer.func_130009_a(RenderPlayer.java:166)
                at net.minecraft.client.renderer.entity.RenderPlayer.doRender(RenderPlayer.java:556)
                at net.minecraft.client.renderer.entity.RenderManager.renderEntityWithPosYaw(RenderManager.java:312)
                at net.minecraft.client.gui.inventory.GuiInventory.func_110423_a(GuiInventory.java:121)
                at net.minecraft.client.gui.inventory.GuiContainerCreative.drawGuiContainerBackgroundLayer(GuiContainerCreative.java:849)
                at net.minecraft.client.gui.inventory.GuiContainer.drawScreen(GuiContainer.java:111)
                at net.minecraft.client.renderer.InventoryEffectRenderer.drawScreen(InventoryEffectRenderer.java:43)
                at net.minecraft.client.gui.inventory.GuiContainerCreative.drawScreen(GuiContainerCreative.java:683)
                at net.minecraft.client.renderer.EntityRenderer.updateCameraAndRender(EntityRenderer.java:1036)
                at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:946)
                at net.minecraft.client.Minecraft.run(Minecraft.java:838)
                at net.minecraft.client.main.Main.main(Main.java:93)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                at java.lang.reflect.Method.invoke(Unknown Source)
                at net.minecraft.launchwrapper.Launch.launch(Launch.java:131)
                at net.minecraft.launchwrapper.Launch.main(Launch.java:27)
                
                

                Mais j’ai beau vérifier et revérifier, le chemin d’accès est le bon.
                Pouvez-vous m’aider ?

                Classe Principale :

                
                package fr.MrBlockTNT.NewOres;
                
                import net.minecraft.block.Block;
                import net.minecraft.creativetab.CreativeTabs;
                import net.minecraft.item.EnumArmorMaterial;
                import net.minecraft.item.Item;
                import net.minecraftforge.common.EnumHelper;
                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.network.NetworkMod;
                import cpw.mods.fml.common.registry.GameRegistry;
                import fr.MrBlockTNT.proxy.CommonProxy;
                
                @Mod(modid = "NewOres", name = "New Ores", version = "1.0.0")
                @NetworkMod(clientSideRequired = true, serverSideRequired = false)
                
                public class NewOres
                {
                @SidedProxy(clientSide = "fr.MrBlockTNT.proxy.ClientProxy", serverSide = "fr.MrBlockTNT.proxy.CommonProxy")
                public static CommonProxy proxy;
                
                @Instance("NewOres")
                public static NewOres instance;
                
                public static Block rubisOre, saphirOre, onyxOre, enchantiteOre, rubisBlock, saphirBlock, onyxBlock, enchantiteBlock;
                
                public static Item enchantiteDust, rubis, saphir, onyx;
                public static Item rubyBar, saphirBar, onyxBar, enchantiteBar;
                public static Item rubyHelmet, rubyPlate, rubyLegs, rubyBoots;
                
                static EnumArmorMaterial rubyMaterial = EnumHelper.addArmorMaterial("Ruby", 20, new int[]{2, 4, 3, 1}, 10);
                
                public static CreativeTabs NewOresTab = new NewOresTab("NewOres");
                
                @EventHandler
                public void PreInit(FMLPreInitializationEvent event)
                {
                // Blocks
                rubisOre = new BlockNewOre(2000).setHardness(3.0F).setResistance(5.0F).setStepSound(Block.soundStoneFootstep).setUnlocalizedName("Rubis Ore").setTextureName("newores:rubis_ore");
                saphirOre = new BlockNewOre(2001).setHardness(3.0F).setResistance(5.0F).setStepSound(Block.soundStoneFootstep).setUnlocalizedName("Saphirre Ore").setTextureName("newores:saphir_ore");
                onyxOre = new BlockNewOre(2002).setHardness(3.0F).setResistance(5.0F).setStepSound(Block.soundStoneFootstep).setUnlocalizedName("Onyx Ore").setTextureName("newores:onyx_ore");
                enchantiteOre = new BlockNewOre(2003).setHardness(3.0F).setResistance(5.0F).setStepSound(Block.soundStoneFootstep).setUnlocalizedName("Enchantite Ore").setTextureName("newores:enchantite_ore_end");
                //onyxNether = new BlockNewOre(2004).setHardness(3.0F).setResistance(5.0F).setStepSound(Block.soundStoneFootstep).setUnlocalizedName("Onyx Ore Nether").setTextureName("newores:onyx_ore_nether");
                //enchantiteEnd = new BlockNewOre(2005).setHardness(3.0F).setResistance(5.0F).setStepSound(Block.soundStoneFootstep).setUnlocalizedName("Enchantite Ore End").setTextureName("newores:enchantite_ore");
                
                rubisBlock = new BlockNewOre(2006).setHardness(3.0F).setResistance(10.0F).setStepSound(Block.soundMetalFootstep).setUnlocalizedName("Rubis Block").setTextureName("newores:rubis_block");
                saphirBlock = new BlockNewOre(2007).setHardness(3.0F).setResistance(10.0F).setStepSound(Block.soundMetalFootstep).setUnlocalizedName("Saphirre Block").setTextureName("newores:saphir_block");
                onyxBlock = new BlockNewOre(2008).setHardness(3.0F).setResistance(10.0F).setStepSound(Block.soundMetalFootstep).setUnlocalizedName("Onyx Block").setTextureName("newores:onyx_block");
                enchantiteBlock = new BlockNewOre(2009).setHardness(3.0F).setResistance(10.0F).setStepSound(Block.soundMetalFootstep).setUnlocalizedName("Enchantite Block").setTextureName("newores:enchantite_block");
                
                GameRegistry.registerBlock(rubisOre, "Minerai de Rubis");
                GameRegistry.registerBlock(saphirOre, "Minerai de Saphir");
                GameRegistry.registerBlock(onyxOre, "Minerai d'Onyx");
                GameRegistry.registerBlock(enchantiteOre, "Minerai d'Enchantite");
                //GameRegistry.registerBlock(onyxNether, "Minerai d'Onyx Nether");
                //GameRegistry.registerBlock(enchantiteEnd, "Minerai d'Enchantite End");
                
                GameRegistry.registerBlock(rubisBlock, "Bloc de Rubis");
                GameRegistry.registerBlock(saphirBlock, "Bloc de Saphir");
                GameRegistry.registerBlock(onyxBlock, "Bloc d'Onyx");
                GameRegistry.registerBlock(enchantiteBlock, "Bloc d'Enchantite");
                
                //Items
                enchantiteDust = new ItemNewOres(12000).setUnlocalizedName("Enchantite Dust").setTextureName("newores:enchantite_dust");
                rubis = new ItemNewOres(12001).setUnlocalizedName("Rubis Gem").setTextureName("newores:rubis");
                saphir = new ItemNewOres(12002).setUnlocalizedName("Saphir Gem").setTextureName("newores:saphir");
                onyx = new ItemNewOres(12003).setUnlocalizedName("Onyx Gem").setTextureName("newores:onyx");
                enchantiteBar = new ItemNewOres(12004).setUnlocalizedName("Enchantite Bar").setTextureName("newores:enchantite_dust");
                rubyBar = new ItemNewOres(12005).setUnlocalizedName("Rubis Bar").setTextureName("newores:rubis");
                saphirBar = new ItemNewOres(12006).setUnlocalizedName("Saphir Bar").setTextureName("newores:saphir");
                onyxBar = new ItemNewOres(12007).setUnlocalizedName("Onyx Bar").setTextureName("newores:onyx");
                
                GameRegistry.registerItem(enchantiteDust, "EnchantiteDust", "NewOres");
                GameRegistry.registerItem(rubis, "Rubis", "NewOres");
                GameRegistry.registerItem(saphir, "Saphir", "NewOres");
                GameRegistry.registerItem(onyx, "Onyx", "NewOres");
                GameRegistry.registerItem(enchantiteBar, "Enchantite Bar", "NewOres");
                GameRegistry.registerItem(rubyBar, "Rubis Bar", "NewOres");
                GameRegistry.registerItem(saphirBar, "Saphir Bar", "NewOres");
                GameRegistry.registerItem(onyxBar, "Onyx Bar", "NewOres");
                
                // Armures & Outils
                rubyHelmet = new RubyArmor(12100, rubyMaterial, 0,0).setUnlocalizedName("RubyHelmet").setTextureName("newores:rubis_helmet");
                rubyPlate = new RubyArmor(12101, rubyMaterial, 0, 1).setUnlocalizedName("RubyPlate").setTextureName("newores:rubis_chestplate");
                rubyLegs = new RubyArmor(12102, rubyMaterial, 0, 2).setUnlocalizedName("RubyLegs").setTextureName("newores:rubis_leggings");
                rubyBoots = new RubyArmor(12103, rubyMaterial, 0, 3).setUnlocalizedName("RubyBoots").setTextureName("newores:rubis_boots");
                
                GameRegistry.registerItem(rubyHelmet, "RubyHelmet", "NewOres");
                GameRegistry.registerItem(rubyPlate, "RubyPlate", "NewOres");
                GameRegistry.registerItem(rubyLegs, "RubyLegs", "NewOres");
                GameRegistry.registerItem(rubyBoots, "RubyBoots", "NewOres");
                //Generation
                GameRegistry.registerWorldGenerator(new NewOresGenerator());
                }
                
                @EventHandler
                public void Init(FMLInitializationEvent event)
                {
                proxy.registerRender();
                }
                
                @EventHandler
                public void PostInit(FMLPostInitializationEvent event)
                {
                
                }
                }
                
                

                RubyArmor :

                
                package fr.MrBlockTNT.NewOres;
                
                import net.minecraft.entity.Entity;
                import net.minecraft.item.EnumArmorMaterial;
                import net.minecraft.item.ItemArmor;
                import net.minecraft.item.ItemStack;
                
                public class RubyArmor extends ItemArmor
                {
                public RubyArmor(int id, EnumArmorMaterial armorMaterial, int type, int layer)
                {
                super(id, armorMaterial, type, layer);
                }
                
                public String getArmorTexture(ItemStack stack, Entity entity, int slot, int layer)
                {
                if(stack.itemID == NewOres.rubyLegs.itemID)
                {
                return "newores:rubis_layer_2";
                }
                else
                {
                return "newores:rubis_layer_1";
                }
                }
                
                public boolean getIsRepairable(ItemStack stack, ItemStack repairItem)
                {
                if(stack.getItem().equals(this) && repairItem.getItem().itemID == NewOres.rubyBar.itemID)
                return true;
                return false;
                }
                }
                
                

                Mes mods:

                • New Ores
                • More Dragons
                1 réponse Dernière réponse Répondre Citer 0
                • PatatoufetP Hors-ligne
                  Patatoufet
                  dernière édition par

                  C’est le chemin qui pose problème.
                  Imaginons que ta texture se trouve dans “assets/newores/textures/armure/rubis_layer_1.png”.
                  Alors ton chemin dans ton code est :

                  return "newores:textures/armure/rubis_layer_1.png";
                  
                  1 réponse Dernière réponse Répondre Citer 0
                  • bin4r1sB Hors-ligne
                    bin4r1s
                    dernière édition par

                    Merci, j’essaie ça tout de suite 🙂

                    EDIT : ça marche toujours pas 😞

                    Mes mods:

                    • New Ores
                    • More Dragons
                    1 réponse Dernière réponse Répondre Citer 0
                    • kevin_68K Hors-ligne
                      kevin_68 Moddeurs confirmés
                      dernière édition par

                      Il faut mettre le .png à la fin


                      Mettez à jours vers la dernière version stable (1.8.9 voir même…

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

                        Je viens de m’en rendre compte, et j’allais faire un édit 🙂

                        Mes mods:

                        • New Ores
                        • More Dragons
                        1 réponse Dernière réponse Répondre Citer 1
                        • FlowF Hors-ligne
                          Flow
                          dernière édition par

                          Y a t-il moyen de rendre l’armure incassable s’il vous plait ? Comme la bedrock par exemple.

                          Oui ce gif est drôle.

                          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

                            Essaye de mettre la résistance sur -1 ?

                            1 réponse Dernière réponse Répondre Citer 0
                            • Superloup10S Hors-ligne
                              Superloup10 Modérateurs
                              dernière édition par

                              Je pense que cela doit être possible, les armures quantums d’IC² ont cette fonctionnalité.

                              Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

                              Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

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

                                Bonjour, merci pour ce tutoriel.
                                Cependant, je pense qu’il manque une chose: Comment définit-on le matériel avec lequel l’armure se craft ? Il suffit d’utiliser GameRegistry.addRecipe ?
                                Merci d’avance

                                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

                                  Oui, il faut faire des recettes comme les autres.

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

                                    Merci beaucoup (Je pense qu’il faudrait le mentionner dans le tutoriel, après, c’est toi qui vois ^^")

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

                                      J’ai une erreur dans la classe de l’armure sur

                                      public String “getArmorTexture(ItemStack stack, Entity entity, int slot, int layer)”

                                      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

                                        Quoi comme erreur ?

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

                                          quand je clique sur l’erreur
                                          sa me met
                                          add return statement
                                          change return type to ‘void’

                                          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

                                            Envoie tout le code de ta classe actuel.

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB