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.
    • Superloup10S Hors-ligne
      Superloup10 Modérateurs
      dernière édition par

      ici, return “modtutoriel:models/armor/tutorial_layer_1.png”; c’est return “modtutoriel:textures/models/armor/tutorial_layer_1.png”;
      que tu dois mettre.

      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
      • 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
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 3 / 4
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB