Une armure
-
- Change les balises CODE par des balises JAVA [java][/java] sans les *
- Un screenshot de ton problème serais sympa.
-
@‘42.’:
Mes 2 textures sont dans assets/modtutoriel/models/armor
-> assets/modtutoriel/textures/models/armor
-
Voici le code correspondant
if(stack.itemID == ModTutoriel.agandaurLeggings.itemID) { return "modtutoriel:textures/models/armor/tutorial_layer_2.png"; } else { return "modtutoriel:textures/models/armor/tutorial_layer_1.png"; }J’ai mis le screen en pièce jointe.
Autant pour moi, j’ai vérifié, le chemin est bien assets/modtutoriel/textures/models/armor contrairement à ce que j’avais indiqué lors de mon premier post.
Il charge la texture de l’armure de fer, par défaut j’ai l’impression, parce qu’il ne semble pas trouver la mienne
mais pourquoi ?… -
Dans ce cas c’est pas un problème de texture non trouvé, je peux avoir ta classe principale + le constructeur de la classe ?
-
classe principale : désolé c’est un peu lourd. Je te mets que ce qui concerne l’armure ?
package tutoriel.common; import net.minecraft.block.BlockStoneBrick; import net.minecraft.block.BlockTorch; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.EnumArmorMaterial; import net.minecraft.item.EnumToolMaterial; import net.minecraft.item.Item; import net.minecraft.item.ItemArmor; import net.minecraft.item.ItemBow; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntityDaylightDetector; import net.minecraft.util.DamageSource; import net.minecraftforge.common.EnumHelper; import com.jcraft.jorbis.Block; import tutoriel.block.*; import tutoriel.entity.TileEntityIthildin; import tutoriel.item.*; import tutoriel.proxy.TutoCommonProxy; import cpw.mods.fml.common.ITickHandler; 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.TickType; 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; @Mod(modid = "ModTutoriel", name = "Mod Tutoriel", version = "1.0.0") @NetworkMod(clientSideRequired = true, serverSideRequired = false) public class ModTutoriel { @SidedProxy(clientSide = "tutoriel.proxy.TutoClientProxy", serverSide = "tutoriel.proxy.TutoCommonProxy") public static TutoCommonProxy proxy; @Instance("ModTutoriel") public static ModTutoriel instance; public static net.minecraft.block.Block rocheVerte; /** * Pierre taillée blanche, doré */ public static net.minecraft.block.Block whiteStoneBrick, stairsWhiteStoneBrick, slabWhiteStoneBrick, doubleSlabWhiteStoneBrick; public static net.minecraft.block.Block sandStoneBrick, stairsSandStoneBrick, slabSandStoneBrick, doubleSlabSandStoneBrick; /** * Roche magmatique */ public static net.minecraft.block.Block blockVolcanic; public static DamageSource volcanicBlock = new DamageSource("volcanicBlock"); /** * Ithildin */ public static net.minecraft.block.Block ithildin; public static net.minecraft.block.Block ithildinGlowing; /** * Boue */ public static net.minecraft.block.Block mud; /** * –------------------------------------------------------------------------------------------------- */ public static Item fireStick; public static LongBow longBow; public static Item longArrow; public static Item fireArrow; public static CrossBow crossBowUnloaded; public static CrossBowLoaded crossBowLoaded; public static Item dwarfAxe; public static Item chain; public static Item agandaurHelmet, agandaurChestPlate, agandaurLeggings, agandaurBoots; public static EnumArmorMaterial AgandaurArmor; public static Item urukSword; @EventHandler public void PreInit(FMLPreInitializationEvent event){ //Configuration //Blocks /** * Roche Verte */ rocheVerte = new GreenStone(2000).setHardness(1.0F).setResistance(10.0F).setStepSound(net.minecraft.block.Block.soundStoneFootstep) .setUnlocalizedName("RocheVerte").setTextureName("modtutoriel:roche_verte"); net.minecraft.block.Block.lightValue[2000]=14; GameRegistry.registerBlock(rocheVerte, "RocheVerte"); /** * Pierre taillée blanche */ whiteStoneBrick=new WhiteStoneBrick(2001).setHardness(1.5F).setResistance(10.0F).setStepSound(net.minecraft.block.Block.soundStoneFootstep) .setUnlocalizedName("PierreTailleBlanche").setTextureName("modtutoriel:pierre_taille_blanche"); GameRegistry.registerBlock(whiteStoneBrick, "WhiteStoneBrick"); /** * Escalier pierre taillée blanche */ stairsWhiteStoneBrick=new StairsWhiteStoneBrick(2002, whiteStoneBrick, 0).setUnlocalizedName("StairsWhiteStonebrick"); GameRegistry.registerBlock(stairsWhiteStoneBrick, "TutorialStairs"); /** * Dalle pierre taillée blanche */ doubleSlabWhiteStoneBrick = new SlabWhiteStoneBrick(2003, true).setHardness(2.0F).setResistance(10.0F).setStepSound(net.minecraft.block.Block.soundStoneFootstep).setUnlocalizedName("DoubleSlabWhiteStoneBrick"); slabWhiteStoneBrick = new SlabWhiteStoneBrick(2004, false).setHardness(2.0F).setResistance(10.0F).setStepSound(net.minecraft.block.Block.soundStoneFootstep).setUnlocalizedName("SlabWhiteStoneBrick"); GameRegistry.registerBlock(doubleSlabWhiteStoneBrick, ItemSlabWhiteStoneBrick.class, "DoubleSlabWhiteStoneBrick"); GameRegistry.registerBlock(slabWhiteStoneBrick, ItemSlabWhiteStoneBrick.class, "SlabWhiteStoneBrick"); /** * Pierre taillée sable */ sandStoneBrick=new WhiteStoneBrick(2005).setHardness(1.5F).setResistance(10.0F).setStepSound(net.minecraft.block.Block.soundStoneFootstep) .setUnlocalizedName("SandStoneBrick").setTextureName("modtutoriel:sand_stone_brick"); GameRegistry.registerBlock(sandStoneBrick, "SandStoneBrick"); /** * Escalier pierre taillée sable */ stairsSandStoneBrick=new StairsSandStoneBrick(2006, sandStoneBrick, 0).setUnlocalizedName("StairsSandStoneBrick"); GameRegistry.registerBlock(stairsSandStoneBrick, "StairsSandStoneBrick"); /** * Dalle pierre taillée blanche */ doubleSlabSandStoneBrick = new SlabSandStoneBrick(2007, true).setHardness(2.0F).setResistance(10.0F).setStepSound(net.minecraft.block.Block.soundStoneFootstep).setUnlocalizedName("DoubleSlabSandStoneBrick"); slabSandStoneBrick = new SlabSandStoneBrick(2008, false).setHardness(2.0F).setResistance(10.0F).setStepSound(net.minecraft.block.Block.soundStoneFootstep).setUnlocalizedName("SlabSandStoneBrick"); GameRegistry.registerBlock(doubleSlabSandStoneBrick, ItemSlabSandStoneBrick.class, "DoubleSlabSandStoneBrick"); GameRegistry.registerBlock(slabSandStoneBrick, ItemSlabSandStoneBrick.class, "SlabSandStoneBrick"); /** * Bloc volcanique */ blockVolcanic=new VolcanicBlock(2009).setHardness(1.5F).setResistance(10.0F).setStepSound(net.minecraft.block.Block.soundStoneFootstep).setUnlocalizedName("VolcanicBlock").setTextureName("modtutoriel:VolcanicBlock"); GameRegistry.registerBlock(blockVolcanic, "VolcanicBlock"); /** * Ithildin */ ithildin=new Ithildin(2010).setHardness(1.5F).setResistance(10.0F).setStepSound(net.minecraft.block.Block.soundStoneFootstep) .setUnlocalizedName("Ithildin").setTextureName("modtutoriel:ithildin"); GameRegistry.registerBlock(ithildin, "Ithildin"); ithildinGlowing=new Ithildin(2011).setHardness(1.5F).setResistance(10.0F).setStepSound(net.minecraft.block.Block.soundStoneFootstep) .setUnlocalizedName("IthildinGlowing").setLightValue(0.875F).setTextureName("modtutoriel:ithildinGlowing"); GameRegistry.registerBlock(ithildinGlowing, "IthildinGlowing"); TileEntity.addMapping(TileEntityIthildin.class, "IthildinTE"); /** * Boue */ mud=new Mud(2012).setHardness(0.5F).setHardness(0.5F).setStepSound(net.minecraft.block.Block.soundGravelFootstep).setUnlocalizedName("mud").setTextureName("modtutoriel:mud"); GameRegistry.registerBlock(mud,"Mud"); //Items fireStick = new FireStick(12000).setUnlocalizedName("FireStick").setTextureName("modtutoriel:fire_stick"); longBow = (LongBow)(new LongBow(12001)).setUnlocalizedName("long_bow").setTextureName("modtutoriel:long_bow"); longArrow = (new Item(12002)).setUnlocalizedName("LongArrow").setCreativeTab(CreativeTabs.tabCombat).setTextureName("modtutoriel:long_arrow"); fireArrow = (new Item(12003)).setUnlocalizedName("FireArrow").setCreativeTab(CreativeTabs.tabCombat).setTextureName("modtutoriel:firearrow"); crossBowUnloaded = (CrossBow) (new CrossBow(12004)).setUnlocalizedName("CrossBow").setTextureName("modtutoriel:cross_bow_unloaded"); crossBowLoaded = (CrossBowLoaded) (new CrossBowLoaded(12005)).setUnlocalizedName("CrossBowLoaded").setTextureName("modtutoriel:cross_bow_loaded"); dwarfAxe = (new DwarfAxe(12006, EnumToolMaterial.IRON)).setUnlocalizedName("DwarfAxe").setTextureName("modtutoriel:dwarf_axe1"); chain = new Item(12007).setUnlocalizedName("Chain").setTextureName("modtutoriel:chain").setMaxStackSize(64).setCreativeTab(CreativeTabs.tabMaterials); AgandaurArmor = EnumHelper.addArmorMaterial("Tutorial", 20, new int[]{4, 10, 7, 4}, 8); agandaurHelmet = new ItemAgandaurArmor(12008, AgandaurArmor, 0, 0).setUnlocalizedName("AgandaurHelmet").setTextureName("modtutoriel:agandaurHelmet"); agandaurChestPlate = new ItemAgandaurArmor(12009, AgandaurArmor, 0, 1).setUnlocalizedName("AgandaurChestPlate").setTextureName("modtutoriel:agandaurChestPlate"); agandaurLeggings = new ItemAgandaurArmor(12010, AgandaurArmor, 0, 2).setUnlocalizedName("AgandaurLeggings").setTextureName("modtutoriel:agandaurLeggings"); agandaurBoots = new ItemAgandaurArmor(12011, AgandaurArmor, 0, 3).setUnlocalizedName("AgandaurBoots").setTextureName("modtutoriel:agandaurBoots"); urukSword = new UrukSword(12012, EnumToolMaterial.IRON).setUnlocalizedName("UrukHaiSword").setTextureName("modtutoriel:uruk_sword"); //Achievements } @EventHandler public void Init(FMLInitializationEvent event){ //Registry //Mobs //Render proxy.registerRender(); //NetWork //Recipe GameRegistry.addRecipe(new ItemStack(sandStoneBrick, 8), new Object[]{"X", "Y", 'X', new ItemStack(net.minecraft.block.Block.stoneBrick,8), 'Y', net.minecraft.block.Block.sand}); GameRegistry.addRecipe(new ItemStack(slabWhiteStoneBrick ,6), new Object[]{"XXX", 'X' ,whiteStoneBrick}); GameRegistry.addRecipe(new ItemStack(stairsWhiteStoneBrick, 4), new Object[]{"X ", "XX ", "XXX", 'X',whiteStoneBrick}); GameRegistry.addRecipe(new ItemStack(whiteStoneBrick, 8), new Object[]{"XXX", "XYX", "XXX", 'X', net.minecraft.block.Block.stoneBrick, 'Y', new ItemStack(Item.dyePowder, 1, 15)}); GameRegistry.addRecipe(new ItemStack(Item.saddle), new Object[]{"YYY","X X",'X', Item.silk,'Y', Item.leather}); GameRegistry.addRecipe(new ItemStack(fireStick), new Object[]{" X"," Y ","Y ",'X', Item.coal,'Y', Item.stick}); GameRegistry.addRecipe(new ItemStack(mud, 8), new Object[]{"X", "Y", 'X', new ItemStack(net.minecraft.block.Block.dirt,8), 'Y', Item.bucketWater}); GameRegistry.addRecipe(new ItemStack(chain,8), new Object[]{" X ", "X X"," X ", 'X', net.minecraft.item.Item.ingotIron}); GameRegistry.addRecipe(new ItemStack(ItemArmor.helmetChain), new Object[]{"XXX","X X", 'X', chain}); GameRegistry.addRecipe(new ItemStack(ItemArmor.plateChain), new Object[]{"X X","XXX","XXX", 'X', chain}); GameRegistry.addRecipe(new ItemStack(ItemArmor.legsChain), new Object[]{"XXX","X X", "X X", 'X', chain}); GameRegistry.addRecipe(new ItemStack(ItemArmor.bootsChain), new Object[]{"X X","X X", 'X', chain}); } @EventHandler public void PostInit(FMLPostInitializationEvent event) { //Intégration avec les autres mods } }et le constructeur
public ItemAgandaurArmor(int par1, EnumArmorMaterial par2EnumArmorMaterial, int par3, int par4) { super(par1, par2EnumArmorMaterial, par3, par4); } -
Or rapport, tu as une mauvaise importation dans ta classe principale :
import com.jcraft.jorbis.Block;
c’est pour ça que tu as du mettre public static net.minecraft.block.Block à la place de juste Block.Pour le problème de l’amure, je vois vraiment pas, tout les codes sembles bons, tu peux m’envoyer la classe de l’amure en entier ?
-
Merci pour cette correction
Je ne comprends pas vraiment non plus. À part un constructeur, et la méthode de génération des textures, je n’ai rien d’autre
J’ai fais plusieurs essais en modifiant le chemin des fichiers, et leur endroit, mais rien à faire….package tutoriel.item; import javax.swing.text.html.parser.Entity; import tutoriel.common.ModTutoriel; import net.minecraft.item.EnumArmorMaterial; import net.minecraft.item.ItemArmor; import net.minecraft.item.ItemStack; public class ItemAgandaurArmor extends ItemArmor{ public ItemAgandaurArmor(int par1, EnumArmorMaterial par2EnumArmorMaterial, int par3, int par4) { super(par1, par2EnumArmorMaterial, par3, par4); } public String getArmorTexture(ItemStack stack, Entity entity, int slot, int layer) { if(stack.itemID == ModTutoriel.agandaurLeggings.itemID) { return "modtutoriel:textures/models/armor/tutorial_layer_2.png"; } else { return "modtutoriel:models/armor/tutorial_layer_1.png"; } } } -
ici, return “modtutoriel:models/armor/tutorial_layer_1.png”; c’est return “modtutoriel:textures/models/armor/tutorial_layer_1.png”;
que tu dois mettre. -
Ça faisait partie des nombreux tests que j’ai fait, et que je n’ai pas remis.
Le premier devrait néanmoins fonctionner -
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)
-
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…. -
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; -
Effectivement, je venais de le trouver au même moment… Désormais, cela fonctionne
Je ferais plus attention désormais.
Merci pour vos tutos
-
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; } } -
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"; -
Merci, j’essaie ça tout de suite

EDIT : ça marche toujours pas

-
Il faut mettre le .png à la fin
-
Je viens de m’en rendre compte, et j’allais faire un édit

-
Y a t-il moyen de rendre l’armure incassable s’il vous plait ? Comme la bedrock par exemple.
-
Essaye de mettre la résistance sur -1 ?


