Résolu >Transformation Item -> Block
-
Je viens de récupérer le code au dessus , est effectivement j’ai toujours le même problème.
Image :
Il faut cliquer iciPs: je répondrai demain je vais au lit. bonne nuit
-
Renvoie ton code, classe principale + item bloc
-
Main :
package fr.minefus.main.common; import fr.minefus.ressources.*; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; 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 cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import fr.minefus.main.proxy.CommonProxy; @Mod(modid = "ressources", version = "1.0.0", name = "Minefus | Ressources") public class Main { public static final String MODID = "ressources"; //Publication public static Block log_orme; public static Item tabressourcesres, tabconsores; @Instance("Ressources") public static Main instance; @SidedProxy(clientSide = "fr.minefus.main.proxy.ClientProxy", serverSide = "fr.minefus.main.proxy.CommonProxy") public static CommonProxy proxy; @EventHandler public void preInit(FMLPreInitializationEvent event){ //Declaration log_orme = new LogOrme(Material.rock).setCreativeTab(CreativeTabs.tabBlock).setBlockName("logorme"); tabconsores = new ressources().setUnlocalizedName("tab_conso_res").setTextureName(MODID + ":tab_conso_res"); tabressourcesres = new ressources().setUnlocalizedName("tab_ressources_res").setTextureName(MODID + ":tab_ressources_res"); } @EventHandler public void init(FMLInitializationEvent event){ proxy.registerRender(); GameRegistry.registerBlock(log_orme, ItemOrme.class, "log_orme"); GameRegistry.registerItem(tabressourcesres, "tab_ressources_res"); GameRegistry.registerItem(tabconsores, "tab_conso_res"); } @EventHandler public void postInit(FMLPostInitializationEvent event){ } public static CreativeTabs RessourceTab = new CreativeTabs("Ressources"){ @SideOnly(Side.CLIENT) @Override public Item getTabIconItem(){ return new ItemStack(tabressourcesres).getItem(); } @Override public boolean hasSearchBar() { return true; } @Override public int getSearchbarWidth() { return 89; } }; public static CreativeTabs ConsoTab = new CreativeTabs("Consommables"){ @SideOnly(Side.CLIENT) @Override public Item getTabIconItem(){ return new ItemStack(tabconsores).getItem(); } @Override public boolean hasSearchBar() { return true; } @Override public int getSearchbarWidth() { return 89; } }; }
Ma classe LogOrme ( Block ) :
package fr.minefus.ressources; import fr.minefus.main.common.Main; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.util.IIcon; public class LogOrme extends Block{ public LogOrme(Material material) { super(material); } private IIcon top; public void registerBlockIcons(IIconRegister iiconRegister){ this.blockIcon = iiconRegister.registerIcon(Main.MODID + ":log_orme"); this.top = iiconRegister.registerIcon(Main.MODID + ":log_orme_top"); } public IIcon getIcon(int side, int metadata){ if(side == 0 || side == 1){ return this.top; } return this.blockIcon; } }
Ma classe ItemOrme ( Item , qui est normalement la texture du block )
package fr.minefus.ressources; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import fr.minefus.main.common.Main; import net.minecraft.block.Block; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.item.ItemBlock; import net.minecraft.util.IIcon; public class ItemOrme extends ItemBlock{ public ItemOrme(Block block) { super(block); // TODO Auto-generated constructor stub } private IIcon itemBlockIcon; @SideOnly(Side.CLIENT) public int getSpriteNumer() { return 1; } @SideOnly(Side.CLIENT) public IIcon getIconFromDamage(int metadata){ return itemBlockIcon; } public void registerIcons(IIconRegister iiconRegister){ itemBlockIcon = iiconRegister.registerIcon(Main.MODID + ":bois_orme"); } @SideOnly(Side.CLIENT) public String getItemIconName() { return "ressources:bois_orme"; } }
-
@SideOnly(Side.CLIENT)
public String getItemIconName()
{
return “ressources:bois_orme”;
}
Pourquoi tu as mit cette fonction ?
C’est étrange car tout le reste est bon …
Sinon envoie moi un zip de ton dossier src. -
Oui , je t’envoie ça , ce qui est le plus étrange, c’est que j’ai recrée un Dossier Mod , j’ai fait tout pareil , sauf que la il me détecte pas les textures dans le dossier , alors que dans la console il me dit bien la redirection , est c’est exactement les mêmes que mes dossiers nommés. O_o
-
J’ai trouvé le problème.
Dans la classe de l’item bloc, tu as mit : public int getSpriteNumer()
au lieu de :
public int getSpriteNumber()
-
Heu c’est pareil x)
-
? ça fonctionne très bien chez moi pourtant
-
Tu as mis deux fois :
public int getSpriteNumer()et pas la suite , du coup je peux pas savoir x)
Edit : Non ok je viens de voir - -’
Edit 2 : Merci beaucoup Robin pour ton aide , désolé d’avoir fait cette erreur stupide - -'. Cela marche maintenant.