godbaba Posted May 1, 2013 Posted May 1, 2013 Hello guys here is my code i write in a small amount of time.I realised that items not appearing in game when i change the code and somehow make them appear my blocks are not appearing can someone help me please ? main.java: package mod.exdream; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.Init; import net.minecraft.block.*; import net.minecraft.block.material.Material; import net.minecraft.item.Item; import net.minecraft.src.BaseMod; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.network.NetworkMod; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.LanguageRegistry; @Mod(modid="exdream",name="Ex-Dream",version="v.0.1") @NetworkMod(clientSideRequired=true,serverSideRequired=false) public class main extends BaseMod{ public static String version = "v.0.1"; public static Block blok = new blok(500).setUnlocalizedName("test"); public static Block stem = new blok(501).setUnlocalizedName("stemo"); public static Block ethox = new blok(502).setUnlocalizedName("ethox"); public static Item recip = new addItem(503).setUnlocalizedName("recip"); @Init public void load(FMLInitializationEvent event){ //blok = new blok(500).setUnlocalizedName("test"); GameRegistry.registerItem(recip,"recip"); LanguageRegistry.addName(recip, "Recipe"); GameRegistry.registerBlock(blok,"test"); LanguageRegistry.addName(blok, "test"); GameRegistry.registerBlock(stem,"stem"); LanguageRegistry.addName(stem, "stem"); GameRegistry.registerBlock(ethox,"ethox"); LanguageRegistry.addName(ethox, "Ethox"); } @Override public String getVersion() { // TODO Auto-generated method stub return version; } @Override public void load() { // TODO Auto-generated method stub } } blok.java : package mod.exdream; import net.minecraft.block.Block; import net.minecraft.block.material.Material; public class blok extends Block{ public blok(int par1) { super(par1, Material.air); // TODO Auto-generated constructor stub } } addItem.java : package mod.exdream; import net.minecraft.item.Item; public class addItem extends Item{ public addItem(int par1) { super(par1); // TODO Auto-generated constructor stub } } By appear i mean they are not in the game when you use /give command you get item doesnt exist error and they are not avaible in creative tabs.Im waiting for an answer... Regards , Godbaba... Quote http://r1306.hizliresim.com/1b/1/np1mm.png[/img]
Alexey Malko Posted May 1, 2013 Posted May 1, 2013 Hello, as I understand you, the problem is that your custom items and blocks are not available in the Creative Inventory? If so, you should add the following string to the class constructor - "setCreativeTab(CreativeTabs.<Name of the Default Tab>);" For example, "setCreativeTab(CreativeTabs.tabMisc);" You can enter "setCreativeTab(CreativeTabs.)" to view the list of all available tabs. The result should look like: Your Block: package mod.exdream; import net.minecraft.block.Block; import net.minecraft.block.material.Material; public class blok extends Block{ public blok(int par1) { super(par1, Material.air); setCreativeTab(CreativeTabs.tabMisc); // TODO Auto-generated constructor stub } } Your Item: package mod.exdream; import net.minecraft.item.Item; public class addItem extends Item{ public addItem(int par1) { super(par1); setCreativeTab(CreativeTabs.tabMisc); // TODO Auto-generated constructor stub } } I hope this helps you. Quote
Draco18s Posted May 1, 2013 Posted May 1, 2013 // TODO Auto-generated constructor stub You might want to replace that with actual code. Quote Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
godbaba Posted May 1, 2013 Author Posted May 1, 2013 It really worked I wasnt expecting that ! Thanks man... Quote http://r1306.hizliresim.com/1b/1/np1mm.png[/img]
Draco18s Posted May 1, 2013 Posted May 1, 2013 It really worked I wasnt expecting that ! Thanks man... You honestly expected blocks to show up in the creative inventory without explicitly telling them to show up? And then were surprised when explicitly telling them to show up actually does that!? Quote Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable. If you think this is the case, JUST REPORT ME. Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice. Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked. DO NOT PM ME WITH PROBLEMS. No help will be given.
godbaba Posted May 1, 2013 Author Posted May 1, 2013 Nope blocks were appearing but i thought this.setCreativeTab is an optional choice Quote http://r1306.hizliresim.com/1b/1/np1mm.png[/img]
Alexey Malko Posted May 2, 2013 Posted May 2, 2013 No problem. To express your gratitude, use the "Thank you" button in the top of each message. Thats really nice. You can also create your own Creative Tabs, adding the following code to your main mod file: public static CreativeTabs <System name of the Tab> = new CreativeTabs("<System name>") { public ItemStack getIconItemStack() { return new ItemStack(<Block / Item, which texture will be used as Tab icon>, 1, 0); } }; Then add the name of your tab to @Init method of your mod: LanguageRegistry.instance().addStringLocalization("itemGroup.<System name>", "en_US", "<The Final name of your Tab>"); You can use "setCreativeTab(<Name of your main class>.<System name of your Custom Tab>)" to add your items and blocks to this tab. And here you go. The result should look like: Your main class: package mod.exdream; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.Init; import net.minecraft.block.*; import net.minecraft.block.material.Material; import net.minecraft.item.Item; import net.minecraft.src.BaseMod; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.network.NetworkMod; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.LanguageRegistry; @Mod(modid="exdream",name="Ex-Dream",version="v.0.1") @NetworkMod(clientSideRequired=true,serverSideRequired=false) public class main extends BaseMod{ public static String version = "v.0.1"; public static Block blok = new blok(500).setUnlocalizedName("test"); public static Block stem = new blok(501).setUnlocalizedName("stemo"); public static Block ethox = new blok(502).setUnlocalizedName("ethox"); public static Item recip = new addItem(503).setUnlocalizedName("recip"); public static CreativeTabs tabExDream = new CreativeTabs("tabExDream") { public ItemStack getIconItemStack() { return new ItemStack(Item.eyeOfEnder, 1, 0); } }; @Init public void load(FMLInitializationEvent event){ //blok = new blok(500).setUnlocalizedName("test"); GameRegistry.registerItem(recip,"recip"); LanguageRegistry.addName(recip, "Recipe"); GameRegistry.registerBlock(blok,"test"); LanguageRegistry.addName(blok, "test"); GameRegistry.registerBlock(stem,"stem"); LanguageRegistry.addName(stem, "stem"); GameRegistry.registerBlock(ethox,"ethox"); LanguageRegistry.addName(ethox, "Ethox"); LanguageRegistry.instance().addStringLocalization("itemGroup.tabExDream", "en_US", "ExDream Essential"); } @Override public String getVersion() { // TODO Auto-generated method stub return version; } @Override public void load() { // TODO Auto-generated method stub } } And your custom block, for example: package mod.exdream; import net.minecraft.block.Block; import net.minecraft.block.material.Material; public class blok extends Block{ public blok(int par1) { super(par1, Material.air); setCreativeTab(main.tabExDream); // TODO Auto-generated constructor stub } } Good luck! Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.