Posted July 23, 201510 yr So I make a durable hammer, and I made the code for the crafting of the lorium plate. But the crafting table now just makes the lorium plate without anything in it??!?!? UPDATE: Fixed it but I have to have at least 1 item in each row for it to work as needed Main Class ------------------- package com.northcraft.mod; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.oredict.OreDictionary; import com.northcraft.mod.blocks.MetalBlock; import com.northcraft.mod.blocks.OreBlock; import com.northcraft.mod.handler.CraftingHandler; import com.northcraft.mod.handler.FuelHandler; import com.northcraft.mod.items.Hammer; import com.northcraft.mod.items.NCItems; import com.northcraft.mod.worldgen.NorthcraftWorldGen; import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; 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; @Mod(modid = Northcraft.modid, version = Northcraft.version) public class Northcraft { public static final String modid = "Northcraft"; public static final String version = "Alpha V0.1"; //Ore Gen NorthcraftWorldGen eventWorldGen = new NorthcraftWorldGen(); //Creative Tabs //Northcraft Materials public static CreativeTabs northcraftmaterialsTab; //items public static Item itemLoriumIngot; public static Item itemLoriumNugget; public static Item itemNorthernFuel; public static Item itemHammer; public static Item itemLoriumPlate; //blocks public static Block oreLoriumOre; public static Block blockLoriumBlock; public static Block oreNorthernFuelOre; @EventHandler public void PreInit(FMLPreInitializationEvent preEvent){ //Creative Tabs //Northcraft materials northcraftmaterialsTab = new CreativeTabs("northcraftmaterials") { @SideOnly(Side.CLIENT) public Item getTabIconItem() { return Item.getItemFromBlock(oreLoriumOre); } }; //Items //Lorium Ingot itemLoriumIngot = new NCItems().setUnlocalizedName("LoriumIngot"); GameRegistry.registerItem(itemLoriumIngot, "LoriumIngot"); //Lorium Nugget itemLoriumNugget = new NCItems().setUnlocalizedName("LoriumNugget"); GameRegistry.registerItem(itemLoriumNugget, "LoriumNugget"); //Northern Fuel itemNorthernFuel = new NCItems().setUnlocalizedName("NorthernFuel"); GameRegistry.registerItem(itemNorthernFuel, "NorthernFuel"); //Hammer itemHammer = new Hammer().setUnlocalizedName("Hammer"); GameRegistry.registerItem(itemHammer, "Hammer"); //Lorium Plate itemLoriumPlate = new NCItems().setUnlocalizedName("LoriumPlate"); GameRegistry.registerItem(itemLoriumPlate, "LoriumPlate"); //Blocks //Lorium Block blockLoriumBlock = new MetalBlock(Material.iron).setBlockName("LoriumBlock"); GameRegistry.registerBlock(blockLoriumBlock, "LoriumBlock"); //Lorium Ore oreLoriumOre = new OreBlock(Material.rock).setBlockName("LoriumOre"); GameRegistry.registerBlock(oreLoriumOre, "LoriumOre"); //Northern Fuel Ore oreNorthernFuelOre = new OreBlock(Material.rock).setBlockName("NorthernFuelOre"); GameRegistry.registerBlock(oreNorthernFuelOre, "NorthernFuelOre"); //Spawn GameRegistry.registerWorldGenerator(eventWorldGen, 0); } @EventHandler public void Init(FMLInitializationEvent event){ FMLCommonHandler.instance().bus().register(new CraftingHandler()); // Fuel Handler GameRegistry.registerFuelHandler(new FuelHandler()); //Smelting //Lorium Ingot Smelting GameRegistry.addSmelting(oreLoriumOre, new ItemStack(itemLoriumIngot), 10); //Northern Fuel Smelting GameRegistry.addSmelting(oreNorthernFuelOre, new ItemStack(itemNorthernFuel), 10); //Crafting Recipes //Lorium Block Crafting GameRegistry.addRecipe(new ItemStack(blockLoriumBlock), new Object[]{"LLL","LLL","LLL", 'L', itemLoriumIngot}); //Lorium Ingot Crafting GameRegistry.addRecipe(new ItemStack(itemLoriumIngot), new Object[]{"NNN","NNN","NNN", 'N', itemLoriumNugget}); //Hammer GameRegistry.addRecipe(new ItemStack(itemHammer), new Object[]{"LLL"," S "," S ", 'L', itemLoriumIngot, 'S', Items.stick}); //Lorium Plate GameRegistry.addRecipe(new ItemStack(itemLoriumPlate), new Object[]{"LH","","", 'L', itemLoriumIngot, 'H', new ItemStack(itemHammer, 1, OreDictionary.WILDCARD_VALUE)}); //Shapless Crafting //Lorium Nugget GameRegistry.addShapelessRecipe(new ItemStack(itemLoriumNugget, 9), new Object[]{itemLoriumIngot}); } @EventHandler public void PostInit(FMLPostInitializationEvent postEvent){ } } Hammer Class ----------------------- package com.northcraft.mod.items; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.item.Item; import com.northcraft.mod.Northcraft; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; public class Hammer extends Item{ public Hammer() { super(); this.maxStackSize = 1; this.setMaxDamage(128); this.setNoRepair(); this.setCreativeTab(Northcraft.northcraftmaterialsTab); } @SideOnly(Side.CLIENT) public void registerIcons(IIconRegister iconRegister) { this.itemIcon = iconRegister.registerIcon(Northcraft.modid + ":" + this.getUnlocalizedName().substring(5)); } } Crafting Handler ------------------------- package com.northcraft.mod.handler; import com.northcraft.mod.Northcraft; import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; import cpw.mods.fml.common.eventhandler.SubscribeEvent; import cpw.mods.fml.common.gameevent.PlayerEvent.ItemCraftedEvent; public class CraftingHandler { @SubscribeEvent public void onCrafting(ItemCraftedEvent event) { final IInventory craftMatrix = null; for(int i = 0; i < event.craftMatrix.getSizeInventory(); i++) { if (event.craftMatrix.getStackInSlot(i) != null) { ItemStack item0 = event.craftMatrix.getStackInSlot(i); if(item0 != null && item0.getItem() == Northcraft.itemHammer) { ItemStack k = new ItemStack(Northcraft.itemHammer, 2, (item0.getItemDamage() + 1 )); if (k.getItemDamage() >= k.getMaxDamage()) { k.stackSize--; } event.craftMatrix.setInventorySlotContents(i, k); } } } } }
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.