Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

WiseNoobCrusher

Members
  • Joined

  • Last visited

Everything posted by WiseNoobCrusher

  1. guess i am not making this block orientate....cause i got none of that
  2. My custom oak log won't orientate to face the player BlockOakLog Class: package com.hardwareplus.mod; import javax.swing.Icon; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.EntityLivingBase; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntityMobSpawner; import net.minecraft.tileentity.TileEntityPiston; import net.minecraft.util.IIcon; import net.minecraft.util.MathHelper; import net.minecraft.world.World; public class BlockOakLog extends Block { public IIcon Side0; public IIcon Side1; public IIcon Side2; public IIcon Side3; public IIcon Side4; public IIcon Side5; private IIcon[] icons; protected BlockOakLog(Material material) { super(material); this.setHardness(2F); this.setResistance(10F); this.setStepSound(soundTypeWood); } public void registerBlockIcons(IIconRegister icon){ //BottomFace Side0 = icon.registerIcon("hardwareplus:oaklogside0"); //TopFace Side1 = icon.registerIcon("hardwareplus:oaklogside1"); //NorthFace Side2 = icon.registerIcon("hardwareplus:oaklogside2"); //SouthFace Side3 = icon.registerIcon("hardwareplus:oaklogside3"); //WestFace Side4 = icon.registerIcon("hardwareplus:oaklogside4"); //EastFace Side5 = icon.registerIcon("hardwareplus:oaklogside5"); } public IIcon getIcon(int side, int meta){ if(side == 0){ return Side0; }else if(side == 1){ return Side1; }else if(side == 2){ return Side2; }else if(side == 3){ return Side3; }else if(side == 4){ return Side4; }else if(side == 5){ return Side5; }return null; } public IIcon getIcon1(int side, int meta) { if (meta == 0 && side == 1) return Side0; else if (meta == 1 && side == 1) return Side1; else if (meta == 2 && side == 1) return Side0; else if (meta == 3 && side == 1) return Side1; return null; } }
  3. Well coolAlias's code worked and was able to make 2 drops....so if this can break a mod then how do i do it the other option
  4. yes i dont want it to drop the log that was used to drop the latex and changed the code which still works New code: package com.hardwareplus.mod; import net.minecraft.block.Block; import net.minecraft.entity.item.EntityItem; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; import net.minecraft.world.World; import net.minecraftforge.event.world.BlockEvent.BreakEvent; import net.minecraftforge.event.world.BlockEvent.HarvestDropsEvent; import cpw.mods.fml.common.eventhandler.SubscribeEvent; public class YourEventHandler { @SubscribeEvent public void onBlockHarvest(HarvestDropsEvent event) { Block block = event.block; World world = event.world; int x = event.x; int y = event.y; int z = event.z; if (block == Blocks.log) { if(event.blockMetadata == 0) { world.spawnEntityInWorld(new EntityItem(world, x, y, z, new ItemStack(HardwarePlus.itemRawLatex))); } } } }
  5. i mean when anyone has picked up the log once with the raw latex, they cannot just place it back down and get more raw latex! My event handler: package com.hardwareplus.mod; import net.minecraft.block.Block; import net.minecraft.entity.item.EntityItem; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; import net.minecraft.world.World; import net.minecraftforge.event.world.BlockEvent.BreakEvent; import cpw.mods.fml.common.eventhandler.SubscribeEvent; public class YourEventHandler { @SubscribeEvent public void blockBreak(BreakEvent event) { Block block = event.block; World world = event.world; int x = event.x; int y = event.y; int z = event.z; if (block == Blocks.log) { if(event.blockMetadata == 0) { world.spawnEntityInWorld(new EntityItem(world, x, y, z, new ItemStack(HardwarePlus.itemRawLatex))); } } } }
  6. ok i got it to drop but now how do i go in only making it drop once?
  7. I am trying to make it so that my raw latex drops from oak logs but i can't get it to work cause of the meta data... Here is my code: ItemRawLatex class: package com.hardwareplus.mod; import cpw.mods.fml.common.eventhandler.SubscribeEvent; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.event.world.BlockEvent; public class ItemRawLatex extends Item{ @SubscribeEvent public void onDrops(BlockEvent.HarvestDropsEvent event) { if (event.block == Blocks.log); event.drops.add(new ItemStack(HardwarePlus.itemRawLatex)); } } and yes i have MinecraftForge.EVENT_BUS.register(new YourEventHandler()); in my main class in my event handler i have it like this: MinecraftForge.EVENT_BUS.register(new HardwarePlus());
  8. Actually i just had a hunch that it was the problem and that i needed it And i just made a hammer
  9. Dude...u are suppose to add OreDictionary.WILDCARDVALUE cause just tried it and it now works properly....soooo....but still thx for everything
  10. New problem....now it wont use the file cause it is damaged....
  11. This is my new code: Main class: package com.hardwareplus.mod; 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.event.FMLInitializationEvent; import cpw.mods.fml.common.event.FMLPostInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.registry.GameRegistry; @Mod(modid = "hardwareplus", name = "Hardware Plus", version = "0.1") public class HardwarePlus { public static Item itemIronPlate; public static Item itemIronRod; public static Item itemIronFile; @EventHandler public void preInit(FMLPreInitializationEvent event) { //Item/Block init and registering //Config Handler itemIronPlate = new ItemIronPlate().setUnlocalizedName("ItemIronPlate").setTextureName("hardwareplus:itemironplate").setCreativeTab(tabHardwarePlus); GameRegistry.registerItem(itemIronPlate, itemIronPlate.getUnlocalizedName().substring(5)); itemIronRod = new ItemIronRod().setUnlocalizedName("ItemIronRod").setTextureName("hardwareplus:itemironrod").setCreativeTab(tabHardwarePlus); GameRegistry.registerItem(itemIronRod, itemIronRod.getUnlocalizedName().substring(5)); itemIronFile = new ItemIronFile().setUnlocalizedName("ItemIronFile").setTextureName("hardwareplus:itemironfile").setCreativeTab(tabHardwarePlus); GameRegistry.registerItem(itemIronFile, itemIronFile.getUnlocalizedName().substring(5)); } @EventHandler public void init(FMLInitializationEvent event) { //Proxy, TileEntity, entity, GUI and packet GameRegistry.addShapelessRecipe(new ItemStack(itemIronRod, 4), new ItemStack(itemIronPlate, 1), new ItemStack(itemIronFile, 1)); } @EventHandler public void PostInit(FMLPostInitializationEvent event) { } public static CreativeTabs tabHardwarePlus = new CreativeTabs("tabHardwarePlus"){ @Override public Item getTabIconItem(){ return new ItemStack(itemIronPlate).getItem(); } }; } IronFile class: package com.hardwareplus.mod; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; public class ItemIronFile extends Item { public ItemIronFile() { this.setMaxDamage(20); this.setMaxStackSize(1); this.setNoRepair(); } public boolean doesContainerItemLeaveCraftingGrid(ItemStack stack) { return false; } public boolean hasContainerItem() { return true; } public ItemStack getContainerItem(ItemStack itemStack) { itemStack.attemptDamageItem(1, itemRand); return itemStack; } } Your right, you should never give up man Cheers to you!! Thx alot!!!
  12. OMFG!!! I DID IT!!! I followed crayfish's tutorial and posted ur code in the item class and used the recipe u posted and it fianlly works!!! it takes the durability!! DUDE i cannot thank you enough man U ARE AWESOME!!! YESSS!!!
  13. IronFile Class: package com.hardwareplus.items; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import com.hardwareplus.creativetabs.MCreativeTabs; import com.hardwareplus.lib.RefStrings; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; public class IronFile extends Item{ public static void mainRegistry(){ initializeItem(); registerItem(); } public static Item iFile; public boolean doesContainerItemLeaveCraftingGrid(ItemStack stack) { return false; } public boolean hasContainerItem() { return true; } public ItemStack getContainerItem(ItemStack itemStack) { itemStack.attemptDamageItem(1, itemRand); return itemStack; } public static void initializeItem(){ iFile = new Item().setUnlocalizedName("iFile").setMaxDamage(64).setMaxStackSize(1).setNoRepair().setCreativeTab(MCreativeTabs.tabItems).setTextureName(RefStrings.MODID + ":IFile"); } public static void registerItem(){ GameRegistry.registerItem(iFile, iFile.getUnlocalizedName()); } } CraftingManager class: package com.hardwareplus.Main; import net.minecraft.item.ItemStack; import net.minecraftforge.oredict.OreDictionary; import com.hardwareplus.items.IronFile; import com.hardwareplus.items.IronPlate; import com.hardwareplus.items.IronRod; import cpw.mods.fml.common.registry.GameRegistry; public class CraftingManager { public static void mainRegistry(){ addCraftingRec(); addSmeltingRec(); } public static void addCraftingRec(){ //Iron File GameRegistry.addRecipe(new ItemStack(IronFile.iFile, 1), new Object[]{" P"," P ","R ", 'P', IronPlate.iPlate, 'R', IronRod.iRod}); //Iron Rod GameRegistry.addShapelessRecipe(new ItemStack(IronRod.iRod, 4), new ItemStack(IronPlate.iPlate), new ItemStack(IronFile.iFile, 1)); } public static void addSmeltingRec(){ } } I don't get whats wrong
  14. Well...i give up this wont work.....now i have to wait for a mod that does what i want it to do.....GOD *****...how did u get this working on my code cause this isn't working for me....the file just disappears after crafting the 4 rods..idk whats wrong....
  15. do i put the code after public static void initializeItem(){ iFile = new Item().setUnlocalizedName("iFile").setNoRepair().setMaxStackSize(1).setMaxDamage(64).setContainerItem(iFile).setCreativeTab(MCreativeTabs.tabItems).setTextureName(RefStrings.MODID + ":IFile"); or before it?
  16. U telling me that GameRegistry.addShapelessRecipe(new ItemStack(IronRod.iRod, 4), new ItemStack(IronPlate.iPlate), new ItemStack(IronFile.iFile, 1, OreDictionary.WILDCARD_VALUE)); is wrong??? Because i was told to use OreDictionary.WILDCARD_VALUE??? If this is wrong then how am i suppose to do it?
  17. All i need the file to do is to lose durabilty when making the iron rods

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.