package me.km.items; import me.km.KajetansMod; import me.km.blocks.EnumMetals; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.init.Items; import net.minecraft.init.SoundEvents; import net.minecraft.inventory.EntityEquipmentSlot; import net.minecraft.item.EnumDyeColor; import net.minecraft.item.Item; import net.minecraft.item.ItemArmor.ArmorMaterial; import net.minecraft.item.ItemStack; import net.minecraftforge.common.util.EnumHelper; import net.minecraftforge.registries.IForgeRegistry; public class ModItems { /* harvestLevel, maxUses, efficiency, damageVsEntity, enchantability WOOD(0, 59, 2.0F, 0.0F, 15), STONE(1, 131, 4.0F, 1.0F, 5), IRON(2, 250, 6.0F, 2.0F, 14), DIAMOND(3, 1561, 8.0F, 3.0F, 10), GOLD(0, 32, 12.0F, 0.0F, 22); for axes ATTACK_DAMAGES {6.0F, 8.0F, 8.0F, 8.0F, 6.0F} ATTACK_SPEEDS { -3.2F, -3.2F, -3.1F, -3.0F, -3.0F} */ public static final Item.ToolMaterial TOOL_COPPER = EnumHelper.addToolMaterial("COPPER", 1, 161, 6, 1, 18); public static final Item.ToolMaterial TOOL_BRONZE = EnumHelper.addToolMaterial("BRONZE", 2, 208, 7, 1.5f, 15); public static final Item.ToolMaterial TOOL_REDSTONE = EnumHelper.addToolMaterial("REDSTONE", 0, 59, 1, 0, 22); public static final Item.ToolMaterial TOOL_SILVER = EnumHelper.addToolMaterial("SILVER", 0, 250, 5, 2, 20); public static final Item.ToolMaterial TOOL_EMERALD = EnumHelper.addToolMaterial("EMERALD", 0, 1248, 7, 2.5f, 10); public static final Item.ToolMaterial TOOL_LAPIS = EnumHelper.addToolMaterial("LAPIS", 0, 131, 4, 1, 15); /* String nameIn, int maxDamageFactorIn, int[] damageReductionAmountArrayIn, int enchantabilityIn, SoundEvent soundEventIn, float toughnessIn LEATHER("leather", 5, new int[]{1, 2, 3, 1}, 15, SoundEvents.ITEM_ARMOR_EQUIP_LEATHER, 0.0F), CHAIN("chainmail", 15, new int[]{1, 4, 5, 2}, 12, SoundEvents.ITEM_ARMOR_EQUIP_CHAIN, 0.0F), IRON("iron", 15, new int[]{2, 5, 6, 2}, 9, SoundEvents.ITEM_ARMOR_EQUIP_IRON, 0.0F), GOLD("gold", 7, new int[]{1, 3, 5, 2}, 25, SoundEvents.ITEM_ARMOR_EQUIP_GOLD, 0.0F), DIAMOND("diamond", 33, new int[]{3, 6, 8, 3}, 10, SoundEvents.ITEM_ARMOR_EQUIP_DIAMOND, 2.0F); */ public static final ArmorMaterial ARMOR_COPPER = EnumHelper.addArmorMaterial("COPPER", KajetansMod.MODID + ":copper", 9, new int[]{1, 4, 5, 1}, 20, SoundEvents.ITEM_ARMOR_EQUIP_CHAIN, 0); public static final ArmorMaterial ARMOR_BRONZE = EnumHelper.addArmorMaterial("BRONZE", KajetansMod.MODID + ":bronze", 13, new int[]{2, 5, 6, 2}, 20, SoundEvents.ITEM_ARMOR_EQUIP_CHAIN, 0); public static final ArmorMaterial ARMOR_STRAW = EnumHelper.addArmorMaterial("STRAW", KajetansMod.MODID + ":straw", 3, new int[]{1, 1, 1, 1}, 3, SoundEvents.ITEM_ARMOR_EQUIP_LEATHER, 0); public static final ArmorMaterial ARMOR_CYLINDER = EnumHelper.addArmorMaterial("CYLINDER", KajetansMod.MODID + ":CYLINDER", 3, new int[]{1, 1, 1, 1}, 3, SoundEvents.ITEM_ARMOR_EQUIP_LEATHER, 0); public static final ArmorMaterial ARMOR_SUIT = EnumHelper.addArmorMaterial("SUIT", KajetansMod.MODID + ":suit", 3, new int[]{1, 1, 1, 1}, 3, SoundEvents.ITEM_ARMOR_EQUIP_LEATHER, 0); // nuggets and ingots public static ItemBase copperIngot; public static ItemBase copperNugget; public static ItemBase tinIngot; public static ItemBase tinNugget; public static ItemBase bronzeIngot; public static ItemBase bronzeNugget; public static ItemBase silverIngot; public static ItemBase silverNugget; // tools and swords public static ItemSword copperSword; public static ItemSpade copperShovel; public static ItemPickaxe copperPickaxe; public static ItemAxe copperAxe; public static ItemHoe copperHoe; public static ItemSword bronzeSword; public static ItemSpade bronzeShovel; public static ItemPickaxe bronzePickaxe; public static ItemAxe bronzeAxe; public static ItemHoe bronzeHoe; // armor public static ItemArmor copperHelmet; public static ItemArmor copperChestplate; public static ItemArmor copperLeggings; public static ItemArmor copperBoots; public static ItemArmor bronzeHelmet; public static ItemArmor bronzeChestplate; public static ItemArmor bronzeLeggings; public static ItemArmor bronzeBoots; public static ItemArmor cylinder; public static ItemArmor suitChestplate; public static ItemArmor suitLeggings; public static ItemArmor suitBoots; public static ItemArmor strawHat; // wands public static ItemWand woodenWand; public static ItemWand stoneWand; public static ItemWand copperWand; public static ItemWand bronzeWand; public static ItemWand ironWand; public static ItemWand goldWand; public static ItemWand emeraldWand; public static ItemWand redstoneWand; public static ItemWand lapisWand; public static ItemWand diamondWand; public static ItemWand silverWand; // sticks public static ItemStick woodenStick; public static ItemStick stoneStick; public static ItemStick copperStick; public static ItemStick bronzeStick; public static ItemStick ironStick; public static ItemStick goldStick; public static ItemStick diamondStick; // dagger public static ItemDagger woodenDagger; public static ItemDagger stoneDagger; public static ItemDagger copperDagger; public static ItemDagger bronzeDagger; public static ItemDagger ironDagger; public static ItemDagger goldDagger; public static ItemDagger diamondDagger; // hammer public static ItemHammer woodenHammer; public static ItemHammer stoneHammer; public static ItemHammer copperHammer; public static ItemHammer bronzeHammer; public static ItemHammer ironHammer; public static ItemHammer goldHammer; public static ItemHammer diamondHammer; // coins public static ItemBase copperCoin; public static ItemBase silverCoin; public static ItemBase goldCoin; // misc public static ItemScroll scroll; public static ItemBed realHayBed; public static ItemBase hayBundle; public static ItemBase batWing; public static ItemBase wolfFur; public static void init(IForgeRegistry r) { // nuggets and ingots copperIngot = register(r, new ItemBase("copper_ingot", "ingotCopper").setCreativeTab(CreativeTabs.MATERIALS)); copperNugget = register(r, new ItemBase("copper_nugget", "copperNugget").setCreativeTab(CreativeTabs.MATERIALS)); tinIngot = register(r, new ItemBase("tin_ingot", "ingotTin").setCreativeTab(CreativeTabs.MATERIALS)); tinNugget = register(r, new ItemBase("tin_nugget", "tinNugget").setCreativeTab(CreativeTabs.MATERIALS)); bronzeIngot = register(r, new ItemBase("bronze_ingot", "ingotBronze").setCreativeTab(CreativeTabs.MATERIALS)); bronzeNugget = register(r, new ItemBase("bronze_nugget", "bronzeNugget").setCreativeTab(CreativeTabs.MATERIALS)); silverIngot = register(r, new ItemBase("silver_ingot", "ingotSilver").setCreativeTab(CreativeTabs.MATERIALS)); silverNugget = register(r, new ItemBase("silver_nugget", "silverNugget").setCreativeTab(CreativeTabs.MATERIALS)); // repair items TOOL_COPPER.setRepairItem(new ItemStack(copperIngot)); ARMOR_COPPER.setRepairItem(new ItemStack(copperIngot)); TOOL_BRONZE.setRepairItem(new ItemStack(bronzeIngot)); ARMOR_BRONZE.setRepairItem(new ItemStack(bronzeIngot)); TOOL_EMERALD.setRepairItem(new ItemStack(Items.EMERALD)); TOOL_REDSTONE.setRepairItem(new ItemStack(Items.REDSTONE)); TOOL_LAPIS.setRepairItem(new ItemStack(Items.DYE, 1, EnumDyeColor.BLUE.getDyeDamage())); TOOL_SILVER.setRepairItem(new ItemStack(silverIngot)); // tools and swords copperSword = register(r, new ItemSword(TOOL_COPPER, "copper_sword", "swordCopper")); copperShovel = register(r, new ItemSpade(TOOL_COPPER, "copper_shovel", "shovelCopper")); copperPickaxe = register(r, new ItemPickaxe(TOOL_COPPER, "copper_pickaxe", "pickaxeCopper")); copperAxe = register(r, new ItemAxe(TOOL_COPPER, 7, -3.1f, "copper_axe", "hatchetCopper")); copperHoe = register(r, new ItemHoe(TOOL_COPPER, "copper_hoe", "hoeCopper")); bronzeSword = register(r, new ItemSword(TOOL_BRONZE, "bronze_sword", "swordBronze")); bronzeShovel = register(r, new ItemSpade(TOOL_BRONZE, "bronze_shovel", "shovelBronze")); bronzePickaxe = register(r, new ItemPickaxe(TOOL_BRONZE, "bronze_pickaxe", "pickaxeBronze")); bronzeAxe = register(r, new ItemAxe(TOOL_BRONZE, 8, -3.0f, "bronze_axe", "hatchetBronze")); bronzeHoe = register(r, new ItemHoe(TOOL_BRONZE, "bronze_hoe", "hoeBronze")); // armor copperHelmet = register(r, new ItemArmor(ARMOR_COPPER, EntityEquipmentSlot.HEAD, "copper_helmet", "helmetCopper")); copperChestplate = register(r, new ItemArmor(ARMOR_COPPER, EntityEquipmentSlot.CHEST, "copper_chestplate", "chestplateCopper")); copperLeggings = register(r, new ItemArmor(ARMOR_COPPER, EntityEquipmentSlot.LEGS, "copper_leggings", "leggingsCopper")); copperBoots = register(r, new ItemArmor(ARMOR_COPPER, EntityEquipmentSlot.FEET, "copper_boots", "bootsCopper")); bronzeHelmet = register(r, new ItemArmor(ARMOR_BRONZE, EntityEquipmentSlot.HEAD, "bronze_helmet", "helmetBronze")); bronzeChestplate = register(r, new ItemArmor(ARMOR_BRONZE, EntityEquipmentSlot.CHEST, "bronze_chestplate", "chestplateBronze")); bronzeLeggings = register(r, new ItemArmor(ARMOR_BRONZE, EntityEquipmentSlot.LEGS, "bronze_leggings", "leggingsBronze")); bronzeBoots = register(r, new ItemArmor(ARMOR_BRONZE, EntityEquipmentSlot.FEET, "bronze_boots", "bootsBronze")); cylinder = register(r, new ItemCylinder(ARMOR_CYLINDER, "cylinder", "cylinder")); suitChestplate = register(r, new ItemArmor(ARMOR_SUIT, EntityEquipmentSlot.CHEST, "suit_chestplate", "chestplateSuit")); suitLeggings = register(r, new ItemArmor(ARMOR_SUIT, EntityEquipmentSlot.LEGS, "suit_leggings", "leggingsSuit")); suitBoots = register(r, new ItemArmor(ARMOR_SUIT, EntityEquipmentSlot.FEET, "suit_boots", "bootsSuit")); strawHat = register(r, new ItemHat(ARMOR_STRAW, "straw_hat", "hatStraw")); // wands woodenWand = register(r, new ItemWand("wood_wand", "wandWood", Item.ToolMaterial.WOOD, 1)); stoneWand = register(r, new ItemWand("stone_wand", "wandStone", Item.ToolMaterial.STONE, 1)); copperWand = register(r, new ItemWand("copper_wand", "wandCopper", TOOL_COPPER, 2)); bronzeWand = register(r, new ItemWand("bronze_wand", "wandBronze", TOOL_BRONZE, 2)); ironWand = register(r, new ItemWand("iron_wand", "wandIron", Item.ToolMaterial.IRON, 2)); goldWand = register(r, new ItemWand("gold_wand", "wandGold", Item.ToolMaterial.GOLD, 6)); emeraldWand = register(r, new ItemWand("emerald_wand", "wandEmerald", TOOL_EMERALD, 4)); redstoneWand = register(r, new ItemWand("redstone_wand", "wandRedstone", TOOL_REDSTONE, 5)); lapisWand = register(r, new ItemWand("lapis_wand", "wandLapis", TOOL_LAPIS, 6)); diamondWand = register(r, new ItemWand("diamond_wand", "wandDiamond", Item.ToolMaterial.DIAMOND, 4)); silverWand = register(r, new ItemWand("silver_wand", "wandSilver", TOOL_SILVER, 6)); // sticks woodenStick = register(r, new ItemStick("wood_stick", "stickWood", Item.ToolMaterial.WOOD)); stoneStick = register(r, new ItemStick("stone_stick", "stickStone", Item.ToolMaterial.STONE)); copperStick = register(r, new ItemStick("copper_stick", "stickCopper", TOOL_COPPER)); bronzeStick = register(r, new ItemStick("bronze_stick", "stickBronze", TOOL_BRONZE)); ironStick = register(r, new ItemStick("iron_stick", "stickIron", Item.ToolMaterial.IRON)); goldStick = register(r, new ItemStick("gold_stick", "stickGold", Item.ToolMaterial.GOLD)); diamondStick = register(r, new ItemStick("diamond_stick", "stickDiamond", Item.ToolMaterial.DIAMOND)); // dagger woodenDagger = register(r, new ItemDagger("wood_dagger", "daggerWood", Item.ToolMaterial.WOOD)); stoneDagger = register(r, new ItemDagger("stone_dagger", "daggerStone", Item.ToolMaterial.STONE)); copperDagger = register(r, new ItemDagger("copper_dagger", "daggerCopper", TOOL_COPPER)); bronzeDagger = register(r, new ItemDagger("bronze_dagger", "daggerBronze", TOOL_BRONZE)); ironDagger = register(r, new ItemDagger("iron_dagger", "daggerIron", Item.ToolMaterial.IRON)); goldDagger = register(r, new ItemDagger("gold_dagger", "daggerGold", Item.ToolMaterial.GOLD)); diamondDagger = register(r, new ItemDagger("diamond_dagger", "daggerDiamond", Item.ToolMaterial.DIAMOND)); // hammer woodenHammer = register(r, new ItemHammer("wood_hammer", "hammerWood", Item.ToolMaterial.WOOD)); stoneHammer = register(r, new ItemHammer("stone_hammer", "hammerStone", Item.ToolMaterial.STONE)); copperHammer = register(r, new ItemHammer("copper_hammer", "hammerCopper", TOOL_COPPER)); bronzeHammer = register(r, new ItemHammer("bronze_hammer", "hammerBronze", TOOL_BRONZE)); ironHammer = register(r, new ItemHammer("iron_hammer", "hammerIron", Item.ToolMaterial.IRON)); goldHammer = register(r, new ItemHammer("gold_hammer", "hammerGold", Item.ToolMaterial.GOLD)); diamondHammer = register(r, new ItemHammer("diamond_hammer", "hammerDiamond", Item.ToolMaterial.DIAMOND)); // coins copperCoin = register(r, new ItemBase("coin_copper", "coinCopper").setCreativeTab(CreativeTabs.MISC)); silverCoin = register(r, new ItemBase("coin_silver", "coinSilver").setCreativeTab(CreativeTabs.MISC)); goldCoin = register(r, new ItemBase("coin_gold", "coinGold").setCreativeTab(CreativeTabs.MISC)); // misc scroll = register(r, (ItemScroll) new ItemScroll("scroll", "scroll").setCreativeTab(CreativeTabs.MISC)); realHayBed = register(r, new ItemBed("real_hay_bed", "realHayBed")); hayBundle = register(r, new ItemBase("hay_bundle", "bundleHay").setCreativeTab(CreativeTabs.MATERIALS)); batWing = register(r, new ItemBase("bat_wing", "batWing").setCreativeTab(CreativeTabs.MATERIALS)); wolfFur = register(r, new ItemBase("wolf_fur", "wolfFur").setCreativeTab(CreativeTabs.MATERIALS)); // workaround EnumMetals.fixMetalIngots(); } private static T register(IForgeRegistry r, T item) { r.register(item); if(item instanceof ItemModelProvider) { ((ItemModelProvider) item).registerItemModel(item); } return item; } }