From ad24a851fb49e6aa44d992a457b0ff6fa9e5383b Mon Sep 17 00:00:00 2001 From: YaibaToKen Date: Thu, 10 May 2018 20:07:26 +0100 Subject: [PATCH 1/6] Check if material already exists before registering --- .../moartinkers/registry/ModMaterials.java | 1588 +++++++++-------- 1 file changed, 796 insertions(+), 792 deletions(-) diff --git a/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java b/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java index 346d62a..2929145 100644 --- a/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java +++ b/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java @@ -25,795 +25,799 @@ import slimeknights.tconstruct.tools.TinkerTraits; public class ModMaterials { - public static Material matEnderium; - public static Material matPlatinum; - public static Material matIridium; - public static Material matMithril; - public static Material matSignalum; - public static Material matLumium; - public static Material matConstantan; - public static Material matInvar; - public static Material matNickel; - public static Material matTin; - public static Material matAluminum; - public static Material matBrass; - public static Material matZinc; - - public static Material matRefGlowstone; - public static Material matRefObsidian; - public static Material matOsmium; - - public static Material matManasteel; - public static Material matTerrasteel; - public static Material matElementium; - public static Material matGaia; - - public static Material matElecSteel; - public static Material matEnerAlloy; - public static Material matVibrAlloy; - public static Material matRedAlloy; - public static Material matCondIron; - public static Material matPulsIron; - public static Material matDarkSteel; - public static Material matSoularium; - - public static Material matYellorium; - public static Material matCyanite; - public static Material matBlutonium; - public static Material matLudicrite; - - public static Material matQuartzIron; - - public static Material matDraconium; - public static Material matWyvDraconium; - public static Material matAwaDraconium; - public static Material matChaDraconium; - - public static Material matEnchMetal; - public static Material matMagWood; - - public static Material matPsimetal; - public static Material matIvoryPsimetal; - public static Material matEbonyPsimetal; - public static Material matPsigem; - - public static Material matDarkMatter; - public static Material matRedMatter; - - public static Material matFluxElec; - - public static Material matHardStone; - public static Material matAlabaster; - public static Material matBasalt; - public static Material matLonsdaleite; - public static Material matMica; - - public static Material matTitanium; - public static Material matTungsten; - public static Material matTungstensteel; - public static Material matChrome; - public static Material matRefinedIron; - public static Material matAdvAlloy; - public static Material matRuby; - public static Material matSapphire; - public static Material matPeridot; - public static Material matRedGarnet; - public static Material matYellowGarnet; - public static Material matRubber; - - public static Material matCertus; - public static Material matFluix; - - private static boolean force = false; - - public static void preInit() { - FluidRegistry.enableUniversalBucket(); - - if (ConfigOptions.materialIsAllowed("enderium")) { - matEnderium = ingotMaterial("Enderium", 0x006E61, 1200); - matEnderium.addTrait(TinkerTraits.enderference); - matEnderium.addTrait(ModTraits.enderMagnetic, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matEnderium, - new HeadMaterialStats(1020, 8.31f, 10.19f, HarvestLevels.COBALT), - new HandleMaterialStats(0.42f, 400), new ExtraMaterialStats(60), - new BowMaterialStats(1.22f, 1.1f, 5f)); - } - - if (ConfigOptions.materialIsAllowed("platinum")) { - matPlatinum = ingotMaterial("Platinum", 0x39CAFA, 900); - matPlatinum.addTrait(TinkerTraits.dense); - TinkerRegistry.addMaterialStats(matPlatinum, - new HeadMaterialStats(1410, 9.47f, 7.39f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.78f, 600), new ExtraMaterialStats(120), - new BowMaterialStats(0.67f, 0.6f, 3f)); - } - - if (ConfigOptions.materialIsAllowed("iridium")) { - matIridium = ingotMaterial("Iridium", 0xEBEBEB, 1500); - matIridium.addTrait(ModTraits.weee, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matIridium, - new HeadMaterialStats(1910, 11.02f, 9.95f, HarvestLevels.COBALT), - new HandleMaterialStats(0.83f, 500), new ExtraMaterialStats(200), - new BowMaterialStats(0.23f, 1.44f, 5f)); - } - - if (ConfigOptions.materialIsAllowed("mithril")) { - matMithril = ingotMaterial("Mithril", 0x2095B0, 1350); - matMithril.addTrait(ModTraits.sos); - TinkerRegistry.addMaterialStats(matMithril, - new HeadMaterialStats(1160, 13.02f, 7.03f, HarvestLevels.COBALT), - new HandleMaterialStats(0.49f, 200), new ExtraMaterialStats(30), - new BowMaterialStats(1.87f, 1.12f, 3f)); - } - - if (ConfigOptions.materialIsAllowed("signalum")) { - matSignalum = ingotMaterial("Signalum", 0xE65B10, 950); - matSignalum.addTrait(TinkerTraits.unnatural); - TinkerRegistry.addMaterialStats(matSignalum, - new HeadMaterialStats(740, 12.42f, 6.37f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.52f, 100), new ExtraMaterialStats(40), - new BowMaterialStats(3.24f, 0.78f, 3f)); - } - - if (ConfigOptions.materialIsAllowed("lumium")) { - matLumium = ingotMaterial("Lumium", 0xFFFCB0, 1000); - matLumium.addTrait(ModTraits.lightboost); - TinkerRegistry.addMaterialStats(matLumium, new HeadMaterialStats(600, 8.60f, 8.34f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.44f, 90), new ExtraMaterialStats(20), - new BowMaterialStats(2.89f, 2.36f, 9f)); - } - - if (ConfigOptions.materialIsAllowed("constantan")) { - if (!Loader.isModLoaded("immersiveengineering")) { - matConstantan = ingotMaterial("Constantan", 0xD9B34A, 500); - matConstantan.addTrait(ModTraits.constant); - TinkerRegistry.addMaterialStats(matConstantan, - new HeadMaterialStats(300, 4.45f, 5.03f, HarvestLevels.DIAMOND), - new HandleMaterialStats(0.34f, 135), new ExtraMaterialStats(13), - new BowMaterialStats(2.31f, 1.43f, 4f)); - } - } - - if (ConfigOptions.materialIsAllowed("invar")) { - matInvar = ingotMaterial("Invar", 0xC4C4C4, 1040); - matInvar.addTrait(TinkerTraits.magnetic); - matInvar.addTrait(TinkerTraits.magnetic2, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matInvar, new HeadMaterialStats(700, 7.22f, 6.22f, HarvestLevels.DIAMOND), - new HandleMaterialStats(0.64f, 220), new ExtraMaterialStats(32), - new BowMaterialStats(0.92f, 0.76f, 7f)); - } - - if (ConfigOptions.materialIsAllowed("nickel")) { - matNickel = ingotMaterialExist(TinkerFluids.nickel, "Nickel", TinkerFluids.nickel.color); - matNickel.addTrait(ModTraits.exploit, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matNickel, new HeadMaterialStats(20, 3.63f, 5.10f, HarvestLevels.IRON), - new HandleMaterialStats(0.14f, 30), new ExtraMaterialStats(7), - new BowMaterialStats(0.24f, 1.34f, 3f)); - } - - if (ConfigOptions.materialIsAllowed("tin")) { - matTin = ingotMaterialExist(TinkerFluids.tin, "Tin", TinkerFluids.tin.color); - matTin.addTrait(ModTraits.sos); - TinkerRegistry.addMaterialStats(matTin, new HeadMaterialStats(300, 1.85f, 2.27f, HarvestLevels.IRON), - new HandleMaterialStats(1.34f, 120), new ExtraMaterialStats(40), - new BowMaterialStats(2.59f, 0.87f, 1f)); - } - - if (ConfigOptions.materialIsAllowed("brass")) { - matBrass = ingotMaterialExist(TinkerFluids.brass, "Brass", TinkerFluids.brass.color); - TinkerRegistry.addMaterialStats(matBrass, new HeadMaterialStats(260, 2.98f, 1.76f, HarvestLevels.IRON), - new HandleMaterialStats(1.11f, 10), new ExtraMaterialStats(4), - new BowMaterialStats(1.32f, 1.63f, 3f)); - } - - if (ConfigOptions.materialIsAllowed("aluminum")) { - matAluminum = ingotMaterialExist(TinkerFluids.aluminum, "Aluminum", TinkerFluids.aluminum.color); - TinkerRegistry.addMaterialStats(matAluminum, new HeadMaterialStats(80, 1.23f, 0.85f, HarvestLevels.IRON), - new HandleMaterialStats(0.21f, -20), new ExtraMaterialStats(-10), - new BowMaterialStats(0.21f, 0.34f, 0.6f)); - } - - if (ConfigOptions.materialIsAllowed("zinc")) { - matZinc = ingotMaterialExist(TinkerFluids.zinc, "Zinc", TinkerFluids.zinc.color); - matZinc.addTrait(TinkerTraits.crumbling); - TinkerRegistry.addMaterialStats(matZinc, new HeadMaterialStats(40, 1.76f, 0.53f, HarvestLevels.IRON), - new HandleMaterialStats(0.19f, -25), new ExtraMaterialStats(-12), - new BowMaterialStats(0.32f, 0.43f, 0.4f)); - } - - if (ConfigOptions.materialIsAllowed("refinedobsidian")) { - if (Loader.isModLoaded("Mekanism")) - force = true; - matRefObsidian = ingotMaterialNoDust("RefinedObsidian", 0x732668, 1600); - matRefObsidian.addTrait(TinkerTraits.duritos); - matRefObsidian.addTrait(ModTraits.darkness); - TinkerRegistry.addMaterialStats(matRefObsidian, - new HeadMaterialStats(1400, 5.24f, 11.04f, HarvestLevels.COBALT), - new HandleMaterialStats(2.19f, 400), new ExtraMaterialStats(340), - new BowMaterialStats(0.11f, 0.43f, 12f)); - } - - if (ConfigOptions.materialIsAllowed("refinedglowstone")) { - if (Loader.isModLoaded("Mekanism")) - force = true; - matRefGlowstone = ingotMaterial("RefinedGlowstone", 0xF0EC29, 1300); - matRefGlowstone.addTrait(ModTraits.lightboost); - TinkerRegistry.addMaterialStats(matRefGlowstone, - new HeadMaterialStats(900, 9.43f, 8.88f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.84f, 140), new ExtraMaterialStats(100), - new BowMaterialStats(2.31f, 1.99f, 8f)); - } - - if (ConfigOptions.materialIsAllowed("osmium")) { - if (Loader.isModLoaded("Mekanism")) - force = true; - matOsmium = ingotMaterial("Osmium", 0x87A5FF, 600); - TinkerRegistry.addMaterialStats(matOsmium, new HeadMaterialStats(500, 3.73f, 4.01f, HarvestLevels.DIAMOND), - new HandleMaterialStats(1.19f, 98), new ExtraMaterialStats(48), - new BowMaterialStats(0.98f, 1.09f, 4f)); - } - if (!Loader.isModLoaded("botanicaladdons")) { - - if (ConfigOptions.materialIsAllowed("manasteel")) { - matManasteel = ingotMaterial("Manasteel", 0x62E1F5, 500); - matManasteel.addTrait(ModTraits.manaRepair); - TinkerRegistry.addMaterialStats(matManasteel, - new HeadMaterialStats(400, 6.21f, 3.87f, HarvestLevels.DIAMOND), - new HandleMaterialStats(1.07f, 120), new ExtraMaterialStats(71), - new BowMaterialStats(1.33f, 1.44f, 5f)); - } - - if (ConfigOptions.materialIsAllowed("terrasteel")) { - matTerrasteel = ingotMaterial("Terrasteel", 0x4EE823, 1400); - matTerrasteel.addTrait(ModTraits.manaEater); - TinkerRegistry.addMaterialStats(matTerrasteel, - new HeadMaterialStats(960, 9.53f, 12.03f, HarvestLevels.COBALT), - new HandleMaterialStats(1.45f, 200), new ExtraMaterialStats(136), - new BowMaterialStats(0.76f, 0.97f, 7f)); - } - - if (ConfigOptions.materialIsAllowed("elvenelementium")) { - matElementium = ingotMaterial("ElvenElementium", 0xED3BD8, 1400); - matElementium.addTrait(ModTraits.manaRepair); - TinkerRegistry.addMaterialStats(matElementium, - new HeadMaterialStats(200, 8.01f, 7.04f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(3.01f, -50), new ExtraMaterialStats(-20), - new BowMaterialStats(4.01f, 0.53f, 2f)); - } - } - - if (ConfigOptions.materialIsAllowed("gaia")) { - - matGaia = ingotMaterial("gaia", "gaiaIngot", 0x9157B5, 1600); - matGaia.addTrait(TinkerTraits.alien); - matGaia.addTrait(ModTraits.payback); - TinkerRegistry.registerMelting("gaiaIngot", FluidRegistry.getFluid("gaia"), 144); - TinkerRegistry.addMaterialStats(matGaia, new HeadMaterialStats(1600, 14.52f, 19.62f, HarvestLevels.COBALT), - new HandleMaterialStats(1.63f, 260), new ExtraMaterialStats(180), - new BowMaterialStats(1.54f, 6.45f, 15f)); - } - if (Loader.isModLoaded("enderio")) { - - if (ConfigOptions.materialIsAllowed("electricalsteel")) { - matElecSteel = ingotMaterialExist(FluidRegistry.getFluid("electricalsteel"), "ElectricalSteel", - 0xD1D1D1); - TinkerRegistry.addMaterialStats(matElecSteel, - new HeadMaterialStats(350, 5.87f, 2.42f, HarvestLevels.IRON), - new HandleMaterialStats(0.76f, -10), new ExtraMaterialStats(10), - new BowMaterialStats(0.97f, 2.10f, 7f)); - } - - if (ConfigOptions.materialIsAllowed("energeticalloy")) { - matEnerAlloy = ingotMaterialExist(FluidRegistry.getFluid("energeticalloy"), "EnergeticAlloy", 0xFFB300); - TinkerRegistry.addMaterialStats(matEnerAlloy, - new HeadMaterialStats(420, 7.84f, 1.07f, HarvestLevels.DIAMOND), - new HandleMaterialStats(1.00f, 20), new ExtraMaterialStats(50), - new BowMaterialStats(1.54f, 1.52f, 6f)); - } - - if (ConfigOptions.materialIsAllowed("vibrantalloy")) { - matVibrAlloy = ingotMaterialExist(FluidRegistry.getFluid("vibrantalloy"), "VibrantAlloy", 0x2DFA3E); - matVibrAlloy.addTrait(ModTraits.enderMagnetic, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matVibrAlloy, - new HeadMaterialStats(970, 9.88f, 3.41f, HarvestLevels.COBALT), - new HandleMaterialStats(1.85f, 200), new ExtraMaterialStats(150), - new BowMaterialStats(2.12f, 2.41f, 7f)); - } - - if (ConfigOptions.materialIsAllowed("redstonealloy")) { - matRedAlloy = ingotMaterialExist(FluidRegistry.getFluid("redstonealloy"), "RedstoneAlloy", 0xD61818); - TinkerRegistry.addMaterialStats(matRedAlloy, - new HeadMaterialStats(114, 15.53f, 1.41f, HarvestLevels.IRON), - new HandleMaterialStats(0.11f, -70), new ExtraMaterialStats(-40), - new BowMaterialStats(6.42f, 0.67f, 0.5f)); - } - - if (ConfigOptions.materialIsAllowed("conductiveiron")) { - matCondIron = ingotMaterialExist(FluidRegistry.getFluid("conductiveiron"), "ConductiveIron", 0xE87676); - TinkerRegistry.addMaterialStats(matCondIron, - new HeadMaterialStats(347, 8.03f, 3.43f, HarvestLevels.DIAMOND), - new HandleMaterialStats(0.46f, 10), new ExtraMaterialStats(5), - new BowMaterialStats(1.99f, 1.00f, 3f)); - } - - if (ConfigOptions.materialIsAllowed("pulsatingiron")) { - matPulsIron = ingotMaterialExist(FluidRegistry.getFluid("pulsatingiron"), "PulsatingIron", 0x15D474); - TinkerRegistry.addMaterialStats(matPulsIron, - new HeadMaterialStats(362, 7.10f, 5.10f, HarvestLevels.DIAMOND), - new HandleMaterialStats(1.01f, 99), new ExtraMaterialStats(76), - new BowMaterialStats(1.65f, 10.98f, 7f)); - } - if (ConfigOptions.materialIsAllowed("darksteel")) { - matDarkSteel = ingotMaterialExist(FluidRegistry.getFluid("darksteel"), "DarkSteel", 0x292828); - TinkerRegistry.addMaterialStats(matDarkSteel, - new HeadMaterialStats(1100, 9.87f, 10.91f, HarvestLevels.COBALT), - new HandleMaterialStats(1.87f, 300), new ExtraMaterialStats(400), - new BowMaterialStats(1.34f, 2.67f, 6f)); - } - if (ConfigOptions.materialIsAllowed("soularium")) { - matSoularium = ingotMaterialExist(FluidRegistry.getFluid("soularium"), "Soularium", 0x613E16); - matSoularium.addTrait(ModTraits.instantdeath2, MaterialTypes.HEAD); - matSoularium.addTrait(TinkerTraits.hellish); - TinkerRegistry.addMaterialStats(matSoularium, - new HeadMaterialStats(870, 4.32f, 6.66f, HarvestLevels.DIAMOND), - new HandleMaterialStats(1.11f, 100), new ExtraMaterialStats(125), - new BowMaterialStats(0.76f, 1.25f, 10f)); - } - } - - if (Loader.isModLoaded("bigreactors")) { - if (ConfigOptions.materialIsAllowed("yellorium")) { - force = true; - matYellorium = ingotMaterialExist(FluidRegistry.getFluid("yellorium"), "Yellorium", 0xFAF748); - matYellorium.addTrait(ModTraits.radioactive2); - TinkerRegistry.addMaterialStats(matYellorium, - new HeadMaterialStats(660, 7.52f, 5.08f, HarvestLevels.DIAMOND), - new HandleMaterialStats(0.76f, -40), new ExtraMaterialStats(-20), - new BowMaterialStats(0.97f, 0.79f, 3f)); - } - if (ConfigOptions.materialIsAllowed("cyanite")) { - force = true; - matCyanite = ingotMaterialExist(FluidRegistry.getFluid("cyanite"), "Cyanite", 0x25C9DB); - matCyanite.addTrait(ModTraits.radioactive); - TinkerRegistry.addMaterialStats(matCyanite, - new HeadMaterialStats(300, 6.53f, 4.83f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(1.53f, 20), new ExtraMaterialStats(60), - new BowMaterialStats(2.51f, 1.11f, 8f)); - } - } - - if (ConfigOptions.materialIsAllowed("blutonium")) { - if (Loader.isModLoaded("bigreactors")) - force = true; - matBlutonium = ingotMaterial("Blutonium", 0x2918C4, 1500); - matBlutonium.addTrait(ModTraits.radioactive3); - TinkerRegistry.addMaterialStats(matBlutonium, - new HeadMaterialStats(800, 8.09f, 6.23f, HarvestLevels.COBALT), new HandleMaterialStats(1.06f, 90), - new ExtraMaterialStats(50), new BowMaterialStats(1.25f, 1.02f, 12f)); - } - if (ConfigOptions.materialIsAllowed("ludicrite")) { - if (Loader.isModLoaded("bigreactors")) - force = true; - matLudicrite = ingotMaterial("Ludicrite", 0xD42CD4, 1700); - TinkerRegistry.addMaterialStats(matLudicrite, - new HeadMaterialStats(1400, 11.21f, 12.42f, HarvestLevels.COBALT), - new HandleMaterialStats(2.34f, 400), new ExtraMaterialStats(300), - new BowMaterialStats(4.52f, 3.21f, 13f)); - } - if (ConfigOptions.materialIsAllowed("quartzenrichediron")) { - ModFluids.registerFluid("quartzenrichediron", 0xE6E6E6, 900); - if (Loader.isModLoaded("refinedstorage")) { - force = true; - Item quartzIron = Item.REGISTRY - .getObject(new ResourceLocation("refinedstorage", "quartz_enriched_iron")); - matQuartzIron = new Material("quartzenrichediron", 0xE6E6E6); - matQuartzIron.addItem(quartzIron, 1, Material.VALUE_Ingot); - matQuartzIron.setCastable(true); - matQuartzIron.setRepresentativeItem(quartzIron); - TinkerRegistry.integrate(matQuartzIron, FluidRegistry.getFluid("quartzenrichediron")); - TinkerRegistry.registerMelting(quartzIron, FluidRegistry.getFluid("quartzenrichediron"), 144); - TinkerRegistry.addMaterialStats(matQuartzIron, - new HeadMaterialStats(500, 7.65f, 6.83f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(1.22f, 140), new ExtraMaterialStats(70), - new BowMaterialStats(0.64f, 0.86f, 4f)); - } - } - - if (Loader.isModLoaded("draconicevolution")) { - if (ConfigOptions.materialIsAllowed("draconium")) { - Item dracCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "draconic_core")); - matDraconium = new Material("draconium", 0x7A2EC7); - matDraconium.addItem(dracCore, 1, Material.VALUE_Ingot); - matDraconium.setCraftable(true); - matDraconium.setRepresentativeItem(dracCore); - matDraconium.addTrait(ModTraits.energyRepair); - matDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); - matDraconium.addTrait(ModTraits.op); - TinkerRegistry.integrate(matDraconium); - TinkerRegistry.addMaterialStats(matDraconium, - new HeadMaterialStats(1400, 12.04f, 13.53f, HarvestLevels.COBALT), - new HandleMaterialStats(1.86f, 400), new ExtraMaterialStats(300), - new BowMaterialStats(2.56f, 1.62f, 10f)); - } - if (ConfigOptions.materialIsAllowed("wyverndraconium")) { - Item wyvCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "wyvern_core")); - matWyvDraconium = new Material("wyverndraconium", 0xAB2EFF); - matWyvDraconium.addItem(wyvCore, 1, Material.VALUE_Ingot); - matWyvDraconium.setCraftable(true); - matWyvDraconium.setRepresentativeItem(wyvCore); - matWyvDraconium.addTrait(ModTraits.op); - matWyvDraconium.addTrait(ModTraits.energyRepair); - matWyvDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); - TinkerRegistry.integrate(matWyvDraconium); - TinkerRegistry.addMaterialStats(matWyvDraconium, new HeadMaterialStats(1700, 16.35f, 19.76f, 5), - new HandleMaterialStats(2.76f, 600), new ExtraMaterialStats(450), - new BowMaterialStats(4.06f, 2.98f, 14f)); - } - if (ConfigOptions.materialIsAllowed("awakeneddraconium")) { - Item awaCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "awakened_core")); - matAwaDraconium = new Material("awakeneddraconium", 0xFFC929); - matAwaDraconium.addItem(awaCore, 1, Material.VALUE_Ingot); - matAwaDraconium.setCraftable(true); - matAwaDraconium.setRepresentativeItem(awaCore); - matAwaDraconium.addTrait(ModTraits.op); - matAwaDraconium.addTrait(ModTraits.energyRepair); - matAwaDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); - TinkerRegistry.integrate(matAwaDraconium); - TinkerRegistry.addMaterialStats(matAwaDraconium, new HeadMaterialStats(2000, 25.43f, 29.52f, 6), - new HandleMaterialStats(3.12f, 800), new ExtraMaterialStats(600), - new BowMaterialStats(5.60f, 3.76f, 20f)); - } - if (ConfigOptions.materialIsAllowed("chaoticdraconium")) { - Item chaCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "chaotic_core")); - matChaDraconium = new Material("chaoticdraconium", 0x171717); - matChaDraconium.addItem(chaCore, 1, Material.VALUE_Ingot); - matChaDraconium.setCraftable(true); - matChaDraconium.setRepresentativeItem(chaCore); - matChaDraconium.addTrait(ModTraits.op); - matChaDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); - matChaDraconium.addTrait(ModTraits.weee, MaterialTypes.HEAD); - TinkerRegistry.integrate(matChaDraconium); - TinkerRegistry.addMaterialStats(matChaDraconium, new HeadMaterialStats(3000, 32.73f, 1400.76f, 7), - new HandleMaterialStats(5.31f, 1200), new ExtraMaterialStats(1000), - new BowMaterialStats(8.96f, 5.14f, 800f)); - } - } - - if (ConfigOptions.materialIsAllowed("magicalwood")) { - if (Loader.isModLoaded("extrautils2")) { - Item magWood = Item.REGISTRY.getObject(new ResourceLocation("extrautils2", "decorativesolidwood")); - matMagWood = new Material("magicalwood", 0xB7C752); - matMagWood.addItem(new ItemStack(magWood, 1, 1), 1, Material.VALUE_Ingot); - matMagWood.setCraftable(true); - matMagWood.setRepresentativeItem(new ItemStack(magWood, 1, 1)); - matMagWood.addTrait(ModTraits.moarwritable); - matMagWood.addTrait(ModTraits.moarwritable2, MaterialTypes.HEAD); - matMagWood.addTrait(TinkerTraits.ecological); - TinkerRegistry.integrate(matMagWood); - TinkerRegistry.addMaterialStats(matMagWood, - new HeadMaterialStats(120, 1.23f, 1.65f, HarvestLevels.STONE), - new HandleMaterialStats(0.78f, 10), new ExtraMaterialStats(20), - new BowMaterialStats(0.96f, 0.87f, 0.5f)); - } - } - if (ConfigOptions.materialIsAllowed("enchantedmetal")) { - - matEnchMetal = ingotMaterial("EnchantedMetal", 0x80F222, 1500); - matEnchMetal.addTrait(ModTraits.moarwritable); - matEnchMetal.addTrait(ModTraits.moarwritable2, MaterialTypes.HEAD); - matEnchMetal.addTrait(TinkerTraits.established); - TinkerRegistry.addMaterialStats(matEnchMetal, - new HeadMaterialStats(360, 7.53f, 8.52f, HarvestLevels.COBALT), new HandleMaterialStats(1.25f, 80), - new ExtraMaterialStats(50), new BowMaterialStats(1.12f, 1.35f, 6f)); - } - if (ConfigOptions.materialIsAllowed("psi")) { - matPsimetal = ingotMaterial("Psi", 0x2C88C9, 800); - matPsimetal.addTrait(ModTraits.psiRepair); - TinkerRegistry.addMaterialStats(matPsimetal, - new HeadMaterialStats(450, 9.04f, 8.01f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(1.12f, 140), new ExtraMaterialStats(80), - new BowMaterialStats(1.45f, 1.26f, 5f)); - } - if (ConfigOptions.materialIsAllowed("psigem")) { - matPsigem = materialPart("psigem", "gemPsi", 0x0CE8DD); - matPsigem.addTrait(ModTraits.psiEater); - TinkerRegistry.addMaterialStats(matPsigem, new HeadMaterialStats(800, 8.25f, 7.12f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(1.54f, 100), new ExtraMaterialStats(100), - new BowMaterialStats(1.21f, 0.85f, 4f)); - } - if (ConfigOptions.materialIsAllowed("ivorypsi")) { - matIvoryPsimetal = ingotMaterial("IvoryPsi", 0xF5F5F5, 1700); - matIvoryPsimetal.addTrait(ModTraits.psiRepair); - matIvoryPsimetal.addTrait(TinkerTraits.holy, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matIvoryPsimetal, - new HeadMaterialStats(980, 14.06f, 11.07f, HarvestLevels.COBALT), - new HandleMaterialStats(1.53f, 300), new ExtraMaterialStats(170), - new BowMaterialStats(2.74f, 1.75f, 6f)); - } - if (ConfigOptions.materialIsAllowed("ebonypsi")) { - matEbonyPsimetal = ingotMaterial("EbonyPsi", 0x0A0A0A, 1700); - matEbonyPsimetal.addTrait(ModTraits.psiRepair); - matEbonyPsimetal.addTrait(ModTraits.darkness, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matEbonyPsimetal, - new HeadMaterialStats(1210, 11.76f, 14.06f, HarvestLevels.COBALT), - new HandleMaterialStats(1.98f, 400), new ExtraMaterialStats(290), - new BowMaterialStats(1.64f, 2.56f, 10f)); - } - if (Loader.isModLoaded("projecte")) { - if (ConfigOptions.materialIsAllowed("darkmatter")) { - Item matter = Item.REGISTRY.getObject(new ResourceLocation("projecte", "item.pe_matter")); - matDarkMatter = new Material("darkmatter", 0x270133); - matDarkMatter.addItem(new ItemStack(matter, 1, 0), 1, Material.VALUE_Ingot); - matDarkMatter.setCraftable(true); - matDarkMatter.setRepresentativeItem(new ItemStack(matter, 1, 0)); - matDarkMatter.addTrait(ModTraits.darkness); - matDarkMatter.addTrait(ModTraits.instantdeath, MaterialTypes.HEAD); - TinkerRegistry.integrate(matDarkMatter); - TinkerRegistry.addMaterialStats(matDarkMatter, - new HeadMaterialStats(1200, 13.62f, 9.04f, HarvestLevels.COBALT), - new HandleMaterialStats(2.03f, 350), new ExtraMaterialStats(200), - new BowMaterialStats(1.87f, 3.54f, 8f)); - } - if (ConfigOptions.materialIsAllowed("redmatter")) { - Item matter = Item.REGISTRY.getObject(new ResourceLocation("projecte", "item.pe_matter")); - matRedMatter = new Material("redmatter", 0xE30000); - matRedMatter.addItem(new ItemStack(matter, 1, 1), 1, Material.VALUE_Ingot); - matRedMatter.setCraftable(true); - matRedMatter.setRepresentativeItem(new ItemStack(matter, 1, 1)); - matRedMatter.addTrait(ModTraits.weee, MaterialTypes.HEAD); - TinkerRegistry.integrate(matRedMatter); - TinkerRegistry.addMaterialStats(matRedMatter, - new HeadMaterialStats(1900, 16.74f, 15.07f, HarvestLevels.COBALT), - new HandleMaterialStats(3.86f, 500), new ExtraMaterialStats(500), - new BowMaterialStats(2.98f, 5.06f, 16f)); - } - } - - if (ConfigOptions.materialIsAllowed("electrumflux")) { - matFluxElec = ingotMaterial("ElectrumFlux", 0xFFF56B, 1800); - matFluxElec.addTrait(ModTraits.energyRepair, MaterialTypes.EXTRA); - matFluxElec.addTrait(ModTraits.energyRepair, MaterialTypes.HANDLE); - matFluxElec.addTrait(ModTraits.energyRepair, MaterialTypes.SHAFT); - matFluxElec.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matFluxElec, - new HeadMaterialStats(1100, 13.52f, 14.06f, HarvestLevels.COBALT), - new HandleMaterialStats(2.43f, 240), new ExtraMaterialStats(230), - new BowMaterialStats(2.26f, 3.41f, 8f)); - } - if (ConfigOptions.materialIsAllowed("hardenedstone")) { - matHardStone = materialPart("hardenedstone", "stoneHardened", 0x595959); - matHardStone.addTrait(TinkerTraits.petramor); - TinkerRegistry.addMaterialStats(matHardStone, - new HeadMaterialStats(200, 3.74f, 2.56f, HarvestLevels.DIAMOND), new HandleMaterialStats(0.53f, 90), - new ExtraMaterialStats(50), new BowMaterialStats(0.83f, 0.21f, 1f)); - } - if (ConfigOptions.materialIsAllowed("basalt")) { - matBasalt = materialPart("basalt", "stoneBasalt", 0x292929); - matBasalt.addTrait(TinkerTraits.hellish); - TinkerRegistry.addMaterialStats(matBasalt, new HeadMaterialStats(272, 5.07f, 4.86f, HarvestLevels.DIAMOND), - new HandleMaterialStats(0.96f, 100), new ExtraMaterialStats(60), - new BowMaterialStats(0.64f, 0.42f, 2f)); - } - if (ConfigOptions.materialIsAllowed("alabaster")) { - matAlabaster = materialPart("alabaster", "stoneAlabaster", 0xFFFFFF); - TinkerRegistry.addMaterialStats(matAlabaster, new HeadMaterialStats(225, 4.63f, 4.21f, HarvestLevels.IRON), - new HandleMaterialStats(1.21f, 70), new ExtraMaterialStats(70), - new BowMaterialStats(0.88f, 0.78f, 3f)); - } - if (ConfigOptions.materialIsAllowed("lonsdaleite")) { - matLonsdaleite = materialPart("lonsdaleite", "blockLonsdaleite", 0x1A1A1A); - matLonsdaleite.addTrait(ModTraits.exploit, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matLonsdaleite, - new HeadMaterialStats(1200, 0.97f, 1.54f, HarvestLevels.COBALT), - new HandleMaterialStats(3.41f, 100), new ExtraMaterialStats(200), - new BowMaterialStats(0.12f, 0.04f, 0.2f)); - } - if (ConfigOptions.materialIsAllowed("mica")) { - if (Loader.isModLoaded("environmentaltech")) { - Item mica = Item.REGISTRY.getObject(new ResourceLocation("environmentaltech", "mica")); - - matMica = new Material("mica", 0xDEDEDE); - matMica.addItem(mica, 1, Material.VALUE_Ingot); - matMica.setCraftable(true); - matMica.setRepresentativeItem(mica); - TinkerRegistry.integrate(matMica); - TinkerRegistry.addMaterialStats(matMica, - new HeadMaterialStats(703, 5.62f, 6.32f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(2.13f, 100), new ExtraMaterialStats(250), - new BowMaterialStats(3.04f, 4.06f, 5f)); - } - } - if (ConfigOptions.materialIsAllowed("refinediron")) { - matRefinedIron = ingotMaterial("RefinedIron", 0xE0E0E0, 780); - TinkerRegistry.addMaterialStats(matRefinedIron, - new HeadMaterialStats(450, 7.86f, 9.53f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(1.23f, 140), new ExtraMaterialStats(120), - new BowMaterialStats(0.56f, 1.45f, 7f)); - } - if (ConfigOptions.materialIsAllowed("tungsten")) { - matTungsten = ingotMaterial("Tungsten", 0x464659, 1800); - TinkerRegistry.addMaterialStats(matTungsten, - new HeadMaterialStats(680, 8.42f, 11.52f, HarvestLevels.COBALT), - new HandleMaterialStats(1.73f, 220), new ExtraMaterialStats(115), - new BowMaterialStats(0.98f, 5.17f, 9.5f)); - } - if (ConfigOptions.materialIsAllowed("tungstensteel")) { - matTungstensteel = ingotMaterial("Tungstensteel", 0x464659, 2100); - TinkerRegistry.addMaterialStats(matTungstensteel, - new HeadMaterialStats(1120, 8.97f, 14.53f, HarvestLevels.COBALT), - new HandleMaterialStats(2.42f, 320), new ExtraMaterialStats(200), - new BowMaterialStats(0.65f, 4.12f, 13f)); - } - if (ConfigOptions.materialIsAllowed("titanium")) { - matTitanium = ingotMaterial("Titanium", 0xBABABA, 1400); - TinkerRegistry.addMaterialStats(matTitanium, - new HeadMaterialStats(590, 7.63f, 10.41f, HarvestLevels.COBALT), - new HandleMaterialStats(1.52f, 180), new ExtraMaterialStats(95), - new BowMaterialStats(1.0f, 3.52f, 7.6f)); - } - if (ConfigOptions.materialIsAllowed("chrome")) { - matChrome = ingotMaterial("Chrome", 0xD6D6D6, 1600); - TinkerRegistry.addMaterialStats(matChrome, new HeadMaterialStats(800, 9.16f, 7.83f, HarvestLevels.COBALT), - new HandleMaterialStats(0.74f, 250), new ExtraMaterialStats(140), - new BowMaterialStats(1.52f, 2.15f, 5f)); - } - if (ConfigOptions.materialIsAllowed("advancedalloy")) { - matAdvAlloy = ingotMaterial("AdvancedAlloy", 0xFFBBA8, 1500); - TinkerRegistry.addMaterialStats(matAdvAlloy, - new HeadMaterialStats(1600, 13.63f, 13.23f, HarvestLevels.COBALT), - new HandleMaterialStats(1.85f, 400), new ExtraMaterialStats(500), - new BowMaterialStats(0.75f, 0.98f, 16f)); - } - if (ConfigOptions.materialIsAllowed("ruby")) { - matRuby = materialPart("ruby", "gemRuby", 0xCF0000); - matRuby.addTrait(ModTraits.reflect, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matRuby, new HeadMaterialStats(600, 10.12f, 6.84f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.74f, 100), new ExtraMaterialStats(80), - new BowMaterialStats(1.97f, 2.26f, 6f)); - } - if (ConfigOptions.materialIsAllowed("sapphire")) { - matSapphire = materialPart("sapphire", "gemSapphire", 0x0B33D6); - matSapphire.addTrait(ModTraits.launch, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matSapphire, - new HeadMaterialStats(600, 10.12f, 6.84f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.74f, 100), new ExtraMaterialStats(80), - new BowMaterialStats(1.97f, 2.26f, 6f)); - } - if (ConfigOptions.materialIsAllowed("peridot")) { - matPeridot = materialPart("peridot", "gemPeridot", 0x15E835); - matPeridot.addTrait(ModTraits.shock, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matPeridot, - new HeadMaterialStats(600, 10.12f, 6.84f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.74f, 100), new ExtraMaterialStats(80), - new BowMaterialStats(1.97f, 2.26f, 6f)); - } - if (ConfigOptions.materialIsAllowed("yellowgarnet")) { - matYellowGarnet = materialPart("yellowgarnet", "gemYellowGarnet", 0xF5F51B); - matYellowGarnet.addTrait(TinkerTraits.autosmelt); - matYellowGarnet.addTrait(TinkerTraits.superheat, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matYellowGarnet, - new HeadMaterialStats(800, 11.54f, 7.42f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.82f, 120), new ExtraMaterialStats(95), - new BowMaterialStats(1.67f, 2.41f, 7f)); - } - if (ConfigOptions.materialIsAllowed("redgarnet")) { - matRedGarnet = materialPart("redgarnet", "gemRedGarnet", 0xED2424); - matRedGarnet.addTrait(ModTraits.healer, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matRedGarnet, - new HeadMaterialStats(800, 11.54f, 7.42f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.82f, 120), new ExtraMaterialStats(95), - new BowMaterialStats(1.67f, 2.41f, 7f)); - } - if (ConfigOptions.materialIsAllowed("rubber")) { - matRubber = materialPart("rubber", "itemRubber", 0x5C4F4F); - matRubber.addTrait(ModTraits.sling); - TinkerRegistry.addMaterialStats(matRubber, new HeadMaterialStats(14, 0.95f, 0.12f, HarvestLevels.IRON), - new HandleMaterialStats(0.87f, 10), new ExtraMaterialStats(3), - new BowMaterialStats(6.42f, 1.42f, 0.3f), new BowStringMaterialStats(2.65f)); - } - if (Loader.isModLoaded("appliedenergistics2")) { - if (ConfigOptions.materialIsAllowed("certus")) { - Item material = Item.REGISTRY.getObject(new ResourceLocation("appliedenergistics2", "material")); - matCertus = new Material("certus", 0xCCE4F0); - matCertus.addItem(new ItemStack(material, 1, 0), 1, Material.VALUE_Ingot); - matCertus.setCraftable(true); - matCertus.setRepresentativeItem(new ItemStack(material, 1, 0)); - matCertus.addTrait(TinkerTraits.shocking); - TinkerRegistry.integrate(matCertus); - TinkerRegistry.addMaterialStats(matCertus, - new HeadMaterialStats(490, 7.45f, 10.45f, HarvestLevels.IRON), - new HandleMaterialStats(0.74f, 30), new ExtraMaterialStats(26), - new BowMaterialStats(2.31f, 1.23f, 12f)); - } - if (ConfigOptions.materialIsAllowed("fluix")) { - Item material = Item.REGISTRY.getObject(new ResourceLocation("appliedenergistics2", "material")); - matFluix = new Material("fluix", 0xB04EDE); - matFluix.addItem(new ItemStack(material, 1, 7), 1, Material.VALUE_Ingot); - matFluix.setCraftable(true); - matFluix.setRepresentativeItem(new ItemStack(material, 1, 7)); - TinkerRegistry.integrate(matFluix); - TinkerRegistry.addMaterialStats(matFluix, - new HeadMaterialStats(680, 13.32f, 12.65f, HarvestLevels.DIAMOND), - new HandleMaterialStats(0.45f, 10), new ExtraMaterialStats(40), - new BowMaterialStats(2.87f, 4.53f, 14f)); - } - } - } - - private static Material ingotMaterial(String name, int color, int temp) { - Material material = new Material(name.toLowerCase(), color); - material.addCommonItems(RandomHelper.capatilizeString(name)); - ModFluids.registerFluid(name.toLowerCase(), color, temp); - - MoarMaterialIntegration m = new MoarMaterialIntegration(material, FluidRegistry.getFluid(name.toLowerCase()), - name); - m.setRepresentativeItem("ingot" + name).toolforge(); - m.preInit(force); - TinkerRegistry.integrate(m); - - material.addItemIngot("ingot" + name); - material.setCastable(true); - force = false; - return material; - } - - private static Material ingotMaterial(String name, String oreName, int color, int temp) { - Material material = new Material(name, color); - ModFluids.registerFluid(name, color, temp); - - MoarMaterialIntegration m = new MoarMaterialIntegration(oreName, material, FluidRegistry.getFluid(name), null); - m.setRepresentativeItem(oreName).toolforge(); - m.preInit(force); - TinkerRegistry.integrate(m); - - material.addItemIngot(oreName); - material.setCastable(true); - force = false; - return material; - } - - private static Material materialPart(String name, String oreName, int color) { - Material material = new Material(name, color); - - MoarMaterialIntegration m = new MoarMaterialIntegration(oreName, material, null, null); - m.setRepresentativeItem(oreName); - m.preInit(force); - TinkerRegistry.integrate(m); - - material.addItemIngot(oreName); - material.setCraftable(true); - force = false; - return material; - } - - private static Material ingotMaterialNoDust(String name, int color, int temp) { - Material material = new Material(name.toLowerCase(), color); - material.addCommonItems(RandomHelper.capatilizeString(name)); - ModFluids.registerFluid(name.toLowerCase(), color, temp); - - MaterialIntegrationNoDust m = new MaterialIntegrationNoDust(material, - FluidRegistry.getFluid(name.toLowerCase()), name); - m.toolforge(); - m.preInit(force); - TinkerRegistry.integrate(m); - - material.addItemIngot("ingot" + name); - material.setCastable(true); - force = false; - return material; - } - - private static Material ingotMaterialExist(Fluid fluid, String name, int color) { - Material material = new Material(name.toLowerCase(), color); - material.addCommonItems(RandomHelper.capatilizeString(name)); - - MaterialIntegrationExists m = new MaterialIntegrationExists(material, fluid, name); - m.setRepresentativeItem("ingot" + name).toolforge(); - m.preInit(force); - TinkerRegistry.integrate(m); - - material.addItemIngot("ingot" + name); - force = false; - return material; - } -} + public static Material matEnderium; + public static Material matPlatinum; + public static Material matIridium; + public static Material matMithril; + public static Material matSignalum; + public static Material matLumium; + public static Material matConstantan; + public static Material matInvar; + public static Material matNickel; + public static Material matTin; + public static Material matAluminum; + public static Material matBrass; + public static Material matZinc; + + public static Material matRefGlowstone; + public static Material matRefObsidian; + public static Material matOsmium; + + public static Material matManasteel; + public static Material matTerrasteel; + public static Material matElementium; + public static Material matGaia; + + public static Material matElecSteel; + public static Material matEnerAlloy; + public static Material matVibrAlloy; + public static Material matRedAlloy; + public static Material matCondIron; + public static Material matPulsIron; + public static Material matDarkSteel; + public static Material matSoularium; + + public static Material matYellorium; + public static Material matCyanite; + public static Material matBlutonium; + public static Material matLudicrite; + + public static Material matQuartzIron; + + public static Material matDraconium; + public static Material matWyvDraconium; + public static Material matAwaDraconium; + public static Material matChaDraconium; + + public static Material matEnchMetal; + public static Material matMagWood; + + public static Material matPsimetal; + public static Material matIvoryPsimetal; + public static Material matEbonyPsimetal; + public static Material matPsigem; + + public static Material matDarkMatter; + public static Material matRedMatter; + + public static Material matFluxElec; + + public static Material matHardStone; + public static Material matAlabaster; + public static Material matBasalt; + public static Material matLonsdaleite; + public static Material matMica; + + public static Material matTitanium; + public static Material matTungsten; + public static Material matTungstensteel; + public static Material matChrome; + public static Material matRefinedIron; + public static Material matAdvAlloy; + public static Material matRuby; + public static Material matSapphire; + public static Material matPeridot; + public static Material matRedGarnet; + public static Material matYellowGarnet; + public static Material matRubber; + + public static Material matCertus; + public static Material matFluix; + + private static boolean force = false; + + private static boolean isRegistrable (String identifier) { + return ConfigOptions.materialIsAllowed(identifier) && TinkerRegistry.getMaterial(identifier).equals(Material.UNKNOWN); + } + + public static void preInit() { + FluidRegistry.enableUniversalBucket(); + + if (isRegistrable("enderium")) { + matEnderium = ingotMaterial("Enderium", 0x006E61, 1200); + matEnderium.addTrait(TinkerTraits.enderference); + matEnderium.addTrait(ModTraits.enderMagnetic, MaterialTypes.HEAD); + TinkerRegistry.addMaterialStats(matEnderium, + new HeadMaterialStats(1020, 8.31f, 10.19f, HarvestLevels.COBALT), + new HandleMaterialStats(0.42f, 400), new ExtraMaterialStats(60), + new BowMaterialStats(1.22f, 1.1f, 5f)); + } + + if (isRegistrable("platinum")) { + matPlatinum = ingotMaterial("Platinum", 0x39CAFA, 900); + matPlatinum.addTrait(TinkerTraits.dense); + TinkerRegistry.addMaterialStats(matPlatinum, + new HeadMaterialStats(1410, 9.47f, 7.39f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(0.78f, 600), new ExtraMaterialStats(120), + new BowMaterialStats(0.67f, 0.6f, 3f)); + } + + if (isRegistrable("iridium")) { + matIridium = ingotMaterial("Iridium", 0xEBEBEB, 1500); + matIridium.addTrait(ModTraits.weee, MaterialTypes.HEAD); + TinkerRegistry.addMaterialStats(matIridium, + new HeadMaterialStats(1910, 11.02f, 9.95f, HarvestLevels.COBALT), + new HandleMaterialStats(0.83f, 500), new ExtraMaterialStats(200), + new BowMaterialStats(0.23f, 1.44f, 5f)); + } + + if (isRegistrable("mithril")) { + matMithril = ingotMaterial("Mithril", 0x2095B0, 1350); + matMithril.addTrait(ModTraits.sos); + TinkerRegistry.addMaterialStats(matMithril, + new HeadMaterialStats(1160, 13.02f, 7.03f, HarvestLevels.COBALT), + new HandleMaterialStats(0.49f, 200), new ExtraMaterialStats(30), + new BowMaterialStats(1.87f, 1.12f, 3f)); + } + + if (isRegistrable("signalum")) { + matSignalum = ingotMaterial("Signalum", 0xE65B10, 950); + matSignalum.addTrait(TinkerTraits.unnatural); + TinkerRegistry.addMaterialStats(matSignalum, + new HeadMaterialStats(740, 12.42f, 6.37f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(0.52f, 100), new ExtraMaterialStats(40), + new BowMaterialStats(3.24f, 0.78f, 3f)); + } + + if (isRegistrable("lumium")) { + matLumium = ingotMaterial("Lumium", 0xFFFCB0, 1000); + matLumium.addTrait(ModTraits.lightboost); + TinkerRegistry.addMaterialStats(matLumium, new HeadMaterialStats(600, 8.60f, 8.34f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(0.44f, 90), new ExtraMaterialStats(20), + new BowMaterialStats(2.89f, 2.36f, 9f)); + } + + if (isRegistrable("constantan")) { + if (!Loader.isModLoaded("immersiveengineering")) { + matConstantan = ingotMaterial("Constantan", 0xD9B34A, 500); + matConstantan.addTrait(ModTraits.constant); + TinkerRegistry.addMaterialStats(matConstantan, + new HeadMaterialStats(300, 4.45f, 5.03f, HarvestLevels.DIAMOND), + new HandleMaterialStats(0.34f, 135), new ExtraMaterialStats(13), + new BowMaterialStats(2.31f, 1.43f, 4f)); + } + } + + if (isRegistrable("invar")) { + matInvar = ingotMaterial("Invar", 0xC4C4C4, 1040); + matInvar.addTrait(TinkerTraits.magnetic); + matInvar.addTrait(TinkerTraits.magnetic2, MaterialTypes.HEAD); + TinkerRegistry.addMaterialStats(matInvar, new HeadMaterialStats(700, 7.22f, 6.22f, HarvestLevels.DIAMOND), + new HandleMaterialStats(0.64f, 220), new ExtraMaterialStats(32), + new BowMaterialStats(0.92f, 0.76f, 7f)); + } + + if (isRegistrable("nickel")) { + matNickel = ingotMaterialExist(TinkerFluids.nickel, "Nickel", TinkerFluids.nickel.color); + matNickel.addTrait(ModTraits.exploit, MaterialTypes.HEAD); + TinkerRegistry.addMaterialStats(matNickel, new HeadMaterialStats(20, 3.63f, 5.10f, HarvestLevels.IRON), + new HandleMaterialStats(0.14f, 30), new ExtraMaterialStats(7), + new BowMaterialStats(0.24f, 1.34f, 3f)); + } + + if (isRegistrable("tin")) { + matTin = ingotMaterialExist(TinkerFluids.tin, "Tin", TinkerFluids.tin.color); + matTin.addTrait(ModTraits.sos); + TinkerRegistry.addMaterialStats(matTin, new HeadMaterialStats(300, 1.85f, 2.27f, HarvestLevels.IRON), + new HandleMaterialStats(1.34f, 120), new ExtraMaterialStats(40), + new BowMaterialStats(2.59f, 0.87f, 1f)); + } + + if (isRegistrable("brass")) { + matBrass = ingotMaterialExist(TinkerFluids.brass, "Brass", TinkerFluids.brass.color); + TinkerRegistry.addMaterialStats(matBrass, new HeadMaterialStats(260, 2.98f, 1.76f, HarvestLevels.IRON), + new HandleMaterialStats(1.11f, 10), new ExtraMaterialStats(4), + new BowMaterialStats(1.32f, 1.63f, 3f)); + } + + if (isRegistrable("aluminum")) { + matAluminum = ingotMaterialExist(TinkerFluids.aluminum, "Aluminum", TinkerFluids.aluminum.color); + TinkerRegistry.addMaterialStats(matAluminum, new HeadMaterialStats(80, 1.23f, 0.85f, HarvestLevels.IRON), + new HandleMaterialStats(0.21f, -20), new ExtraMaterialStats(-10), + new BowMaterialStats(0.21f, 0.34f, 0.6f)); + } + + if (isRegistrable("zinc")) { + matZinc = ingotMaterialExist(TinkerFluids.zinc, "Zinc", TinkerFluids.zinc.color); + matZinc.addTrait(TinkerTraits.crumbling); + TinkerRegistry.addMaterialStats(matZinc, new HeadMaterialStats(40, 1.76f, 0.53f, HarvestLevels.IRON), + new HandleMaterialStats(0.19f, -25), new ExtraMaterialStats(-12), + new BowMaterialStats(0.32f, 0.43f, 0.4f)); + } + + if (isRegistrable("refinedobsidian")) { + if (Loader.isModLoaded("Mekanism")) + force = true; + matRefObsidian = ingotMaterialNoDust("RefinedObsidian", 0x732668, 1600); + matRefObsidian.addTrait(TinkerTraits.duritos); + matRefObsidian.addTrait(ModTraits.darkness); + TinkerRegistry.addMaterialStats(matRefObsidian, + new HeadMaterialStats(1400, 5.24f, 11.04f, HarvestLevels.COBALT), + new HandleMaterialStats(2.19f, 400), new ExtraMaterialStats(340), + new BowMaterialStats(0.11f, 0.43f, 12f)); + } + + if (isRegistrable("refinedglowstone")) { + if (Loader.isModLoaded("Mekanism")) + force = true; + matRefGlowstone = ingotMaterial("RefinedGlowstone", 0xF0EC29, 1300); + matRefGlowstone.addTrait(ModTraits.lightboost); + TinkerRegistry.addMaterialStats(matRefGlowstone, + new HeadMaterialStats(900, 9.43f, 8.88f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(0.84f, 140), new ExtraMaterialStats(100), + new BowMaterialStats(2.31f, 1.99f, 8f)); + } + + if (isRegistrable("osmium")) { + if (Loader.isModLoaded("Mekanism")) + force = true; + matOsmium = ingotMaterial("Osmium", 0x87A5FF, 600); + TinkerRegistry.addMaterialStats(matOsmium, new HeadMaterialStats(500, 3.73f, 4.01f, HarvestLevels.DIAMOND), + new HandleMaterialStats(1.19f, 98), new ExtraMaterialStats(48), + new BowMaterialStats(0.98f, 1.09f, 4f)); + } + if (!Loader.isModLoaded("botanicaladdons")) { + + if (isRegistrable("manasteel")) { + matManasteel = ingotMaterial("Manasteel", 0x62E1F5, 500); + matManasteel.addTrait(ModTraits.manaRepair); + TinkerRegistry.addMaterialStats(matManasteel, + new HeadMaterialStats(400, 6.21f, 3.87f, HarvestLevels.DIAMOND), + new HandleMaterialStats(1.07f, 120), new ExtraMaterialStats(71), + new BowMaterialStats(1.33f, 1.44f, 5f)); + } + + if (isRegistrable("terrasteel")) { + matTerrasteel = ingotMaterial("Terrasteel", 0x4EE823, 1400); + matTerrasteel.addTrait(ModTraits.manaEater); + TinkerRegistry.addMaterialStats(matTerrasteel, + new HeadMaterialStats(960, 9.53f, 12.03f, HarvestLevels.COBALT), + new HandleMaterialStats(1.45f, 200), new ExtraMaterialStats(136), + new BowMaterialStats(0.76f, 0.97f, 7f)); + } + + if (isRegistrable("elvenelementium")) { + matElementium = ingotMaterial("ElvenElementium", 0xED3BD8, 1400); + matElementium.addTrait(ModTraits.manaRepair); + TinkerRegistry.addMaterialStats(matElementium, + new HeadMaterialStats(200, 8.01f, 7.04f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(3.01f, -50), new ExtraMaterialStats(-20), + new BowMaterialStats(4.01f, 0.53f, 2f)); + } + } + + if (isRegistrable("gaia")) { + + matGaia = ingotMaterial("gaia", "gaiaIngot", 0x9157B5, 1600); + matGaia.addTrait(TinkerTraits.alien); + matGaia.addTrait(ModTraits.payback); + TinkerRegistry.registerMelting("gaiaIngot", FluidRegistry.getFluid("gaia"), 144); + TinkerRegistry.addMaterialStats(matGaia, new HeadMaterialStats(1600, 14.52f, 19.62f, HarvestLevels.COBALT), + new HandleMaterialStats(1.63f, 260), new ExtraMaterialStats(180), + new BowMaterialStats(1.54f, 6.45f, 15f)); + } + if (Loader.isModLoaded("enderio")) { + + if (isRegistrable("electricalsteel")) { + matElecSteel = ingotMaterialExist(FluidRegistry.getFluid("electricalsteel"), "ElectricalSteel", + 0xD1D1D1); + TinkerRegistry.addMaterialStats(matElecSteel, + new HeadMaterialStats(350, 5.87f, 2.42f, HarvestLevels.IRON), + new HandleMaterialStats(0.76f, -10), new ExtraMaterialStats(10), + new BowMaterialStats(0.97f, 2.10f, 7f)); + } + + if (isRegistrable("energeticalloy")) { + matEnerAlloy = ingotMaterialExist(FluidRegistry.getFluid("energeticalloy"), "EnergeticAlloy", 0xFFB300); + TinkerRegistry.addMaterialStats(matEnerAlloy, + new HeadMaterialStats(420, 7.84f, 1.07f, HarvestLevels.DIAMOND), + new HandleMaterialStats(1.00f, 20), new ExtraMaterialStats(50), + new BowMaterialStats(1.54f, 1.52f, 6f)); + } + + if (isRegistrable("vibrantalloy")) { + matVibrAlloy = ingotMaterialExist(FluidRegistry.getFluid("vibrantalloy"), "VibrantAlloy", 0x2DFA3E); + matVibrAlloy.addTrait(ModTraits.enderMagnetic, MaterialTypes.HEAD); + TinkerRegistry.addMaterialStats(matVibrAlloy, + new HeadMaterialStats(970, 9.88f, 3.41f, HarvestLevels.COBALT), + new HandleMaterialStats(1.85f, 200), new ExtraMaterialStats(150), + new BowMaterialStats(2.12f, 2.41f, 7f)); + } + + if (isRegistrable("redstonealloy")) { + matRedAlloy = ingotMaterialExist(FluidRegistry.getFluid("redstonealloy"), "RedstoneAlloy", 0xD61818); + TinkerRegistry.addMaterialStats(matRedAlloy, + new HeadMaterialStats(114, 15.53f, 1.41f, HarvestLevels.IRON), + new HandleMaterialStats(0.11f, -70), new ExtraMaterialStats(-40), + new BowMaterialStats(6.42f, 0.67f, 0.5f)); + } + + if (isRegistrable("conductiveiron")) { + matCondIron = ingotMaterialExist(FluidRegistry.getFluid("conductiveiron"), "ConductiveIron", 0xE87676); + TinkerRegistry.addMaterialStats(matCondIron, + new HeadMaterialStats(347, 8.03f, 3.43f, HarvestLevels.DIAMOND), + new HandleMaterialStats(0.46f, 10), new ExtraMaterialStats(5), + new BowMaterialStats(1.99f, 1.00f, 3f)); + } + + if (isRegistrable("pulsatingiron")) { + matPulsIron = ingotMaterialExist(FluidRegistry.getFluid("pulsatingiron"), "PulsatingIron", 0x15D474); + TinkerRegistry.addMaterialStats(matPulsIron, + new HeadMaterialStats(362, 7.10f, 5.10f, HarvestLevels.DIAMOND), + new HandleMaterialStats(1.01f, 99), new ExtraMaterialStats(76), + new BowMaterialStats(1.65f, 10.98f, 7f)); + } + if (isRegistrable("darksteel")) { + matDarkSteel = ingotMaterialExist(FluidRegistry.getFluid("darksteel"), "DarkSteel", 0x292828); + TinkerRegistry.addMaterialStats(matDarkSteel, + new HeadMaterialStats(1100, 9.87f, 10.91f, HarvestLevels.COBALT), + new HandleMaterialStats(1.87f, 300), new ExtraMaterialStats(400), + new BowMaterialStats(1.34f, 2.67f, 6f)); + } + if (isRegistrable("soularium")) { + matSoularium = ingotMaterialExist(FluidRegistry.getFluid("soularium"), "Soularium", 0x613E16); + matSoularium.addTrait(ModTraits.instantdeath2, MaterialTypes.HEAD); + matSoularium.addTrait(TinkerTraits.hellish); + TinkerRegistry.addMaterialStats(matSoularium, + new HeadMaterialStats(870, 4.32f, 6.66f, HarvestLevels.DIAMOND), + new HandleMaterialStats(1.11f, 100), new ExtraMaterialStats(125), + new BowMaterialStats(0.76f, 1.25f, 10f)); + } + } + + if (Loader.isModLoaded("bigreactors")) { + if (isRegistrable("yellorium")) { + force = true; + matYellorium = ingotMaterialExist(FluidRegistry.getFluid("yellorium"), "Yellorium", 0xFAF748); + matYellorium.addTrait(ModTraits.radioactive2); + TinkerRegistry.addMaterialStats(matYellorium, + new HeadMaterialStats(660, 7.52f, 5.08f, HarvestLevels.DIAMOND), + new HandleMaterialStats(0.76f, -40), new ExtraMaterialStats(-20), + new BowMaterialStats(0.97f, 0.79f, 3f)); + } + if (isRegistrable("cyanite")) { + force = true; + matCyanite = ingotMaterialExist(FluidRegistry.getFluid("cyanite"), "Cyanite", 0x25C9DB); + matCyanite.addTrait(ModTraits.radioactive); + TinkerRegistry.addMaterialStats(matCyanite, + new HeadMaterialStats(300, 6.53f, 4.83f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(1.53f, 20), new ExtraMaterialStats(60), + new BowMaterialStats(2.51f, 1.11f, 8f)); + } + } + + if (isRegistrable("blutonium")) { + if (Loader.isModLoaded("bigreactors")) + force = true; + matBlutonium = ingotMaterial("Blutonium", 0x2918C4, 1500); + matBlutonium.addTrait(ModTraits.radioactive3); + TinkerRegistry.addMaterialStats(matBlutonium, + new HeadMaterialStats(800, 8.09f, 6.23f, HarvestLevels.COBALT), new HandleMaterialStats(1.06f, 90), + new ExtraMaterialStats(50), new BowMaterialStats(1.25f, 1.02f, 12f)); + } + if (isRegistrable("ludicrite")) { + if (Loader.isModLoaded("bigreactors")) + force = true; + matLudicrite = ingotMaterial("Ludicrite", 0xD42CD4, 1700); + TinkerRegistry.addMaterialStats(matLudicrite, + new HeadMaterialStats(1400, 11.21f, 12.42f, HarvestLevels.COBALT), + new HandleMaterialStats(2.34f, 400), new ExtraMaterialStats(300), + new BowMaterialStats(4.52f, 3.21f, 13f)); + } + if (isRegistrable("quartzenrichediron")) { + ModFluids.registerFluid("quartzenrichediron", 0xE6E6E6, 900); + if (Loader.isModLoaded("refinedstorage")) { + force = true; + Item quartzIron = Item.REGISTRY + .getObject(new ResourceLocation("refinedstorage", "quartz_enriched_iron")); + matQuartzIron = new Material("quartzenrichediron", 0xE6E6E6); + matQuartzIron.addItem(quartzIron, 1, Material.VALUE_Ingot); + matQuartzIron.setCastable(true); + matQuartzIron.setRepresentativeItem(quartzIron); + TinkerRegistry.integrate(matQuartzIron, FluidRegistry.getFluid("quartzenrichediron")); + TinkerRegistry.registerMelting(quartzIron, FluidRegistry.getFluid("quartzenrichediron"), 144); + TinkerRegistry.addMaterialStats(matQuartzIron, + new HeadMaterialStats(500, 7.65f, 6.83f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(1.22f, 140), new ExtraMaterialStats(70), + new BowMaterialStats(0.64f, 0.86f, 4f)); + } + } + + if (Loader.isModLoaded("draconicevolution")) { + if (isRegistrable("draconium")) { + Item dracCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "draconic_core")); + matDraconium = new Material("draconium", 0x7A2EC7); + matDraconium.addItem(dracCore, 1, Material.VALUE_Ingot); + matDraconium.setCraftable(true); + matDraconium.setRepresentativeItem(dracCore); + matDraconium.addTrait(ModTraits.energyRepair); + matDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); + matDraconium.addTrait(ModTraits.op); + TinkerRegistry.integrate(matDraconium); + TinkerRegistry.addMaterialStats(matDraconium, + new HeadMaterialStats(1400, 12.04f, 13.53f, HarvestLevels.COBALT), + new HandleMaterialStats(1.86f, 400), new ExtraMaterialStats(300), + new BowMaterialStats(2.56f, 1.62f, 10f)); + } + if (isRegistrable("wyverndraconium")) { + Item wyvCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "wyvern_core")); + matWyvDraconium = new Material("wyverndraconium", 0xAB2EFF); + matWyvDraconium.addItem(wyvCore, 1, Material.VALUE_Ingot); + matWyvDraconium.setCraftable(true); + matWyvDraconium.setRepresentativeItem(wyvCore); + matWyvDraconium.addTrait(ModTraits.op); + matWyvDraconium.addTrait(ModTraits.energyRepair); + matWyvDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); + TinkerRegistry.integrate(matWyvDraconium); + TinkerRegistry.addMaterialStats(matWyvDraconium, new HeadMaterialStats(1700, 16.35f, 19.76f, 5), + new HandleMaterialStats(2.76f, 600), new ExtraMaterialStats(450), + new BowMaterialStats(4.06f, 2.98f, 14f)); + } + if (isRegistrable("awakeneddraconium")) { + Item awaCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "awakened_core")); + matAwaDraconium = new Material("awakeneddraconium", 0xFFC929); + matAwaDraconium.addItem(awaCore, 1, Material.VALUE_Ingot); + matAwaDraconium.setCraftable(true); + matAwaDraconium.setRepresentativeItem(awaCore); + matAwaDraconium.addTrait(ModTraits.op); + matAwaDraconium.addTrait(ModTraits.energyRepair); + matAwaDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); + TinkerRegistry.integrate(matAwaDraconium); + TinkerRegistry.addMaterialStats(matAwaDraconium, new HeadMaterialStats(2000, 25.43f, 29.52f, 6), + new HandleMaterialStats(3.12f, 800), new ExtraMaterialStats(600), + new BowMaterialStats(5.60f, 3.76f, 20f)); + } + if (isRegistrable("chaoticdraconium")) { + Item chaCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "chaotic_core")); + matChaDraconium = new Material("chaoticdraconium", 0x171717); + matChaDraconium.addItem(chaCore, 1, Material.VALUE_Ingot); + matChaDraconium.setCraftable(true); + matChaDraconium.setRepresentativeItem(chaCore); + matChaDraconium.addTrait(ModTraits.op); + matChaDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); + matChaDraconium.addTrait(ModTraits.weee, MaterialTypes.HEAD); + TinkerRegistry.integrate(matChaDraconium); + TinkerRegistry.addMaterialStats(matChaDraconium, new HeadMaterialStats(3000, 32.73f, 1400.76f, 7), + new HandleMaterialStats(5.31f, 1200), new ExtraMaterialStats(1000), + new BowMaterialStats(8.96f, 5.14f, 800f)); + } + } + + if (isRegistrable("magicalwood")) { + if (Loader.isModLoaded("extrautils2")) { + Item magWood = Item.REGISTRY.getObject(new ResourceLocation("extrautils2", "decorativesolidwood")); + matMagWood = new Material("magicalwood", 0xB7C752); + matMagWood.addItem(new ItemStack(magWood, 1, 1), 1, Material.VALUE_Ingot); + matMagWood.setCraftable(true); + matMagWood.setRepresentativeItem(new ItemStack(magWood, 1, 1)); + matMagWood.addTrait(ModTraits.moarwritable); + matMagWood.addTrait(ModTraits.moarwritable2, MaterialTypes.HEAD); + matMagWood.addTrait(TinkerTraits.ecological); + TinkerRegistry.integrate(matMagWood); + TinkerRegistry.addMaterialStats(matMagWood, + new HeadMaterialStats(120, 1.23f, 1.65f, HarvestLevels.STONE), + new HandleMaterialStats(0.78f, 10), new ExtraMaterialStats(20), + new BowMaterialStats(0.96f, 0.87f, 0.5f)); + } + } + if (isRegistrable("enchantedmetal")) { + + matEnchMetal = ingotMaterial("EnchantedMetal", 0x80F222, 1500); + matEnchMetal.addTrait(ModTraits.moarwritable); + matEnchMetal.addTrait(ModTraits.moarwritable2, MaterialTypes.HEAD); + matEnchMetal.addTrait(TinkerTraits.established); + TinkerRegistry.addMaterialStats(matEnchMetal, + new HeadMaterialStats(360, 7.53f, 8.52f, HarvestLevels.COBALT), new HandleMaterialStats(1.25f, 80), + new ExtraMaterialStats(50), new BowMaterialStats(1.12f, 1.35f, 6f)); + } + if (isRegistrable("psi")) { + matPsimetal = ingotMaterial("Psi", 0x2C88C9, 800); + matPsimetal.addTrait(ModTraits.psiRepair); + TinkerRegistry.addMaterialStats(matPsimetal, + new HeadMaterialStats(450, 9.04f, 8.01f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(1.12f, 140), new ExtraMaterialStats(80), + new BowMaterialStats(1.45f, 1.26f, 5f)); + } + if (isRegistrable("psigem")) { + matPsigem = materialPart("psigem", "gemPsi", 0x0CE8DD); + matPsigem.addTrait(ModTraits.psiEater); + TinkerRegistry.addMaterialStats(matPsigem, new HeadMaterialStats(800, 8.25f, 7.12f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(1.54f, 100), new ExtraMaterialStats(100), + new BowMaterialStats(1.21f, 0.85f, 4f)); + } + if (isRegistrable("ivorypsi")) { + matIvoryPsimetal = ingotMaterial("IvoryPsi", 0xF5F5F5, 1700); + matIvoryPsimetal.addTrait(ModTraits.psiRepair); + matIvoryPsimetal.addTrait(TinkerTraits.holy, MaterialTypes.HEAD); + TinkerRegistry.addMaterialStats(matIvoryPsimetal, + new HeadMaterialStats(980, 14.06f, 11.07f, HarvestLevels.COBALT), + new HandleMaterialStats(1.53f, 300), new ExtraMaterialStats(170), + new BowMaterialStats(2.74f, 1.75f, 6f)); + } + if (isRegistrable("ebonypsi")) { + matEbonyPsimetal = ingotMaterial("EbonyPsi", 0x0A0A0A, 1700); + matEbonyPsimetal.addTrait(ModTraits.psiRepair); + matEbonyPsimetal.addTrait(ModTraits.darkness, MaterialTypes.HEAD); + TinkerRegistry.addMaterialStats(matEbonyPsimetal, + new HeadMaterialStats(1210, 11.76f, 14.06f, HarvestLevels.COBALT), + new HandleMaterialStats(1.98f, 400), new ExtraMaterialStats(290), + new BowMaterialStats(1.64f, 2.56f, 10f)); + } + if (Loader.isModLoaded("projecte")) { + if (isRegistrable("darkmatter")) { + Item matter = Item.REGISTRY.getObject(new ResourceLocation("projecte", "item.pe_matter")); + matDarkMatter = new Material("darkmatter", 0x270133); + matDarkMatter.addItem(new ItemStack(matter, 1, 0), 1, Material.VALUE_Ingot); + matDarkMatter.setCraftable(true); + matDarkMatter.setRepresentativeItem(new ItemStack(matter, 1, 0)); + matDarkMatter.addTrait(ModTraits.darkness); + matDarkMatter.addTrait(ModTraits.instantdeath, MaterialTypes.HEAD); + TinkerRegistry.integrate(matDarkMatter); + TinkerRegistry.addMaterialStats(matDarkMatter, + new HeadMaterialStats(1200, 13.62f, 9.04f, HarvestLevels.COBALT), + new HandleMaterialStats(2.03f, 350), new ExtraMaterialStats(200), + new BowMaterialStats(1.87f, 3.54f, 8f)); + } + if (isRegistrable("redmatter")) { + Item matter = Item.REGISTRY.getObject(new ResourceLocation("projecte", "item.pe_matter")); + matRedMatter = new Material("redmatter", 0xE30000); + matRedMatter.addItem(new ItemStack(matter, 1, 1), 1, Material.VALUE_Ingot); + matRedMatter.setCraftable(true); + matRedMatter.setRepresentativeItem(new ItemStack(matter, 1, 1)); + matRedMatter.addTrait(ModTraits.weee, MaterialTypes.HEAD); + TinkerRegistry.integrate(matRedMatter); + TinkerRegistry.addMaterialStats(matRedMatter, + new HeadMaterialStats(1900, 16.74f, 15.07f, HarvestLevels.COBALT), + new HandleMaterialStats(3.86f, 500), new ExtraMaterialStats(500), + new BowMaterialStats(2.98f, 5.06f, 16f)); + } + } + + if (isRegistrable("electrumflux")) { + matFluxElec = ingotMaterial("ElectrumFlux", 0xFFF56B, 1800); + matFluxElec.addTrait(ModTraits.energyRepair, MaterialTypes.EXTRA); + matFluxElec.addTrait(ModTraits.energyRepair, MaterialTypes.HANDLE); + matFluxElec.addTrait(ModTraits.energyRepair, MaterialTypes.SHAFT); + matFluxElec.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); + TinkerRegistry.addMaterialStats(matFluxElec, + new HeadMaterialStats(1100, 13.52f, 14.06f, HarvestLevels.COBALT), + new HandleMaterialStats(2.43f, 240), new ExtraMaterialStats(230), + new BowMaterialStats(2.26f, 3.41f, 8f)); + } + if (isRegistrable("hardenedstone")) { + matHardStone = materialPart("hardenedstone", "stoneHardened", 0x595959); + matHardStone.addTrait(TinkerTraits.petramor); + TinkerRegistry.addMaterialStats(matHardStone, + new HeadMaterialStats(200, 3.74f, 2.56f, HarvestLevels.DIAMOND), new HandleMaterialStats(0.53f, 90), + new ExtraMaterialStats(50), new BowMaterialStats(0.83f, 0.21f, 1f)); + } + if (isRegistrable("basalt")) { + matBasalt = materialPart("basalt", "stoneBasalt", 0x292929); + matBasalt.addTrait(TinkerTraits.hellish); + TinkerRegistry.addMaterialStats(matBasalt, new HeadMaterialStats(272, 5.07f, 4.86f, HarvestLevels.DIAMOND), + new HandleMaterialStats(0.96f, 100), new ExtraMaterialStats(60), + new BowMaterialStats(0.64f, 0.42f, 2f)); + } + if (isRegistrable("alabaster")) { + matAlabaster = materialPart("alabaster", "stoneAlabaster", 0xFFFFFF); + TinkerRegistry.addMaterialStats(matAlabaster, new HeadMaterialStats(225, 4.63f, 4.21f, HarvestLevels.IRON), + new HandleMaterialStats(1.21f, 70), new ExtraMaterialStats(70), + new BowMaterialStats(0.88f, 0.78f, 3f)); + } + if (isRegistrable("lonsdaleite")) { + matLonsdaleite = materialPart("lonsdaleite", "blockLonsdaleite", 0x1A1A1A); + matLonsdaleite.addTrait(ModTraits.exploit, MaterialTypes.HEAD); + TinkerRegistry.addMaterialStats(matLonsdaleite, + new HeadMaterialStats(1200, 0.97f, 1.54f, HarvestLevels.COBALT), + new HandleMaterialStats(3.41f, 100), new ExtraMaterialStats(200), + new BowMaterialStats(0.12f, 0.04f, 0.2f)); + } + if (isRegistrable("mica")) { + if (Loader.isModLoaded("environmentaltech")) { + Item mica = Item.REGISTRY.getObject(new ResourceLocation("environmentaltech", "mica")); + + matMica = new Material("mica", 0xDEDEDE); + matMica.addItem(mica, 1, Material.VALUE_Ingot); + matMica.setCraftable(true); + matMica.setRepresentativeItem(mica); + TinkerRegistry.integrate(matMica); + TinkerRegistry.addMaterialStats(matMica, + new HeadMaterialStats(703, 5.62f, 6.32f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(2.13f, 100), new ExtraMaterialStats(250), + new BowMaterialStats(3.04f, 4.06f, 5f)); + } + } + if (isRegistrable("refinediron")) { + matRefinedIron = ingotMaterial("RefinedIron", 0xE0E0E0, 780); + TinkerRegistry.addMaterialStats(matRefinedIron, + new HeadMaterialStats(450, 7.86f, 9.53f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(1.23f, 140), new ExtraMaterialStats(120), + new BowMaterialStats(0.56f, 1.45f, 7f)); + } + if (isRegistrable("tungsten")) { + matTungsten = ingotMaterial("Tungsten", 0x464659, 1800); + TinkerRegistry.addMaterialStats(matTungsten, + new HeadMaterialStats(680, 8.42f, 11.52f, HarvestLevels.COBALT), + new HandleMaterialStats(1.73f, 220), new ExtraMaterialStats(115), + new BowMaterialStats(0.98f, 5.17f, 9.5f)); + } + if (isRegistrable("tungstensteel")) { + matTungstensteel = ingotMaterial("Tungstensteel", 0x464659, 2100); + TinkerRegistry.addMaterialStats(matTungstensteel, + new HeadMaterialStats(1120, 8.97f, 14.53f, HarvestLevels.COBALT), + new HandleMaterialStats(2.42f, 320), new ExtraMaterialStats(200), + new BowMaterialStats(0.65f, 4.12f, 13f)); + } + if (isRegistrable("titanium")) { + matTitanium = ingotMaterial("Titanium", 0xBABABA, 1400); + TinkerRegistry.addMaterialStats(matTitanium, + new HeadMaterialStats(590, 7.63f, 10.41f, HarvestLevels.COBALT), + new HandleMaterialStats(1.52f, 180), new ExtraMaterialStats(95), + new BowMaterialStats(1.0f, 3.52f, 7.6f)); + } + if (isRegistrable("chrome")) { + matChrome = ingotMaterial("Chrome", 0xD6D6D6, 1600); + TinkerRegistry.addMaterialStats(matChrome, new HeadMaterialStats(800, 9.16f, 7.83f, HarvestLevels.COBALT), + new HandleMaterialStats(0.74f, 250), new ExtraMaterialStats(140), + new BowMaterialStats(1.52f, 2.15f, 5f)); + } + if (isRegistrable("advancedalloy")) { + matAdvAlloy = ingotMaterial("AdvancedAlloy", 0xFFBBA8, 1500); + TinkerRegistry.addMaterialStats(matAdvAlloy, + new HeadMaterialStats(1600, 13.63f, 13.23f, HarvestLevels.COBALT), + new HandleMaterialStats(1.85f, 400), new ExtraMaterialStats(500), + new BowMaterialStats(0.75f, 0.98f, 16f)); + } + if (isRegistrable("ruby")) { + matRuby = materialPart("ruby", "gemRuby", 0xCF0000); + matRuby.addTrait(ModTraits.reflect, MaterialTypes.HEAD); + TinkerRegistry.addMaterialStats(matRuby, new HeadMaterialStats(600, 10.12f, 6.84f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(0.74f, 100), new ExtraMaterialStats(80), + new BowMaterialStats(1.97f, 2.26f, 6f)); + } + if (isRegistrable("sapphire")) { + matSapphire = materialPart("sapphire", "gemSapphire", 0x0B33D6); + matSapphire.addTrait(ModTraits.launch, MaterialTypes.HEAD); + TinkerRegistry.addMaterialStats(matSapphire, + new HeadMaterialStats(600, 10.12f, 6.84f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(0.74f, 100), new ExtraMaterialStats(80), + new BowMaterialStats(1.97f, 2.26f, 6f)); + } + if (isRegistrable("peridot")) { + matPeridot = materialPart("peridot", "gemPeridot", 0x15E835); + matPeridot.addTrait(ModTraits.shock, MaterialTypes.HEAD); + TinkerRegistry.addMaterialStats(matPeridot, + new HeadMaterialStats(600, 10.12f, 6.84f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(0.74f, 100), new ExtraMaterialStats(80), + new BowMaterialStats(1.97f, 2.26f, 6f)); + } + if (isRegistrable("yellowgarnet")) { + matYellowGarnet = materialPart("yellowgarnet", "gemYellowGarnet", 0xF5F51B); + matYellowGarnet.addTrait(TinkerTraits.autosmelt); + matYellowGarnet.addTrait(TinkerTraits.superheat, MaterialTypes.HEAD); + TinkerRegistry.addMaterialStats(matYellowGarnet, + new HeadMaterialStats(800, 11.54f, 7.42f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(0.82f, 120), new ExtraMaterialStats(95), + new BowMaterialStats(1.67f, 2.41f, 7f)); + } + if (isRegistrable("redgarnet")) { + matRedGarnet = materialPart("redgarnet", "gemRedGarnet", 0xED2424); + matRedGarnet.addTrait(ModTraits.healer, MaterialTypes.HEAD); + TinkerRegistry.addMaterialStats(matRedGarnet, + new HeadMaterialStats(800, 11.54f, 7.42f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(0.82f, 120), new ExtraMaterialStats(95), + new BowMaterialStats(1.67f, 2.41f, 7f)); + } + if (isRegistrable("rubber")) { + matRubber = materialPart("rubber", "itemRubber", 0x5C4F4F); + matRubber.addTrait(ModTraits.sling); + TinkerRegistry.addMaterialStats(matRubber, new HeadMaterialStats(14, 0.95f, 0.12f, HarvestLevels.IRON), + new HandleMaterialStats(0.87f, 10), new ExtraMaterialStats(3), + new BowMaterialStats(6.42f, 1.42f, 0.3f), new BowStringMaterialStats(2.65f)); + } + if (Loader.isModLoaded("appliedenergistics2")) { + if (isRegistrable("certus")) { + Item material = Item.REGISTRY.getObject(new ResourceLocation("appliedenergistics2", "material")); + matCertus = new Material("certus", 0xCCE4F0); + matCertus.addItem(new ItemStack(material, 1, 0), 1, Material.VALUE_Ingot); + matCertus.setCraftable(true); + matCertus.setRepresentativeItem(new ItemStack(material, 1, 0)); + matCertus.addTrait(TinkerTraits.shocking); + TinkerRegistry.integrate(matCertus); + TinkerRegistry.addMaterialStats(matCertus, + new HeadMaterialStats(490, 7.45f, 10.45f, HarvestLevels.IRON), + new HandleMaterialStats(0.74f, 30), new ExtraMaterialStats(26), + new BowMaterialStats(2.31f, 1.23f, 12f)); + } + if (isRegistrable("fluix")) { + Item material = Item.REGISTRY.getObject(new ResourceLocation("appliedenergistics2", "material")); + matFluix = new Material("fluix", 0xB04EDE); + matFluix.addItem(new ItemStack(material, 1, 7), 1, Material.VALUE_Ingot); + matFluix.setCraftable(true); + matFluix.setRepresentativeItem(new ItemStack(material, 1, 7)); + TinkerRegistry.integrate(matFluix); + TinkerRegistry.addMaterialStats(matFluix, + new HeadMaterialStats(680, 13.32f, 12.65f, HarvestLevels.DIAMOND), + new HandleMaterialStats(0.45f, 10), new ExtraMaterialStats(40), + new BowMaterialStats(2.87f, 4.53f, 14f)); + } + } + } + + private static Material ingotMaterial(String name, int color, int temp) { + Material material = new Material(name.toLowerCase(), color); + material.addCommonItems(RandomHelper.capatilizeString(name)); + ModFluids.registerFluid(name.toLowerCase(), color, temp); + + MoarMaterialIntegration m = new MoarMaterialIntegration(material, FluidRegistry.getFluid(name.toLowerCase()), + name); + m.setRepresentativeItem("ingot" + name).toolforge(); + m.preInit(force); + TinkerRegistry.integrate(m); + + material.addItemIngot("ingot" + name); + material.setCastable(true); + force = false; + return material; + } + + private static Material ingotMaterial(String name, String oreName, int color, int temp) { + Material material = new Material(name, color); + ModFluids.registerFluid(name, color, temp); + + MoarMaterialIntegration m = new MoarMaterialIntegration(oreName, material, FluidRegistry.getFluid(name), null); + m.setRepresentativeItem(oreName).toolforge(); + m.preInit(force); + TinkerRegistry.integrate(m); + + material.addItemIngot(oreName); + material.setCastable(true); + force = false; + return material; + } + + private static Material materialPart(String name, String oreName, int color) { + Material material = new Material(name, color); + + MoarMaterialIntegration m = new MoarMaterialIntegration(oreName, material, null, null); + m.setRepresentativeItem(oreName); + m.preInit(force); + TinkerRegistry.integrate(m); + + material.addItemIngot(oreName); + material.setCraftable(true); + force = false; + return material; + } + + private static Material ingotMaterialNoDust(String name, int color, int temp) { + Material material = new Material(name.toLowerCase(), color); + material.addCommonItems(RandomHelper.capatilizeString(name)); + ModFluids.registerFluid(name.toLowerCase(), color, temp); + + MaterialIntegrationNoDust m = new MaterialIntegrationNoDust(material, + FluidRegistry.getFluid(name.toLowerCase()), name); + m.toolforge(); + m.preInit(force); + TinkerRegistry.integrate(m); + + material.addItemIngot("ingot" + name); + material.setCastable(true); + force = false; + return material; + } + + private static Material ingotMaterialExist(Fluid fluid, String name, int color) { + Material material = new Material(name.toLowerCase(), color); + material.addCommonItems(RandomHelper.capatilizeString(name)); + + MaterialIntegrationExists m = new MaterialIntegrationExists(material, fluid, name); + m.setRepresentativeItem("ingot" + name).toolforge(); + m.preInit(force); + TinkerRegistry.integrate(m); + + material.addItemIngot("ingot" + name); + force = false; + return material; + } +} \ No newline at end of file From dacd57ee955ae1424fb996a63cf149890ea41155 Mon Sep 17 00:00:00 2001 From: YaibaToKen Date: Fri, 11 May 2018 21:42:46 +0100 Subject: [PATCH 2/6] Fix codacy issues and clean up code --- build.gradle | 2 +- .../MaterialIntegrationNoDust.java | 25 +- .../moartinkers/MoarMaterialIntegration.java | 17 +- .../com/bartz24/moartinkers/RandomHelper.java | 101 +------- .../moartinkers/compat/CompatHelper.java | 13 +- .../moartinkers/proxy/ClientProxy.java | 6 - .../moartinkers/proxy/CommonProxy.java | 6 +- .../moartinkers/registry/ModMaterials.java | 228 +++++++++--------- .../traits/TraitEnderMagnetic.java | 10 +- .../moartinkers/traits/TraitManaEater.java | 4 - .../moartinkers/traits/TraitPsiEater.java | 4 - src/main/resources/mcmod.info | 2 +- 12 files changed, 135 insertions(+), 283 deletions(-) diff --git a/build.gradle b/build.gradle index 995b478..74fc2d1 100644 --- a/build.gradle +++ b/build.gradle @@ -23,7 +23,7 @@ repositories { } } -version = "0.5.2" +version = "0.5.5" group= "com.bartz24.moartinkers" // http://maven.apache.org/guides/mini/guide-naming-conventions.html archivesBaseName = "moartinkers" diff --git a/src/main/java/com/bartz24/moartinkers/MaterialIntegrationNoDust.java b/src/main/java/com/bartz24/moartinkers/MaterialIntegrationNoDust.java index 08b1b6d..afd4cab 100644 --- a/src/main/java/com/bartz24/moartinkers/MaterialIntegrationNoDust.java +++ b/src/main/java/com/bartz24/moartinkers/MaterialIntegrationNoDust.java @@ -7,37 +7,20 @@ import slimeknights.tconstruct.smeltery.TinkerSmeltery; public class MaterialIntegrationNoDust extends MoarMaterialIntegration { - public MaterialIntegrationNoDust(Material material) { - super(material, null); - } - - public MaterialIntegrationNoDust(Material material, Fluid fluid) { - super(null, material, fluid, null); - } public MaterialIntegrationNoDust(Material material, Fluid fluid, String oreSuffix) { super("ingot" + oreSuffix, material, fluid, oreSuffix); } - public MaterialIntegrationNoDust(String oreRequirement, Material material, Fluid fluid, String oreSuffix) { - super(material, fluid, oreSuffix, oreRequirement); - } - - public MaterialIntegrationNoDust(Material material, Fluid fluid, String oreSuffix, String... oreRequirement) { - super(material, fluid, oreSuffix, oreRequirement); - } - public void integrateRecipes() { if (integrated) { return; } - if (!force) { - if (oreRequirement != null && oreRequirement.length > 0 && !Config.forceRegisterAll) { - for (String ore : oreRequirement) { - if (OreDictionary.getOres(ore, false).isEmpty()) { - return; - } + if (!force && oreRequirement != null && oreRequirement.length > 0 && !Config.forceRegisterAll) { + for (String ore : oreRequirement) { + if (OreDictionary.getOres(ore, false).isEmpty()) { + return; } } } diff --git a/src/main/java/com/bartz24/moartinkers/MoarMaterialIntegration.java b/src/main/java/com/bartz24/moartinkers/MoarMaterialIntegration.java index 35b2869..a5dd317 100644 --- a/src/main/java/com/bartz24/moartinkers/MoarMaterialIntegration.java +++ b/src/main/java/com/bartz24/moartinkers/MoarMaterialIntegration.java @@ -1,6 +1,5 @@ package com.bartz24.moartinkers; -import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.oredict.OreDictionary; @@ -13,14 +12,9 @@ public class MoarMaterialIntegration extends MaterialIntegration { protected boolean integrated; - private boolean toolforge; private boolean preInit; protected boolean force; - public MoarMaterialIntegration(Material material) { - this(material, null); - } - public MoarMaterialIntegration(Material material, Fluid fluid) { this(null, material, fluid, null); } @@ -87,12 +81,10 @@ public void integrateRecipes() { return; } - if (!force) { - if (oreRequirement != null && oreRequirement.length > 0 && !Config.forceRegisterAll) { - for (String ore : oreRequirement) { - if (OreDictionary.getOres(ore, false).isEmpty()) { - return; - } + if (!force && oreRequirement != null && oreRequirement.length > 0 && !Config.forceRegisterAll) { + for (String ore : oreRequirement) { + if (OreDictionary.getOres(ore, false).isEmpty()) { + return; } } } @@ -108,7 +100,6 @@ public void integrateRecipes() { public MaterialIntegration toolforge() { super.toolforge(); - toolforge = true; return this; } } diff --git a/src/main/java/com/bartz24/moartinkers/RandomHelper.java b/src/main/java/com/bartz24/moartinkers/RandomHelper.java index fb52221..7978997 100644 --- a/src/main/java/com/bartz24/moartinkers/RandomHelper.java +++ b/src/main/java/com/bartz24/moartinkers/RandomHelper.java @@ -1,22 +1,11 @@ package com.bartz24.moartinkers; -import java.util.List; -import java.util.Set; - -import org.apache.commons.lang3.tuple.Pair; - import com.google.common.collect.ImmutableSet; - -import joptsimple.internal.Strings; -import net.minecraft.block.Block; -import net.minecraft.block.state.IBlockState; -import net.minecraft.inventory.IInventory; -import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.items.IItemHandler; import net.minecraftforge.oredict.OreDictionary; +import org.apache.commons.lang3.tuple.Pair; import slimeknights.mantle.util.RecipeMatch; import slimeknights.tconstruct.common.config.Config; import slimeknights.tconstruct.library.TinkerRegistry; @@ -26,97 +15,15 @@ import slimeknights.tconstruct.library.smeltery.OreCastingRecipe; import slimeknights.tconstruct.smeltery.TinkerSmeltery; +import java.util.List; +import java.util.Set; + public class RandomHelper { public static String capatilizeString(String s) { return s == null ? null : (s.substring(0, 1).toUpperCase() + s.substring(1)); } - public static IBlockState getBlockStateFromStack(ItemStack stack) { - int meta = stack.getMetadata(); - if (!(stack.getItem() instanceof ItemBlock)) - return null; - - Block block = ((ItemBlock) stack.getItem()).getBlock(); - - return block.getStateFromMeta(meta); - } - - public static boolean itemStacksEqualOD(ItemStack stack1, ItemStack stack2) { - if (stack1.isItemEqual(stack2)) - return true; - - if (stack1.isEmpty() && !stack2.isEmpty() && stack1.getMetadata() == OreDictionary.WILDCARD_VALUE - || stack2.getMetadata() == OreDictionary.WILDCARD_VALUE) { - return stack1.getItem() == stack2.getItem(); - } - return false; - } - - public static boolean canStacksMerge(ItemStack stack1, ItemStack stack2) { - if (stack1.isEmpty() || stack2.isEmpty()) { - return false; - } - if (!stack1.isItemEqual(stack2)) { - return false; - } - if (!ItemStack.areItemStackTagsEqual(stack1, stack2)) { - return false; - } - return true; - - } - - public static int mergeStacks(ItemStack mergeSource, ItemStack mergeTarget, boolean doMerge) { - if (!canStacksMerge(mergeSource, mergeTarget)) { - return 0; - } - int mergeCount = Math.min(mergeTarget.getMaxStackSize() - mergeTarget.getCount(), mergeSource.getCount()); - if (mergeCount < 1) { - return 0; - } - if (doMerge) { - mergeTarget.grow(mergeCount); - } - return mergeCount; - } - - public static ItemStack fillInventory(IInventory inv, ItemStack stack) { - if (!inv.isEmpty()) { - for (int i = 0; i < inv.getSizeInventory(); i++) { - if (stack.isEmpty()) - return ItemStack.EMPTY; - ItemStack inside = inv.getStackInSlot(i); - if (inside.isEmpty()) { - inv.setInventorySlotContents(i, stack); - return ItemStack.EMPTY; - } else if (RandomHelper.canStacksMerge(inside, stack)) { - stack.shrink(RandomHelper.mergeStacks(stack, inside, true)); - } - } - } - return stack; - - } - - public static ItemStack fillInventory(IItemHandler inv, ItemStack stack) { - if (inv != null) { - for (int i = 0; i < inv.getSlots(); i++) { - if (stack.isEmpty()) - return ItemStack.EMPTY; - ItemStack inside = inv.getStackInSlot(i); - if (inside.isEmpty()) { - inv.insertItem(i, stack, false); - return ItemStack.EMPTY; - } else if (RandomHelper.canStacksMerge(inside, stack)) { - stack.shrink(RandomHelper.mergeStacks(stack, inside, true)); - } - } - } - return stack; - - } - public static void noDustRegisterOredictMeltingCasting(Fluid fluid, String ore) { ImmutableSet.Builder, Integer>> builder = ImmutableSet.builder(); Pair, Integer> nuggetOre = Pair.of(OreDictionary.getOres("nugget" + ore), diff --git a/src/main/java/com/bartz24/moartinkers/compat/CompatHelper.java b/src/main/java/com/bartz24/moartinkers/compat/CompatHelper.java index db2cd51..17e990d 100644 --- a/src/main/java/com/bartz24/moartinkers/compat/CompatHelper.java +++ b/src/main/java/com/bartz24/moartinkers/compat/CompatHelper.java @@ -14,14 +14,11 @@ public class CompatHelper { public static List findItemsWithEnergy(NonNullList inventory) { List stacks = new ArrayList<>(); for (ItemStack stack : inventory) { - if (!stack.isEmpty()) { - if ((stack.hasCapability(CapabilityEnergy.ENERGY, null) - && stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() > 0) - || (stack.getItem() instanceof IEnergyContainerItem - && ((IEnergyContainerItem) stack.getItem()).getEnergyStored(stack) > 0)) { - stacks.add(stack); - continue; - } + if (!stack.isEmpty() && ((stack.hasCapability(CapabilityEnergy.ENERGY, null) + && stack.getCapability(CapabilityEnergy.ENERGY, null).getEnergyStored() > 0) + || (stack.getItem() instanceof IEnergyContainerItem + && ((IEnergyContainerItem) stack.getItem()).getEnergyStored(stack) > 0))) { + stacks.add(stack); } } return stacks; diff --git a/src/main/java/com/bartz24/moartinkers/proxy/ClientProxy.java b/src/main/java/com/bartz24/moartinkers/proxy/ClientProxy.java index c787db0..40fc11d 100644 --- a/src/main/java/com/bartz24/moartinkers/proxy/ClientProxy.java +++ b/src/main/java/com/bartz24/moartinkers/proxy/ClientProxy.java @@ -1,10 +1,8 @@ package com.bartz24.moartinkers.proxy; import com.bartz24.moartinkers.References; -import com.bartz24.moartinkers.registry.ModRenderers; import net.minecraftforge.client.model.obj.OBJLoader; -import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; @@ -23,8 +21,4 @@ public void init(FMLInitializationEvent e) { // ModRenderers.init(); } - public void registerFluidModel(Fluid fluid) { - if (fluid.getBlock() != null) - ModRenderers.mapFluidState(fluid); - } } diff --git a/src/main/java/com/bartz24/moartinkers/proxy/CommonProxy.java b/src/main/java/com/bartz24/moartinkers/proxy/CommonProxy.java index 13b1ed1..d517804 100644 --- a/src/main/java/com/bartz24/moartinkers/proxy/CommonProxy.java +++ b/src/main/java/com/bartz24/moartinkers/proxy/CommonProxy.java @@ -38,9 +38,5 @@ public void postInit(FMLPostInitializationEvent e) { //ModCrafting.init(); } - - public void registerFluidModel(Fluid fluid) - { - - } + } diff --git a/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java b/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java index 2929145..1a1e3f8 100644 --- a/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java +++ b/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java @@ -25,84 +25,84 @@ import slimeknights.tconstruct.tools.TinkerTraits; public class ModMaterials { - public static Material matEnderium; - public static Material matPlatinum; - public static Material matIridium; - public static Material matMithril; - public static Material matSignalum; - public static Material matLumium; - public static Material matConstantan; - public static Material matInvar; - public static Material matNickel; - public static Material matTin; - public static Material matAluminum; - public static Material matBrass; - public static Material matZinc; - - public static Material matRefGlowstone; - public static Material matRefObsidian; - public static Material matOsmium; - - public static Material matManasteel; - public static Material matTerrasteel; - public static Material matElementium; - public static Material matGaia; - - public static Material matElecSteel; - public static Material matEnerAlloy; - public static Material matVibrAlloy; - public static Material matRedAlloy; - public static Material matCondIron; - public static Material matPulsIron; - public static Material matDarkSteel; - public static Material matSoularium; - - public static Material matYellorium; - public static Material matCyanite; - public static Material matBlutonium; - public static Material matLudicrite; - - public static Material matQuartzIron; - - public static Material matDraconium; - public static Material matWyvDraconium; - public static Material matAwaDraconium; - public static Material matChaDraconium; - - public static Material matEnchMetal; - public static Material matMagWood; - - public static Material matPsimetal; - public static Material matIvoryPsimetal; - public static Material matEbonyPsimetal; - public static Material matPsigem; - - public static Material matDarkMatter; - public static Material matRedMatter; - - public static Material matFluxElec; - - public static Material matHardStone; - public static Material matAlabaster; - public static Material matBasalt; - public static Material matLonsdaleite; - public static Material matMica; - - public static Material matTitanium; - public static Material matTungsten; - public static Material matTungstensteel; - public static Material matChrome; - public static Material matRefinedIron; - public static Material matAdvAlloy; - public static Material matRuby; - public static Material matSapphire; - public static Material matPeridot; - public static Material matRedGarnet; - public static Material matYellowGarnet; - public static Material matRubber; - - public static Material matCertus; - public static Material matFluix; + private static Material matEnderium; + private static Material matPlatinum; + private static Material matIridium; + private static Material matMithril; + private static Material matSignalum; + private static Material matLumium; + private static Material matConstantan; + private static Material matInvar; + private static Material matNickel; + private static Material matTin; + private static Material matAluminum; + private static Material matBrass; + private static Material matZinc; + + private static Material matRefGlowstone; + private static Material matRefObsidian; + private static Material matOsmium; + + private static Material matManasteel; + private static Material matTerrasteel; + private static Material matElementium; + private static Material matGaia; + + private static Material matElecSteel; + private static Material matEnerAlloy; + private static Material matVibrAlloy; + private static Material matRedAlloy; + private static Material matCondIron; + private static Material matPulsIron; + private static Material matDarkSteel; + private static Material matSoularium; + + private static Material matYellorium; + private static Material matCyanite; + private static Material matBlutonium; + private static Material matLudicrite; + + private static Material matQuartzIron; + + private static Material matDraconium; + private static Material matWyvDraconium; + private static Material matAwaDraconium; + private static Material matChaDraconium; + + private static Material matEnchMetal; + private static Material matMagWood; + + private static Material matPsimetal; + private static Material matIvoryPsimetal; + private static Material matEbonyPsimetal; + private static Material matPsigem; + + private static Material matDarkMatter; + private static Material matRedMatter; + + private static Material matFluxElec; + + private static Material matHardStone; + private static Material matAlabaster; + private static Material matBasalt; + private static Material matLonsdaleite; + private static Material matMica; + + private static Material matTitanium; + private static Material matTungsten; + private static Material matTungstensteel; + private static Material matChrome; + private static Material matRefinedIron; + private static Material matAdvAlloy; + private static Material matRuby; + private static Material matSapphire; + private static Material matPeridot; + private static Material matRedGarnet; + private static Material matYellowGarnet; + private static Material matRubber; + + private static Material matCertus; + private static Material matFluix; private static boolean force = false; @@ -167,15 +167,13 @@ public static void preInit() { new BowMaterialStats(2.89f, 2.36f, 9f)); } - if (isRegistrable("constantan")) { - if (!Loader.isModLoaded("immersiveengineering")) { - matConstantan = ingotMaterial("Constantan", 0xD9B34A, 500); - matConstantan.addTrait(ModTraits.constant); - TinkerRegistry.addMaterialStats(matConstantan, - new HeadMaterialStats(300, 4.45f, 5.03f, HarvestLevels.DIAMOND), - new HandleMaterialStats(0.34f, 135), new ExtraMaterialStats(13), - new BowMaterialStats(2.31f, 1.43f, 4f)); - } + if (isRegistrable("constantan") && !Loader.isModLoaded("immersiveengineering")) { + matConstantan = ingotMaterial("Constantan", 0xD9B34A, 500); + matConstantan.addTrait(ModTraits.constant); + TinkerRegistry.addMaterialStats(matConstantan, + new HeadMaterialStats(300, 4.45f, 5.03f, HarvestLevels.DIAMOND), + new HandleMaterialStats(0.34f, 135), new ExtraMaterialStats(13), + new BowMaterialStats(2.31f, 1.43f, 4f)); } if (isRegistrable("invar")) { @@ -483,22 +481,20 @@ public static void preInit() { } } - if (isRegistrable("magicalwood")) { - if (Loader.isModLoaded("extrautils2")) { - Item magWood = Item.REGISTRY.getObject(new ResourceLocation("extrautils2", "decorativesolidwood")); - matMagWood = new Material("magicalwood", 0xB7C752); - matMagWood.addItem(new ItemStack(magWood, 1, 1), 1, Material.VALUE_Ingot); - matMagWood.setCraftable(true); - matMagWood.setRepresentativeItem(new ItemStack(magWood, 1, 1)); - matMagWood.addTrait(ModTraits.moarwritable); - matMagWood.addTrait(ModTraits.moarwritable2, MaterialTypes.HEAD); - matMagWood.addTrait(TinkerTraits.ecological); - TinkerRegistry.integrate(matMagWood); - TinkerRegistry.addMaterialStats(matMagWood, - new HeadMaterialStats(120, 1.23f, 1.65f, HarvestLevels.STONE), - new HandleMaterialStats(0.78f, 10), new ExtraMaterialStats(20), - new BowMaterialStats(0.96f, 0.87f, 0.5f)); - } + if (isRegistrable("magicalwood") && Loader.isModLoaded("extrautils2")) { + Item magWood = Item.REGISTRY.getObject(new ResourceLocation("extrautils2", "decorativesolidwood")); + matMagWood = new Material("magicalwood", 0xB7C752); + matMagWood.addItem(new ItemStack(magWood, 1, 1), 1, Material.VALUE_Ingot); + matMagWood.setCraftable(true); + matMagWood.setRepresentativeItem(new ItemStack(magWood, 1, 1)); + matMagWood.addTrait(ModTraits.moarwritable); + matMagWood.addTrait(ModTraits.moarwritable2, MaterialTypes.HEAD); + matMagWood.addTrait(TinkerTraits.ecological); + TinkerRegistry.integrate(matMagWood); + TinkerRegistry.addMaterialStats(matMagWood, + new HeadMaterialStats(120, 1.23f, 1.65f, HarvestLevels.STONE), + new HandleMaterialStats(0.78f, 10), new ExtraMaterialStats(20), + new BowMaterialStats(0.96f, 0.87f, 0.5f)); } if (isRegistrable("enchantedmetal")) { @@ -612,20 +608,18 @@ public static void preInit() { new HandleMaterialStats(3.41f, 100), new ExtraMaterialStats(200), new BowMaterialStats(0.12f, 0.04f, 0.2f)); } - if (isRegistrable("mica")) { - if (Loader.isModLoaded("environmentaltech")) { - Item mica = Item.REGISTRY.getObject(new ResourceLocation("environmentaltech", "mica")); - - matMica = new Material("mica", 0xDEDEDE); - matMica.addItem(mica, 1, Material.VALUE_Ingot); - matMica.setCraftable(true); - matMica.setRepresentativeItem(mica); - TinkerRegistry.integrate(matMica); - TinkerRegistry.addMaterialStats(matMica, - new HeadMaterialStats(703, 5.62f, 6.32f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(2.13f, 100), new ExtraMaterialStats(250), - new BowMaterialStats(3.04f, 4.06f, 5f)); - } + if (isRegistrable("mica") && Loader.isModLoaded("environmentaltech")) { + Item mica = Item.REGISTRY.getObject(new ResourceLocation("environmentaltech", "mica")); + + matMica = new Material("mica", 0xDEDEDE); + matMica.addItem(mica, 1, Material.VALUE_Ingot); + matMica.setCraftable(true); + matMica.setRepresentativeItem(mica); + TinkerRegistry.integrate(matMica); + TinkerRegistry.addMaterialStats(matMica, + new HeadMaterialStats(703, 5.62f, 6.32f, HarvestLevels.OBSIDIAN), + new HandleMaterialStats(2.13f, 100), new ExtraMaterialStats(250), + new BowMaterialStats(3.04f, 4.06f, 5f)); } if (isRegistrable("refinediron")) { matRefinedIron = ingotMaterial("RefinedIron", 0xE0E0E0, 780); diff --git a/src/main/java/com/bartz24/moartinkers/traits/TraitEnderMagnetic.java b/src/main/java/com/bartz24/moartinkers/traits/TraitEnderMagnetic.java index 96f7be1..129f7db 100644 --- a/src/main/java/com/bartz24/moartinkers/traits/TraitEnderMagnetic.java +++ b/src/main/java/com/bartz24/moartinkers/traits/TraitEnderMagnetic.java @@ -1,9 +1,5 @@ package com.bartz24.moartinkers.traits; -import java.util.List; - -import javax.annotation.Nonnull; - import net.minecraft.block.state.IBlockState; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.item.EntityItem; @@ -17,9 +13,12 @@ import slimeknights.tconstruct.library.traits.AbstractTrait; import slimeknights.tconstruct.library.utils.TinkerUtil; +import javax.annotation.Nonnull; +import java.util.List; + public class TraitEnderMagnetic extends AbstractTrait { - public static TinkerPotion enderMagnetic = new EnderMagneticPotion(); + private static TinkerPotion enderMagnetic = new EnderMagneticPotion(); public TraitEnderMagnetic() { super("endermagnetic", 0x3E8269); @@ -28,7 +27,6 @@ public TraitEnderMagnetic() { @Override public void afterBlockBreak(ItemStack tool, World world, IBlockState state, BlockPos pos, EntityLivingBase player, boolean wasEffective) { - ModifierNBT data = new ModifierNBT(TinkerUtil.getModifierTag(tool, identifier)); enderMagnetic.apply(player, 30, 1); } diff --git a/src/main/java/com/bartz24/moartinkers/traits/TraitManaEater.java b/src/main/java/com/bartz24/moartinkers/traits/TraitManaEater.java index 7beab3e..464cddd 100644 --- a/src/main/java/com/bartz24/moartinkers/traits/TraitManaEater.java +++ b/src/main/java/com/bartz24/moartinkers/traits/TraitManaEater.java @@ -1,10 +1,6 @@ package com.bartz24.moartinkers.traits; -import java.util.ArrayList; -import java.util.List; - import com.bartz24.moartinkers.compat.CompatHelper; - import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; diff --git a/src/main/java/com/bartz24/moartinkers/traits/TraitPsiEater.java b/src/main/java/com/bartz24/moartinkers/traits/TraitPsiEater.java index a6516ce..2507554 100644 --- a/src/main/java/com/bartz24/moartinkers/traits/TraitPsiEater.java +++ b/src/main/java/com/bartz24/moartinkers/traits/TraitPsiEater.java @@ -1,10 +1,6 @@ package com.bartz24.moartinkers.traits; -import java.util.ArrayList; -import java.util.List; - import com.bartz24.moartinkers.compat.CompatHelper; - import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index 3507f6c..8e2f0c1 100644 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -3,7 +3,7 @@ "modid": "moartinkers", "name": "Moar Tinkers", "description": "Adds moar tinker materials and traits!", - "version": "0.5.2", + "version": "0.5.5", "mcversion": "${mcversion}", "url": "", "updateUrl": "", From b0833c7889b619eaa083214a1e4b45354abba500 Mon Sep 17 00:00:00 2001 From: YaibaToKen Date: Fri, 11 May 2018 21:46:53 +0100 Subject: [PATCH 3/6] Fix codacy issues and clean up code --- .../moartinkers/MaterialIntegrationExists.java | 15 --------------- .../moartinkers/MaterialIntegrationNoDust.java | 6 +----- .../moartinkers/MoarMaterialIntegration.java | 6 +----- 3 files changed, 2 insertions(+), 25 deletions(-) diff --git a/src/main/java/com/bartz24/moartinkers/MaterialIntegrationExists.java b/src/main/java/com/bartz24/moartinkers/MaterialIntegrationExists.java index 10ef1f9..77b33b1 100644 --- a/src/main/java/com/bartz24/moartinkers/MaterialIntegrationExists.java +++ b/src/main/java/com/bartz24/moartinkers/MaterialIntegrationExists.java @@ -6,26 +6,11 @@ import slimeknights.tconstruct.library.materials.Material; public class MaterialIntegrationExists extends MoarMaterialIntegration { - public MaterialIntegrationExists(Material material) { - super(material, null); - } - - public MaterialIntegrationExists(Material material, Fluid fluid) { - super(null, material, fluid, null); - } public MaterialIntegrationExists(Material material, Fluid fluid, String oreSuffix) { super("ingot" + oreSuffix, material, fluid, oreSuffix); } - public MaterialIntegrationExists(String oreRequirement, Material material, Fluid fluid, String oreSuffix) { - super(material, fluid, oreSuffix, oreRequirement); - } - - public MaterialIntegrationExists(Material material, Fluid fluid, String oreSuffix, String... oreRequirement) { - super(material, fluid, oreSuffix, oreRequirement); - } - public void registerFluidBlock(IForgeRegistry registry) { } } diff --git a/src/main/java/com/bartz24/moartinkers/MaterialIntegrationNoDust.java b/src/main/java/com/bartz24/moartinkers/MaterialIntegrationNoDust.java index afd4cab..8034a7b 100644 --- a/src/main/java/com/bartz24/moartinkers/MaterialIntegrationNoDust.java +++ b/src/main/java/com/bartz24/moartinkers/MaterialIntegrationNoDust.java @@ -13,11 +13,7 @@ public MaterialIntegrationNoDust(Material material, Fluid fluid, String oreSuffi } public void integrateRecipes() { - if (integrated) { - return; - } - - if (!force && oreRequirement != null && oreRequirement.length > 0 && !Config.forceRegisterAll) { + if (integrated || !force && oreRequirement != null && oreRequirement.length > 0 && !Config.forceRegisterAll) { for (String ore : oreRequirement) { if (OreDictionary.getOres(ore, false).isEmpty()) { return; diff --git a/src/main/java/com/bartz24/moartinkers/MoarMaterialIntegration.java b/src/main/java/com/bartz24/moartinkers/MoarMaterialIntegration.java index a5dd317..bf3016a 100644 --- a/src/main/java/com/bartz24/moartinkers/MoarMaterialIntegration.java +++ b/src/main/java/com/bartz24/moartinkers/MoarMaterialIntegration.java @@ -15,10 +15,6 @@ public class MoarMaterialIntegration extends MaterialIntegration { private boolean preInit; protected boolean force; - public MoarMaterialIntegration(Material material, Fluid fluid) { - this(null, material, fluid, null); - } - public MoarMaterialIntegration(Material material, Fluid fluid, String oreSuffix) { this("ingot" + oreSuffix, material, fluid, oreSuffix); } @@ -27,7 +23,7 @@ public MoarMaterialIntegration(String oreRequirement, Material material, Fluid f this(material, fluid, oreSuffix, oreRequirement); } - public MoarMaterialIntegration(Material material, Fluid fluid, String oreSuffix, String... oreRequirement) { + private MoarMaterialIntegration(Material material, Fluid fluid, String oreSuffix, String... oreRequirement) { super(material, fluid, RandomHelper.capatilizeString(oreSuffix), oreRequirement); this.integrated = false; From 5ca33265215b6999ceabc8f9e3422d625b78a051 Mon Sep 17 00:00:00 2001 From: YaibaToKen Date: Mon, 14 May 2018 16:34:27 +0100 Subject: [PATCH 4/6] Redo ModMaterials class from scratch Create DataStructure to handle the information --- .../com/bartz24/moartinkers/RandomHelper.java | 8 +- .../registry/MaterialRegistration.java | 135 ++ .../moartinkers/registry/ModMaterials.java | 1398 ++++++++--------- 3 files changed, 783 insertions(+), 758 deletions(-) create mode 100644 src/main/java/com/bartz24/moartinkers/registry/MaterialRegistration.java diff --git a/src/main/java/com/bartz24/moartinkers/RandomHelper.java b/src/main/java/com/bartz24/moartinkers/RandomHelper.java index 7978997..30ad9cc 100644 --- a/src/main/java/com/bartz24/moartinkers/RandomHelper.java +++ b/src/main/java/com/bartz24/moartinkers/RandomHelper.java @@ -18,13 +18,9 @@ import java.util.List; import java.util.Set; -public class RandomHelper { +class RandomHelper { - public static String capatilizeString(String s) { - return s == null ? null : (s.substring(0, 1).toUpperCase() + s.substring(1)); - } - - public static void noDustRegisterOredictMeltingCasting(Fluid fluid, String ore) { + static void noDustRegisterOredictMeltingCasting(Fluid fluid, String ore) { ImmutableSet.Builder, Integer>> builder = ImmutableSet.builder(); Pair, Integer> nuggetOre = Pair.of(OreDictionary.getOres("nugget" + ore), Material.VALUE_Nugget); diff --git a/src/main/java/com/bartz24/moartinkers/registry/MaterialRegistration.java b/src/main/java/com/bartz24/moartinkers/registry/MaterialRegistration.java new file mode 100644 index 0000000..96dbe73 --- /dev/null +++ b/src/main/java/com/bartz24/moartinkers/registry/MaterialRegistration.java @@ -0,0 +1,135 @@ +package com.bartz24.moartinkers.registry; + +import com.bartz24.moartinkers.MoarMaterialIntegration; +import com.bartz24.moartinkers.config.ConfigOptions; +import net.minecraft.util.Tuple; +import net.minecraftforge.fluids.FluidRegistry; +import net.minecraftforge.fml.common.Loader; +import org.apache.commons.lang3.StringUtils; +import slimeknights.tconstruct.library.TinkerRegistry; +import slimeknights.tconstruct.library.materials.*; +import slimeknights.tconstruct.library.traits.ITrait; + +class MaterialRegistration { + private static boolean force = ModMaterials.force; + + private String identifier, ore, mod; + private Integer color, temp; + private Tuple[] traits; + private HeadMaterialStats head; + private HandleMaterialStats handle; + private ExtraMaterialStats extra; + private BowMaterialStats bow; + + MaterialRegistration() { + } + + private boolean isRegistrable () { + return ConfigOptions.materialIsAllowed(identifier) && TinkerRegistry.getMaterial(identifier).equals(Material.UNKNOWN); + } + + void register() { + if (isRegistrable() && (mod == null || Loader.isModLoaded(mod))) { + Material material = ingotMaterial(StringUtils.capitalize(identifier), color, temp); + for (Tuple trait : traits) { + if (trait.getSecond() == null) { + material.addTrait(trait.getFirst()); + } + else { + material.addTrait(trait.getFirst(), trait.getSecond()); + } + } + TinkerRegistry.addMaterialStats(material, head, handle, extra, bow); + } + } + + static class MaterialRegistrationBuilder extends MaterialRegistration { + private String identifier, ore = null, mod = null; + private Integer color, temp; + private Tuple[] traits = null; + private HeadMaterialStats head; + private HandleMaterialStats handle; + private ExtraMaterialStats extra; + private BowMaterialStats bow; + + public MaterialRegistrationBuilder setOre(String ore) { + this.ore = ore; + return this; + } + + public MaterialRegistrationBuilder setMod(String mod) { + this.mod = mod; + return this; + } + + MaterialRegistrationBuilder setIdentifier(String identifier) { + this.identifier = identifier; + return this; + } + + MaterialRegistrationBuilder setColor(Integer color) { + this.color = color; + return this; + } + + MaterialRegistrationBuilder setTemp(Integer temp) { + this.temp = temp; + return this; + } + + public MaterialRegistrationBuilder setTraits(Tuple[] traits) { + this.traits = traits; + return this; + } + + MaterialRegistrationBuilder setHead(int durability, float miningSpeed, float attack, int harvestLevel) { + this.head = new HeadMaterialStats(durability, miningSpeed, attack, harvestLevel); + return this; + } + + MaterialRegistrationBuilder setHandle(float modifier, int durability) { + this.handle = new HandleMaterialStats(modifier, durability); + return this; + } + + MaterialRegistrationBuilder setExtra(int durability) { + this.extra = new ExtraMaterialStats(durability); + return this; + } + + MaterialRegistrationBuilder setBow(float drawSpeed, float range, float bonusDamage) { + this.bow = new BowMaterialStats(drawSpeed, range, bonusDamage); + return this; + } + + MaterialRegistration build() { + return this; + } + } + + private static Material ingotMaterial(String name, int color, int temp) { + return ingotMaterial(name, null, color, temp); + } + + private static Material ingotMaterial(String name, String oreName, int color, int temp) { + Material material = new Material(name, color); + ModFluids.registerFluid(name, color, temp); + + MoarMaterialIntegration m; + if (oreName == null) { + m = new MoarMaterialIntegration(material, FluidRegistry.getFluid(name.toLowerCase()), name); + m.setRepresentativeItem("ingot" + name).toolforge(); + material.addItemIngot("ingot" + name); + } + else { + m = new MoarMaterialIntegration(oreName, material, FluidRegistry.getFluid(name), null); + m.setRepresentativeItem(oreName).toolforge(); + material.addItemIngot(oreName); + } + m.preInit(force); + TinkerRegistry.integrate(m); + material.setCastable(true); + force = false; + return material; + } +} diff --git a/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java b/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java index 1a1e3f8..9b033fc 100644 --- a/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java +++ b/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java @@ -3,772 +3,666 @@ import com.bartz24.moartinkers.MaterialIntegrationExists; import com.bartz24.moartinkers.MaterialIntegrationNoDust; import com.bartz24.moartinkers.MoarMaterialIntegration; -import com.bartz24.moartinkers.RandomHelper; -import com.bartz24.moartinkers.config.ConfigOptions; - -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; +import net.minecraft.util.Tuple; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; -import net.minecraftforge.fml.common.Loader; import slimeknights.tconstruct.library.TinkerRegistry; -import slimeknights.tconstruct.library.materials.BowMaterialStats; -import slimeknights.tconstruct.library.materials.BowStringMaterialStats; -import slimeknights.tconstruct.library.materials.ExtraMaterialStats; -import slimeknights.tconstruct.library.materials.HandleMaterialStats; -import slimeknights.tconstruct.library.materials.HeadMaterialStats; import slimeknights.tconstruct.library.materials.Material; import slimeknights.tconstruct.library.materials.MaterialTypes; +import slimeknights.tconstruct.library.traits.ITrait; import slimeknights.tconstruct.library.utils.HarvestLevels; -import slimeknights.tconstruct.shared.TinkerFluids; import slimeknights.tconstruct.tools.TinkerTraits; public class ModMaterials { - private static Material matEnderium; - private static Material matPlatinum; - private static Material matIridium; - private static Material matMithril; - private static Material matSignalum; - private static Material matLumium; - private static Material matConstantan; - private static Material matInvar; - private static Material matNickel; - private static Material matTin; - private static Material matAluminum; - private static Material matBrass; - private static Material matZinc; - - private static Material matRefGlowstone; - private static Material matRefObsidian; - private static Material matOsmium; - - private static Material matManasteel; - private static Material matTerrasteel; - private static Material matElementium; - private static Material matGaia; - - private static Material matElecSteel; - private static Material matEnerAlloy; - private static Material matVibrAlloy; - private static Material matRedAlloy; - private static Material matCondIron; - private static Material matPulsIron; - private static Material matDarkSteel; - private static Material matSoularium; - - private static Material matYellorium; - private static Material matCyanite; - private static Material matBlutonium; - private static Material matLudicrite; - - private static Material matQuartzIron; - - private static Material matDraconium; - private static Material matWyvDraconium; - private static Material matAwaDraconium; - private static Material matChaDraconium; - - private static Material matEnchMetal; - private static Material matMagWood; - - private static Material matPsimetal; - private static Material matIvoryPsimetal; - private static Material matEbonyPsimetal; - private static Material matPsigem; - - private static Material matDarkMatter; - private static Material matRedMatter; - - private static Material matFluxElec; - - private static Material matHardStone; - private static Material matAlabaster; - private static Material matBasalt; - private static Material matLonsdaleite; - private static Material matMica; - - private static Material matTitanium; - private static Material matTungsten; - private static Material matTungstensteel; - private static Material matChrome; - private static Material matRefinedIron; - private static Material matAdvAlloy; - private static Material matRuby; - private static Material matSapphire; - private static Material matPeridot; - private static Material matRedGarnet; - private static Material matYellowGarnet; - private static Material matRubber; - - private static Material matCertus; - private static Material matFluix; - - private static boolean force = false; - - private static boolean isRegistrable (String identifier) { - return ConfigOptions.materialIsAllowed(identifier) && TinkerRegistry.getMaterial(identifier).equals(Material.UNKNOWN); - } + static boolean force = false; + + private static MaterialRegistration[] materials = new MaterialRegistration[]{ + new MaterialRegistration.MaterialRegistrationBuilder() + .setIdentifier("enderium") + .setColor(0x006E61) + .setTemp(1200) + .setTraits( + new Tuple[]{ + new Tuple(TinkerTraits.enderference, null), + new Tuple(ModTraits.enderMagnetic, MaterialTypes.HEAD) + }) + .setHead(1020, 8.31f, 10.19f, HarvestLevels.COBALT) + .setHandle(0.42f, 600) + .setExtra(60) + .setBow(1.22f, 1.1f, 5f) + .build(), + new MaterialRegistration.MaterialRegistrationBuilder() + .setIdentifier("platinum") + .setColor(0x39CAFA) + .setTemp(900) + .setTraits( + new Tuple[]{ + new Tuple(TinkerTraits.dense, null) + }) + .setHead(1410, 9.47f, 7.39f, HarvestLevels.OBSIDIAN) + .setHandle(0.78f, 600) + .setExtra(120) + .setBow(0.67f, 0.6f, 3f) + .build(), + new MaterialRegistration.MaterialRegistrationBuilder() + .setIdentifier("iridium") + .setColor(0xEBEBEB) + .setTemp(1500) + .setTraits( + new Tuple[]{ + new Tuple(ModTraits.weee, MaterialTypes.HEAD) + }) + .setHead(1910, 11.02f, 9.95f, HarvestLevels.OBSIDIAN) + .setHandle(0.83f, 500) + .setExtra(200) + .setBow(0.23f, 1.44f, 5f) + .build() + }; public static void preInit() { FluidRegistry.enableUniversalBucket(); - - if (isRegistrable("enderium")) { - matEnderium = ingotMaterial("Enderium", 0x006E61, 1200); - matEnderium.addTrait(TinkerTraits.enderference); - matEnderium.addTrait(ModTraits.enderMagnetic, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matEnderium, - new HeadMaterialStats(1020, 8.31f, 10.19f, HarvestLevels.COBALT), - new HandleMaterialStats(0.42f, 400), new ExtraMaterialStats(60), - new BowMaterialStats(1.22f, 1.1f, 5f)); - } - - if (isRegistrable("platinum")) { - matPlatinum = ingotMaterial("Platinum", 0x39CAFA, 900); - matPlatinum.addTrait(TinkerTraits.dense); - TinkerRegistry.addMaterialStats(matPlatinum, - new HeadMaterialStats(1410, 9.47f, 7.39f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.78f, 600), new ExtraMaterialStats(120), - new BowMaterialStats(0.67f, 0.6f, 3f)); - } - - if (isRegistrable("iridium")) { - matIridium = ingotMaterial("Iridium", 0xEBEBEB, 1500); - matIridium.addTrait(ModTraits.weee, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matIridium, - new HeadMaterialStats(1910, 11.02f, 9.95f, HarvestLevels.COBALT), - new HandleMaterialStats(0.83f, 500), new ExtraMaterialStats(200), - new BowMaterialStats(0.23f, 1.44f, 5f)); - } - - if (isRegistrable("mithril")) { - matMithril = ingotMaterial("Mithril", 0x2095B0, 1350); - matMithril.addTrait(ModTraits.sos); - TinkerRegistry.addMaterialStats(matMithril, - new HeadMaterialStats(1160, 13.02f, 7.03f, HarvestLevels.COBALT), - new HandleMaterialStats(0.49f, 200), new ExtraMaterialStats(30), - new BowMaterialStats(1.87f, 1.12f, 3f)); - } - - if (isRegistrable("signalum")) { - matSignalum = ingotMaterial("Signalum", 0xE65B10, 950); - matSignalum.addTrait(TinkerTraits.unnatural); - TinkerRegistry.addMaterialStats(matSignalum, - new HeadMaterialStats(740, 12.42f, 6.37f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.52f, 100), new ExtraMaterialStats(40), - new BowMaterialStats(3.24f, 0.78f, 3f)); - } - - if (isRegistrable("lumium")) { - matLumium = ingotMaterial("Lumium", 0xFFFCB0, 1000); - matLumium.addTrait(ModTraits.lightboost); - TinkerRegistry.addMaterialStats(matLumium, new HeadMaterialStats(600, 8.60f, 8.34f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.44f, 90), new ExtraMaterialStats(20), - new BowMaterialStats(2.89f, 2.36f, 9f)); - } - - if (isRegistrable("constantan") && !Loader.isModLoaded("immersiveengineering")) { - matConstantan = ingotMaterial("Constantan", 0xD9B34A, 500); - matConstantan.addTrait(ModTraits.constant); - TinkerRegistry.addMaterialStats(matConstantan, - new HeadMaterialStats(300, 4.45f, 5.03f, HarvestLevels.DIAMOND), - new HandleMaterialStats(0.34f, 135), new ExtraMaterialStats(13), - new BowMaterialStats(2.31f, 1.43f, 4f)); - } - - if (isRegistrable("invar")) { - matInvar = ingotMaterial("Invar", 0xC4C4C4, 1040); - matInvar.addTrait(TinkerTraits.magnetic); - matInvar.addTrait(TinkerTraits.magnetic2, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matInvar, new HeadMaterialStats(700, 7.22f, 6.22f, HarvestLevels.DIAMOND), - new HandleMaterialStats(0.64f, 220), new ExtraMaterialStats(32), - new BowMaterialStats(0.92f, 0.76f, 7f)); - } - - if (isRegistrable("nickel")) { - matNickel = ingotMaterialExist(TinkerFluids.nickel, "Nickel", TinkerFluids.nickel.color); - matNickel.addTrait(ModTraits.exploit, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matNickel, new HeadMaterialStats(20, 3.63f, 5.10f, HarvestLevels.IRON), - new HandleMaterialStats(0.14f, 30), new ExtraMaterialStats(7), - new BowMaterialStats(0.24f, 1.34f, 3f)); - } - - if (isRegistrable("tin")) { - matTin = ingotMaterialExist(TinkerFluids.tin, "Tin", TinkerFluids.tin.color); - matTin.addTrait(ModTraits.sos); - TinkerRegistry.addMaterialStats(matTin, new HeadMaterialStats(300, 1.85f, 2.27f, HarvestLevels.IRON), - new HandleMaterialStats(1.34f, 120), new ExtraMaterialStats(40), - new BowMaterialStats(2.59f, 0.87f, 1f)); - } - - if (isRegistrable("brass")) { - matBrass = ingotMaterialExist(TinkerFluids.brass, "Brass", TinkerFluids.brass.color); - TinkerRegistry.addMaterialStats(matBrass, new HeadMaterialStats(260, 2.98f, 1.76f, HarvestLevels.IRON), - new HandleMaterialStats(1.11f, 10), new ExtraMaterialStats(4), - new BowMaterialStats(1.32f, 1.63f, 3f)); - } - - if (isRegistrable("aluminum")) { - matAluminum = ingotMaterialExist(TinkerFluids.aluminum, "Aluminum", TinkerFluids.aluminum.color); - TinkerRegistry.addMaterialStats(matAluminum, new HeadMaterialStats(80, 1.23f, 0.85f, HarvestLevels.IRON), - new HandleMaterialStats(0.21f, -20), new ExtraMaterialStats(-10), - new BowMaterialStats(0.21f, 0.34f, 0.6f)); - } - - if (isRegistrable("zinc")) { - matZinc = ingotMaterialExist(TinkerFluids.zinc, "Zinc", TinkerFluids.zinc.color); - matZinc.addTrait(TinkerTraits.crumbling); - TinkerRegistry.addMaterialStats(matZinc, new HeadMaterialStats(40, 1.76f, 0.53f, HarvestLevels.IRON), - new HandleMaterialStats(0.19f, -25), new ExtraMaterialStats(-12), - new BowMaterialStats(0.32f, 0.43f, 0.4f)); - } - - if (isRegistrable("refinedobsidian")) { - if (Loader.isModLoaded("Mekanism")) - force = true; - matRefObsidian = ingotMaterialNoDust("RefinedObsidian", 0x732668, 1600); - matRefObsidian.addTrait(TinkerTraits.duritos); - matRefObsidian.addTrait(ModTraits.darkness); - TinkerRegistry.addMaterialStats(matRefObsidian, - new HeadMaterialStats(1400, 5.24f, 11.04f, HarvestLevels.COBALT), - new HandleMaterialStats(2.19f, 400), new ExtraMaterialStats(340), - new BowMaterialStats(0.11f, 0.43f, 12f)); - } - - if (isRegistrable("refinedglowstone")) { - if (Loader.isModLoaded("Mekanism")) - force = true; - matRefGlowstone = ingotMaterial("RefinedGlowstone", 0xF0EC29, 1300); - matRefGlowstone.addTrait(ModTraits.lightboost); - TinkerRegistry.addMaterialStats(matRefGlowstone, - new HeadMaterialStats(900, 9.43f, 8.88f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.84f, 140), new ExtraMaterialStats(100), - new BowMaterialStats(2.31f, 1.99f, 8f)); - } - - if (isRegistrable("osmium")) { - if (Loader.isModLoaded("Mekanism")) - force = true; - matOsmium = ingotMaterial("Osmium", 0x87A5FF, 600); - TinkerRegistry.addMaterialStats(matOsmium, new HeadMaterialStats(500, 3.73f, 4.01f, HarvestLevels.DIAMOND), - new HandleMaterialStats(1.19f, 98), new ExtraMaterialStats(48), - new BowMaterialStats(0.98f, 1.09f, 4f)); - } - if (!Loader.isModLoaded("botanicaladdons")) { - - if (isRegistrable("manasteel")) { - matManasteel = ingotMaterial("Manasteel", 0x62E1F5, 500); - matManasteel.addTrait(ModTraits.manaRepair); - TinkerRegistry.addMaterialStats(matManasteel, - new HeadMaterialStats(400, 6.21f, 3.87f, HarvestLevels.DIAMOND), - new HandleMaterialStats(1.07f, 120), new ExtraMaterialStats(71), - new BowMaterialStats(1.33f, 1.44f, 5f)); - } - - if (isRegistrable("terrasteel")) { - matTerrasteel = ingotMaterial("Terrasteel", 0x4EE823, 1400); - matTerrasteel.addTrait(ModTraits.manaEater); - TinkerRegistry.addMaterialStats(matTerrasteel, - new HeadMaterialStats(960, 9.53f, 12.03f, HarvestLevels.COBALT), - new HandleMaterialStats(1.45f, 200), new ExtraMaterialStats(136), - new BowMaterialStats(0.76f, 0.97f, 7f)); - } - - if (isRegistrable("elvenelementium")) { - matElementium = ingotMaterial("ElvenElementium", 0xED3BD8, 1400); - matElementium.addTrait(ModTraits.manaRepair); - TinkerRegistry.addMaterialStats(matElementium, - new HeadMaterialStats(200, 8.01f, 7.04f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(3.01f, -50), new ExtraMaterialStats(-20), - new BowMaterialStats(4.01f, 0.53f, 2f)); - } - } - - if (isRegistrable("gaia")) { - - matGaia = ingotMaterial("gaia", "gaiaIngot", 0x9157B5, 1600); - matGaia.addTrait(TinkerTraits.alien); - matGaia.addTrait(ModTraits.payback); - TinkerRegistry.registerMelting("gaiaIngot", FluidRegistry.getFluid("gaia"), 144); - TinkerRegistry.addMaterialStats(matGaia, new HeadMaterialStats(1600, 14.52f, 19.62f, HarvestLevels.COBALT), - new HandleMaterialStats(1.63f, 260), new ExtraMaterialStats(180), - new BowMaterialStats(1.54f, 6.45f, 15f)); - } - if (Loader.isModLoaded("enderio")) { - - if (isRegistrable("electricalsteel")) { - matElecSteel = ingotMaterialExist(FluidRegistry.getFluid("electricalsteel"), "ElectricalSteel", - 0xD1D1D1); - TinkerRegistry.addMaterialStats(matElecSteel, - new HeadMaterialStats(350, 5.87f, 2.42f, HarvestLevels.IRON), - new HandleMaterialStats(0.76f, -10), new ExtraMaterialStats(10), - new BowMaterialStats(0.97f, 2.10f, 7f)); - } - - if (isRegistrable("energeticalloy")) { - matEnerAlloy = ingotMaterialExist(FluidRegistry.getFluid("energeticalloy"), "EnergeticAlloy", 0xFFB300); - TinkerRegistry.addMaterialStats(matEnerAlloy, - new HeadMaterialStats(420, 7.84f, 1.07f, HarvestLevels.DIAMOND), - new HandleMaterialStats(1.00f, 20), new ExtraMaterialStats(50), - new BowMaterialStats(1.54f, 1.52f, 6f)); - } - - if (isRegistrable("vibrantalloy")) { - matVibrAlloy = ingotMaterialExist(FluidRegistry.getFluid("vibrantalloy"), "VibrantAlloy", 0x2DFA3E); - matVibrAlloy.addTrait(ModTraits.enderMagnetic, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matVibrAlloy, - new HeadMaterialStats(970, 9.88f, 3.41f, HarvestLevels.COBALT), - new HandleMaterialStats(1.85f, 200), new ExtraMaterialStats(150), - new BowMaterialStats(2.12f, 2.41f, 7f)); - } - - if (isRegistrable("redstonealloy")) { - matRedAlloy = ingotMaterialExist(FluidRegistry.getFluid("redstonealloy"), "RedstoneAlloy", 0xD61818); - TinkerRegistry.addMaterialStats(matRedAlloy, - new HeadMaterialStats(114, 15.53f, 1.41f, HarvestLevels.IRON), - new HandleMaterialStats(0.11f, -70), new ExtraMaterialStats(-40), - new BowMaterialStats(6.42f, 0.67f, 0.5f)); - } - - if (isRegistrable("conductiveiron")) { - matCondIron = ingotMaterialExist(FluidRegistry.getFluid("conductiveiron"), "ConductiveIron", 0xE87676); - TinkerRegistry.addMaterialStats(matCondIron, - new HeadMaterialStats(347, 8.03f, 3.43f, HarvestLevels.DIAMOND), - new HandleMaterialStats(0.46f, 10), new ExtraMaterialStats(5), - new BowMaterialStats(1.99f, 1.00f, 3f)); - } - - if (isRegistrable("pulsatingiron")) { - matPulsIron = ingotMaterialExist(FluidRegistry.getFluid("pulsatingiron"), "PulsatingIron", 0x15D474); - TinkerRegistry.addMaterialStats(matPulsIron, - new HeadMaterialStats(362, 7.10f, 5.10f, HarvestLevels.DIAMOND), - new HandleMaterialStats(1.01f, 99), new ExtraMaterialStats(76), - new BowMaterialStats(1.65f, 10.98f, 7f)); - } - if (isRegistrable("darksteel")) { - matDarkSteel = ingotMaterialExist(FluidRegistry.getFluid("darksteel"), "DarkSteel", 0x292828); - TinkerRegistry.addMaterialStats(matDarkSteel, - new HeadMaterialStats(1100, 9.87f, 10.91f, HarvestLevels.COBALT), - new HandleMaterialStats(1.87f, 300), new ExtraMaterialStats(400), - new BowMaterialStats(1.34f, 2.67f, 6f)); - } - if (isRegistrable("soularium")) { - matSoularium = ingotMaterialExist(FluidRegistry.getFluid("soularium"), "Soularium", 0x613E16); - matSoularium.addTrait(ModTraits.instantdeath2, MaterialTypes.HEAD); - matSoularium.addTrait(TinkerTraits.hellish); - TinkerRegistry.addMaterialStats(matSoularium, - new HeadMaterialStats(870, 4.32f, 6.66f, HarvestLevels.DIAMOND), - new HandleMaterialStats(1.11f, 100), new ExtraMaterialStats(125), - new BowMaterialStats(0.76f, 1.25f, 10f)); - } - } - - if (Loader.isModLoaded("bigreactors")) { - if (isRegistrable("yellorium")) { - force = true; - matYellorium = ingotMaterialExist(FluidRegistry.getFluid("yellorium"), "Yellorium", 0xFAF748); - matYellorium.addTrait(ModTraits.radioactive2); - TinkerRegistry.addMaterialStats(matYellorium, - new HeadMaterialStats(660, 7.52f, 5.08f, HarvestLevels.DIAMOND), - new HandleMaterialStats(0.76f, -40), new ExtraMaterialStats(-20), - new BowMaterialStats(0.97f, 0.79f, 3f)); - } - if (isRegistrable("cyanite")) { - force = true; - matCyanite = ingotMaterialExist(FluidRegistry.getFluid("cyanite"), "Cyanite", 0x25C9DB); - matCyanite.addTrait(ModTraits.radioactive); - TinkerRegistry.addMaterialStats(matCyanite, - new HeadMaterialStats(300, 6.53f, 4.83f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(1.53f, 20), new ExtraMaterialStats(60), - new BowMaterialStats(2.51f, 1.11f, 8f)); - } - } - - if (isRegistrable("blutonium")) { - if (Loader.isModLoaded("bigreactors")) - force = true; - matBlutonium = ingotMaterial("Blutonium", 0x2918C4, 1500); - matBlutonium.addTrait(ModTraits.radioactive3); - TinkerRegistry.addMaterialStats(matBlutonium, - new HeadMaterialStats(800, 8.09f, 6.23f, HarvestLevels.COBALT), new HandleMaterialStats(1.06f, 90), - new ExtraMaterialStats(50), new BowMaterialStats(1.25f, 1.02f, 12f)); - } - if (isRegistrable("ludicrite")) { - if (Loader.isModLoaded("bigreactors")) - force = true; - matLudicrite = ingotMaterial("Ludicrite", 0xD42CD4, 1700); - TinkerRegistry.addMaterialStats(matLudicrite, - new HeadMaterialStats(1400, 11.21f, 12.42f, HarvestLevels.COBALT), - new HandleMaterialStats(2.34f, 400), new ExtraMaterialStats(300), - new BowMaterialStats(4.52f, 3.21f, 13f)); - } - if (isRegistrable("quartzenrichediron")) { - ModFluids.registerFluid("quartzenrichediron", 0xE6E6E6, 900); - if (Loader.isModLoaded("refinedstorage")) { - force = true; - Item quartzIron = Item.REGISTRY - .getObject(new ResourceLocation("refinedstorage", "quartz_enriched_iron")); - matQuartzIron = new Material("quartzenrichediron", 0xE6E6E6); - matQuartzIron.addItem(quartzIron, 1, Material.VALUE_Ingot); - matQuartzIron.setCastable(true); - matQuartzIron.setRepresentativeItem(quartzIron); - TinkerRegistry.integrate(matQuartzIron, FluidRegistry.getFluid("quartzenrichediron")); - TinkerRegistry.registerMelting(quartzIron, FluidRegistry.getFluid("quartzenrichediron"), 144); - TinkerRegistry.addMaterialStats(matQuartzIron, - new HeadMaterialStats(500, 7.65f, 6.83f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(1.22f, 140), new ExtraMaterialStats(70), - new BowMaterialStats(0.64f, 0.86f, 4f)); - } - } - - if (Loader.isModLoaded("draconicevolution")) { - if (isRegistrable("draconium")) { - Item dracCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "draconic_core")); - matDraconium = new Material("draconium", 0x7A2EC7); - matDraconium.addItem(dracCore, 1, Material.VALUE_Ingot); - matDraconium.setCraftable(true); - matDraconium.setRepresentativeItem(dracCore); - matDraconium.addTrait(ModTraits.energyRepair); - matDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); - matDraconium.addTrait(ModTraits.op); - TinkerRegistry.integrate(matDraconium); - TinkerRegistry.addMaterialStats(matDraconium, - new HeadMaterialStats(1400, 12.04f, 13.53f, HarvestLevels.COBALT), - new HandleMaterialStats(1.86f, 400), new ExtraMaterialStats(300), - new BowMaterialStats(2.56f, 1.62f, 10f)); - } - if (isRegistrable("wyverndraconium")) { - Item wyvCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "wyvern_core")); - matWyvDraconium = new Material("wyverndraconium", 0xAB2EFF); - matWyvDraconium.addItem(wyvCore, 1, Material.VALUE_Ingot); - matWyvDraconium.setCraftable(true); - matWyvDraconium.setRepresentativeItem(wyvCore); - matWyvDraconium.addTrait(ModTraits.op); - matWyvDraconium.addTrait(ModTraits.energyRepair); - matWyvDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); - TinkerRegistry.integrate(matWyvDraconium); - TinkerRegistry.addMaterialStats(matWyvDraconium, new HeadMaterialStats(1700, 16.35f, 19.76f, 5), - new HandleMaterialStats(2.76f, 600), new ExtraMaterialStats(450), - new BowMaterialStats(4.06f, 2.98f, 14f)); - } - if (isRegistrable("awakeneddraconium")) { - Item awaCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "awakened_core")); - matAwaDraconium = new Material("awakeneddraconium", 0xFFC929); - matAwaDraconium.addItem(awaCore, 1, Material.VALUE_Ingot); - matAwaDraconium.setCraftable(true); - matAwaDraconium.setRepresentativeItem(awaCore); - matAwaDraconium.addTrait(ModTraits.op); - matAwaDraconium.addTrait(ModTraits.energyRepair); - matAwaDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); - TinkerRegistry.integrate(matAwaDraconium); - TinkerRegistry.addMaterialStats(matAwaDraconium, new HeadMaterialStats(2000, 25.43f, 29.52f, 6), - new HandleMaterialStats(3.12f, 800), new ExtraMaterialStats(600), - new BowMaterialStats(5.60f, 3.76f, 20f)); - } - if (isRegistrable("chaoticdraconium")) { - Item chaCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "chaotic_core")); - matChaDraconium = new Material("chaoticdraconium", 0x171717); - matChaDraconium.addItem(chaCore, 1, Material.VALUE_Ingot); - matChaDraconium.setCraftable(true); - matChaDraconium.setRepresentativeItem(chaCore); - matChaDraconium.addTrait(ModTraits.op); - matChaDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); - matChaDraconium.addTrait(ModTraits.weee, MaterialTypes.HEAD); - TinkerRegistry.integrate(matChaDraconium); - TinkerRegistry.addMaterialStats(matChaDraconium, new HeadMaterialStats(3000, 32.73f, 1400.76f, 7), - new HandleMaterialStats(5.31f, 1200), new ExtraMaterialStats(1000), - new BowMaterialStats(8.96f, 5.14f, 800f)); - } - } - - if (isRegistrable("magicalwood") && Loader.isModLoaded("extrautils2")) { - Item magWood = Item.REGISTRY.getObject(new ResourceLocation("extrautils2", "decorativesolidwood")); - matMagWood = new Material("magicalwood", 0xB7C752); - matMagWood.addItem(new ItemStack(magWood, 1, 1), 1, Material.VALUE_Ingot); - matMagWood.setCraftable(true); - matMagWood.setRepresentativeItem(new ItemStack(magWood, 1, 1)); - matMagWood.addTrait(ModTraits.moarwritable); - matMagWood.addTrait(ModTraits.moarwritable2, MaterialTypes.HEAD); - matMagWood.addTrait(TinkerTraits.ecological); - TinkerRegistry.integrate(matMagWood); - TinkerRegistry.addMaterialStats(matMagWood, - new HeadMaterialStats(120, 1.23f, 1.65f, HarvestLevels.STONE), - new HandleMaterialStats(0.78f, 10), new ExtraMaterialStats(20), - new BowMaterialStats(0.96f, 0.87f, 0.5f)); - } - if (isRegistrable("enchantedmetal")) { - - matEnchMetal = ingotMaterial("EnchantedMetal", 0x80F222, 1500); - matEnchMetal.addTrait(ModTraits.moarwritable); - matEnchMetal.addTrait(ModTraits.moarwritable2, MaterialTypes.HEAD); - matEnchMetal.addTrait(TinkerTraits.established); - TinkerRegistry.addMaterialStats(matEnchMetal, - new HeadMaterialStats(360, 7.53f, 8.52f, HarvestLevels.COBALT), new HandleMaterialStats(1.25f, 80), - new ExtraMaterialStats(50), new BowMaterialStats(1.12f, 1.35f, 6f)); - } - if (isRegistrable("psi")) { - matPsimetal = ingotMaterial("Psi", 0x2C88C9, 800); - matPsimetal.addTrait(ModTraits.psiRepair); - TinkerRegistry.addMaterialStats(matPsimetal, - new HeadMaterialStats(450, 9.04f, 8.01f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(1.12f, 140), new ExtraMaterialStats(80), - new BowMaterialStats(1.45f, 1.26f, 5f)); - } - if (isRegistrable("psigem")) { - matPsigem = materialPart("psigem", "gemPsi", 0x0CE8DD); - matPsigem.addTrait(ModTraits.psiEater); - TinkerRegistry.addMaterialStats(matPsigem, new HeadMaterialStats(800, 8.25f, 7.12f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(1.54f, 100), new ExtraMaterialStats(100), - new BowMaterialStats(1.21f, 0.85f, 4f)); - } - if (isRegistrable("ivorypsi")) { - matIvoryPsimetal = ingotMaterial("IvoryPsi", 0xF5F5F5, 1700); - matIvoryPsimetal.addTrait(ModTraits.psiRepair); - matIvoryPsimetal.addTrait(TinkerTraits.holy, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matIvoryPsimetal, - new HeadMaterialStats(980, 14.06f, 11.07f, HarvestLevels.COBALT), - new HandleMaterialStats(1.53f, 300), new ExtraMaterialStats(170), - new BowMaterialStats(2.74f, 1.75f, 6f)); - } - if (isRegistrable("ebonypsi")) { - matEbonyPsimetal = ingotMaterial("EbonyPsi", 0x0A0A0A, 1700); - matEbonyPsimetal.addTrait(ModTraits.psiRepair); - matEbonyPsimetal.addTrait(ModTraits.darkness, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matEbonyPsimetal, - new HeadMaterialStats(1210, 11.76f, 14.06f, HarvestLevels.COBALT), - new HandleMaterialStats(1.98f, 400), new ExtraMaterialStats(290), - new BowMaterialStats(1.64f, 2.56f, 10f)); - } - if (Loader.isModLoaded("projecte")) { - if (isRegistrable("darkmatter")) { - Item matter = Item.REGISTRY.getObject(new ResourceLocation("projecte", "item.pe_matter")); - matDarkMatter = new Material("darkmatter", 0x270133); - matDarkMatter.addItem(new ItemStack(matter, 1, 0), 1, Material.VALUE_Ingot); - matDarkMatter.setCraftable(true); - matDarkMatter.setRepresentativeItem(new ItemStack(matter, 1, 0)); - matDarkMatter.addTrait(ModTraits.darkness); - matDarkMatter.addTrait(ModTraits.instantdeath, MaterialTypes.HEAD); - TinkerRegistry.integrate(matDarkMatter); - TinkerRegistry.addMaterialStats(matDarkMatter, - new HeadMaterialStats(1200, 13.62f, 9.04f, HarvestLevels.COBALT), - new HandleMaterialStats(2.03f, 350), new ExtraMaterialStats(200), - new BowMaterialStats(1.87f, 3.54f, 8f)); - } - if (isRegistrable("redmatter")) { - Item matter = Item.REGISTRY.getObject(new ResourceLocation("projecte", "item.pe_matter")); - matRedMatter = new Material("redmatter", 0xE30000); - matRedMatter.addItem(new ItemStack(matter, 1, 1), 1, Material.VALUE_Ingot); - matRedMatter.setCraftable(true); - matRedMatter.setRepresentativeItem(new ItemStack(matter, 1, 1)); - matRedMatter.addTrait(ModTraits.weee, MaterialTypes.HEAD); - TinkerRegistry.integrate(matRedMatter); - TinkerRegistry.addMaterialStats(matRedMatter, - new HeadMaterialStats(1900, 16.74f, 15.07f, HarvestLevels.COBALT), - new HandleMaterialStats(3.86f, 500), new ExtraMaterialStats(500), - new BowMaterialStats(2.98f, 5.06f, 16f)); - } - } - - if (isRegistrable("electrumflux")) { - matFluxElec = ingotMaterial("ElectrumFlux", 0xFFF56B, 1800); - matFluxElec.addTrait(ModTraits.energyRepair, MaterialTypes.EXTRA); - matFluxElec.addTrait(ModTraits.energyRepair, MaterialTypes.HANDLE); - matFluxElec.addTrait(ModTraits.energyRepair, MaterialTypes.SHAFT); - matFluxElec.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matFluxElec, - new HeadMaterialStats(1100, 13.52f, 14.06f, HarvestLevels.COBALT), - new HandleMaterialStats(2.43f, 240), new ExtraMaterialStats(230), - new BowMaterialStats(2.26f, 3.41f, 8f)); - } - if (isRegistrable("hardenedstone")) { - matHardStone = materialPart("hardenedstone", "stoneHardened", 0x595959); - matHardStone.addTrait(TinkerTraits.petramor); - TinkerRegistry.addMaterialStats(matHardStone, - new HeadMaterialStats(200, 3.74f, 2.56f, HarvestLevels.DIAMOND), new HandleMaterialStats(0.53f, 90), - new ExtraMaterialStats(50), new BowMaterialStats(0.83f, 0.21f, 1f)); - } - if (isRegistrable("basalt")) { - matBasalt = materialPart("basalt", "stoneBasalt", 0x292929); - matBasalt.addTrait(TinkerTraits.hellish); - TinkerRegistry.addMaterialStats(matBasalt, new HeadMaterialStats(272, 5.07f, 4.86f, HarvestLevels.DIAMOND), - new HandleMaterialStats(0.96f, 100), new ExtraMaterialStats(60), - new BowMaterialStats(0.64f, 0.42f, 2f)); - } - if (isRegistrable("alabaster")) { - matAlabaster = materialPart("alabaster", "stoneAlabaster", 0xFFFFFF); - TinkerRegistry.addMaterialStats(matAlabaster, new HeadMaterialStats(225, 4.63f, 4.21f, HarvestLevels.IRON), - new HandleMaterialStats(1.21f, 70), new ExtraMaterialStats(70), - new BowMaterialStats(0.88f, 0.78f, 3f)); - } - if (isRegistrable("lonsdaleite")) { - matLonsdaleite = materialPart("lonsdaleite", "blockLonsdaleite", 0x1A1A1A); - matLonsdaleite.addTrait(ModTraits.exploit, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matLonsdaleite, - new HeadMaterialStats(1200, 0.97f, 1.54f, HarvestLevels.COBALT), - new HandleMaterialStats(3.41f, 100), new ExtraMaterialStats(200), - new BowMaterialStats(0.12f, 0.04f, 0.2f)); - } - if (isRegistrable("mica") && Loader.isModLoaded("environmentaltech")) { - Item mica = Item.REGISTRY.getObject(new ResourceLocation("environmentaltech", "mica")); - - matMica = new Material("mica", 0xDEDEDE); - matMica.addItem(mica, 1, Material.VALUE_Ingot); - matMica.setCraftable(true); - matMica.setRepresentativeItem(mica); - TinkerRegistry.integrate(matMica); - TinkerRegistry.addMaterialStats(matMica, - new HeadMaterialStats(703, 5.62f, 6.32f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(2.13f, 100), new ExtraMaterialStats(250), - new BowMaterialStats(3.04f, 4.06f, 5f)); - } - if (isRegistrable("refinediron")) { - matRefinedIron = ingotMaterial("RefinedIron", 0xE0E0E0, 780); - TinkerRegistry.addMaterialStats(matRefinedIron, - new HeadMaterialStats(450, 7.86f, 9.53f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(1.23f, 140), new ExtraMaterialStats(120), - new BowMaterialStats(0.56f, 1.45f, 7f)); - } - if (isRegistrable("tungsten")) { - matTungsten = ingotMaterial("Tungsten", 0x464659, 1800); - TinkerRegistry.addMaterialStats(matTungsten, - new HeadMaterialStats(680, 8.42f, 11.52f, HarvestLevels.COBALT), - new HandleMaterialStats(1.73f, 220), new ExtraMaterialStats(115), - new BowMaterialStats(0.98f, 5.17f, 9.5f)); - } - if (isRegistrable("tungstensteel")) { - matTungstensteel = ingotMaterial("Tungstensteel", 0x464659, 2100); - TinkerRegistry.addMaterialStats(matTungstensteel, - new HeadMaterialStats(1120, 8.97f, 14.53f, HarvestLevels.COBALT), - new HandleMaterialStats(2.42f, 320), new ExtraMaterialStats(200), - new BowMaterialStats(0.65f, 4.12f, 13f)); - } - if (isRegistrable("titanium")) { - matTitanium = ingotMaterial("Titanium", 0xBABABA, 1400); - TinkerRegistry.addMaterialStats(matTitanium, - new HeadMaterialStats(590, 7.63f, 10.41f, HarvestLevels.COBALT), - new HandleMaterialStats(1.52f, 180), new ExtraMaterialStats(95), - new BowMaterialStats(1.0f, 3.52f, 7.6f)); - } - if (isRegistrable("chrome")) { - matChrome = ingotMaterial("Chrome", 0xD6D6D6, 1600); - TinkerRegistry.addMaterialStats(matChrome, new HeadMaterialStats(800, 9.16f, 7.83f, HarvestLevels.COBALT), - new HandleMaterialStats(0.74f, 250), new ExtraMaterialStats(140), - new BowMaterialStats(1.52f, 2.15f, 5f)); + for (MaterialRegistration materialRegistration:materials) { + materialRegistration.register(); } - if (isRegistrable("advancedalloy")) { - matAdvAlloy = ingotMaterial("AdvancedAlloy", 0xFFBBA8, 1500); - TinkerRegistry.addMaterialStats(matAdvAlloy, - new HeadMaterialStats(1600, 13.63f, 13.23f, HarvestLevels.COBALT), - new HandleMaterialStats(1.85f, 400), new ExtraMaterialStats(500), - new BowMaterialStats(0.75f, 0.98f, 16f)); - } - if (isRegistrable("ruby")) { - matRuby = materialPart("ruby", "gemRuby", 0xCF0000); - matRuby.addTrait(ModTraits.reflect, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matRuby, new HeadMaterialStats(600, 10.12f, 6.84f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.74f, 100), new ExtraMaterialStats(80), - new BowMaterialStats(1.97f, 2.26f, 6f)); - } - if (isRegistrable("sapphire")) { - matSapphire = materialPart("sapphire", "gemSapphire", 0x0B33D6); - matSapphire.addTrait(ModTraits.launch, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matSapphire, - new HeadMaterialStats(600, 10.12f, 6.84f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.74f, 100), new ExtraMaterialStats(80), - new BowMaterialStats(1.97f, 2.26f, 6f)); - } - if (isRegistrable("peridot")) { - matPeridot = materialPart("peridot", "gemPeridot", 0x15E835); - matPeridot.addTrait(ModTraits.shock, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matPeridot, - new HeadMaterialStats(600, 10.12f, 6.84f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.74f, 100), new ExtraMaterialStats(80), - new BowMaterialStats(1.97f, 2.26f, 6f)); - } - if (isRegistrable("yellowgarnet")) { - matYellowGarnet = materialPart("yellowgarnet", "gemYellowGarnet", 0xF5F51B); - matYellowGarnet.addTrait(TinkerTraits.autosmelt); - matYellowGarnet.addTrait(TinkerTraits.superheat, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matYellowGarnet, - new HeadMaterialStats(800, 11.54f, 7.42f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.82f, 120), new ExtraMaterialStats(95), - new BowMaterialStats(1.67f, 2.41f, 7f)); - } - if (isRegistrable("redgarnet")) { - matRedGarnet = materialPart("redgarnet", "gemRedGarnet", 0xED2424); - matRedGarnet.addTrait(ModTraits.healer, MaterialTypes.HEAD); - TinkerRegistry.addMaterialStats(matRedGarnet, - new HeadMaterialStats(800, 11.54f, 7.42f, HarvestLevels.OBSIDIAN), - new HandleMaterialStats(0.82f, 120), new ExtraMaterialStats(95), - new BowMaterialStats(1.67f, 2.41f, 7f)); - } - if (isRegistrable("rubber")) { - matRubber = materialPart("rubber", "itemRubber", 0x5C4F4F); - matRubber.addTrait(ModTraits.sling); - TinkerRegistry.addMaterialStats(matRubber, new HeadMaterialStats(14, 0.95f, 0.12f, HarvestLevels.IRON), - new HandleMaterialStats(0.87f, 10), new ExtraMaterialStats(3), - new BowMaterialStats(6.42f, 1.42f, 0.3f), new BowStringMaterialStats(2.65f)); - } - if (Loader.isModLoaded("appliedenergistics2")) { - if (isRegistrable("certus")) { - Item material = Item.REGISTRY.getObject(new ResourceLocation("appliedenergistics2", "material")); - matCertus = new Material("certus", 0xCCE4F0); - matCertus.addItem(new ItemStack(material, 1, 0), 1, Material.VALUE_Ingot); - matCertus.setCraftable(true); - matCertus.setRepresentativeItem(new ItemStack(material, 1, 0)); - matCertus.addTrait(TinkerTraits.shocking); - TinkerRegistry.integrate(matCertus); - TinkerRegistry.addMaterialStats(matCertus, - new HeadMaterialStats(490, 7.45f, 10.45f, HarvestLevels.IRON), - new HandleMaterialStats(0.74f, 30), new ExtraMaterialStats(26), - new BowMaterialStats(2.31f, 1.23f, 12f)); - } - if (isRegistrable("fluix")) { - Item material = Item.REGISTRY.getObject(new ResourceLocation("appliedenergistics2", "material")); - matFluix = new Material("fluix", 0xB04EDE); - matFluix.addItem(new ItemStack(material, 1, 7), 1, Material.VALUE_Ingot); - matFluix.setCraftable(true); - matFluix.setRepresentativeItem(new ItemStack(material, 1, 7)); - TinkerRegistry.integrate(matFluix); - TinkerRegistry.addMaterialStats(matFluix, - new HeadMaterialStats(680, 13.32f, 12.65f, HarvestLevels.DIAMOND), - new HandleMaterialStats(0.45f, 10), new ExtraMaterialStats(40), - new BowMaterialStats(2.87f, 4.53f, 14f)); - } - } - } - - private static Material ingotMaterial(String name, int color, int temp) { - Material material = new Material(name.toLowerCase(), color); - material.addCommonItems(RandomHelper.capatilizeString(name)); - ModFluids.registerFluid(name.toLowerCase(), color, temp); - - MoarMaterialIntegration m = new MoarMaterialIntegration(material, FluidRegistry.getFluid(name.toLowerCase()), - name); - m.setRepresentativeItem("ingot" + name).toolforge(); - m.preInit(force); - TinkerRegistry.integrate(m); - - material.addItemIngot("ingot" + name); - material.setCastable(true); - force = false; - return material; } +// if (isRegistrable("mithril")) { +// Material matMithril = ingotMaterial("Mithril", 0x2095B0, 1350); +// matMithril.addTrait(ModTraits.sos); +// TinkerRegistry.addMaterialStats(matMithril, +// new HeadMaterialStats(1160, 13.02f, 7.03f, HarvestLevels.COBALT), +// new HandleMaterialStats(0.49f, 200), new ExtraMaterialStats(30), +// new BowMaterialStats(1.87f, 1.12f, 3f)); +// } +// +// if (isRegistrable("signalum")) { +// Material matSignalum = ingotMaterial("Signalum", 0xE65B10, 950); +// matSignalum.addTrait(TinkerTraits.unnatural); +// TinkerRegistry.addMaterialStats(matSignalum, +// new HeadMaterialStats(740, 12.42f, 6.37f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(0.52f, 100), new ExtraMaterialStats(40), +// new BowMaterialStats(3.24f, 0.78f, 3f)); +// } +// +// if (isRegistrable("lumium")) { +// Material matLumium = ingotMaterial("Lumium", 0xFFFCB0, 1000); +// matLumium.addTrait(ModTraits.lightboost); +// TinkerRegistry.addMaterialStats(matLumium, new HeadMaterialStats(600, 8.60f, 8.34f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(0.44f, 90), new ExtraMaterialStats(20), +// new BowMaterialStats(2.89f, 2.36f, 9f)); +// } +// +// if (isRegistrable("constantan") && !Loader.isModLoaded("immersiveengineering")) { +// Material matConstantan = ingotMaterial("Constantan", 0xD9B34A, 500); +// matConstantan.addTrait(ModTraits.constant); +// TinkerRegistry.addMaterialStats(matConstantan, +// new HeadMaterialStats(300, 4.45f, 5.03f, HarvestLevels.DIAMOND), +// new HandleMaterialStats(0.34f, 135), new ExtraMaterialStats(13), +// new BowMaterialStats(2.31f, 1.43f, 4f)); +// } +// +// if (isRegistrable("invar")) { +// Material matInvar = ingotMaterial("Invar", 0xC4C4C4, 1040); +// matInvar.addTrait(TinkerTraits.magnetic); +// matInvar.addTrait(TinkerTraits.magnetic2, MaterialTypes.HEAD); +// TinkerRegistry.addMaterialStats(matInvar, new HeadMaterialStats(700, 7.22f, 6.22f, HarvestLevels.DIAMOND), +// new HandleMaterialStats(0.64f, 220), new ExtraMaterialStats(32), +// new BowMaterialStats(0.92f, 0.76f, 7f)); +// } +// +// if (isRegistrable("nickel")) { +// Material matNickel = ingotMaterialExist(TinkerFluids.nickel, "Nickel", TinkerFluids.nickel.color); +// matNickel.addTrait(ModTraits.exploit, MaterialTypes.HEAD); +// TinkerRegistry.addMaterialStats(matNickel, new HeadMaterialStats(20, 3.63f, 5.10f, HarvestLevels.IRON), +// new HandleMaterialStats(0.14f, 30), new ExtraMaterialStats(7), +// new BowMaterialStats(0.24f, 1.34f, 3f)); +// } +// +// if (isRegistrable("tin")) { +// Material matTin = ingotMaterialExist(TinkerFluids.tin, "Tin", TinkerFluids.tin.color); +// matTin.addTrait(ModTraits.sos); +// TinkerRegistry.addMaterialStats(matTin, new HeadMaterialStats(300, 1.85f, 2.27f, HarvestLevels.IRON), +// new HandleMaterialStats(1.34f, 120), new ExtraMaterialStats(40), +// new BowMaterialStats(2.59f, 0.87f, 1f)); +// } +// +// if (isRegistrable("brass")) { +// Material matBrass = ingotMaterialExist(TinkerFluids.brass, "Brass", TinkerFluids.brass.color); +// TinkerRegistry.addMaterialStats(matBrass, new HeadMaterialStats(260, 2.98f, 1.76f, HarvestLevels.IRON), +// new HandleMaterialStats(1.11f, 10), new ExtraMaterialStats(4), +// new BowMaterialStats(1.32f, 1.63f, 3f)); +// } +// +// if (isRegistrable("aluminum")) { +// Material matAluminum = ingotMaterialExist(TinkerFluids.aluminum, "Aluminum", TinkerFluids.aluminum.color); +// TinkerRegistry.addMaterialStats(matAluminum, new HeadMaterialStats(80, 1.23f, 0.85f, HarvestLevels.IRON), +// new HandleMaterialStats(0.21f, -20), new ExtraMaterialStats(-10), +// new BowMaterialStats(0.21f, 0.34f, 0.6f)); +// } +// +// if (isRegistrable("zinc")) { +// Material matZinc = ingotMaterialExist(TinkerFluids.zinc, "Zinc", TinkerFluids.zinc.color); +// matZinc.addTrait(TinkerTraits.crumbling); +// TinkerRegistry.addMaterialStats(matZinc, new HeadMaterialStats(40, 1.76f, 0.53f, HarvestLevels.IRON), +// new HandleMaterialStats(0.19f, -25), new ExtraMaterialStats(-12), +// new BowMaterialStats(0.32f, 0.43f, 0.4f)); +// } +// +// if (isRegistrable("refinedobsidian")) { +// if (Loader.isModLoaded("Mekanism")) +// force = true; +// Material matRefObsidian = ingotMaterialNoDust("RefinedObsidian", 0x732668, 1600); +// matRefObsidian.addTrait(TinkerTraits.duritos); +// matRefObsidian.addTrait(ModTraits.darkness); +// TinkerRegistry.addMaterialStats(matRefObsidian, +// new HeadMaterialStats(1400, 5.24f, 11.04f, HarvestLevels.COBALT), +// new HandleMaterialStats(2.19f, 400), new ExtraMaterialStats(340), +// new BowMaterialStats(0.11f, 0.43f, 12f)); +// } +// +// if (isRegistrable("refinedglowstone")) { +// if (Loader.isModLoaded("Mekanism")) +// force = true; +// Material matRefGlowstone = ingotMaterial("RefinedGlowstone", 0xF0EC29, 1300); +// matRefGlowstone.addTrait(ModTraits.lightboost); +// TinkerRegistry.addMaterialStats(matRefGlowstone, +// new HeadMaterialStats(900, 9.43f, 8.88f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(0.84f, 140), new ExtraMaterialStats(100), +// new BowMaterialStats(2.31f, 1.99f, 8f)); +// } +// +// if (isRegistrable("osmium")) { +// if (Loader.isModLoaded("Mekanism")) +// force = true; +// Material matOsmium = ingotMaterial("Osmium", 0x87A5FF, 600); +// TinkerRegistry.addMaterialStats(matOsmium, new HeadMaterialStats(500, 3.73f, 4.01f, HarvestLevels.DIAMOND), +// new HandleMaterialStats(1.19f, 98), new ExtraMaterialStats(48), +// new BowMaterialStats(0.98f, 1.09f, 4f)); +// } +// if (!Loader.isModLoaded("botanicaladdons")) { +// +// if (isRegistrable("manasteel")) { +// Material matManasteel = ingotMaterial("Manasteel", 0x62E1F5, 500); +// matManasteel.addTrait(ModTraits.manaRepair); +// TinkerRegistry.addMaterialStats(matManasteel, +// new HeadMaterialStats(400, 6.21f, 3.87f, HarvestLevels.DIAMOND), +// new HandleMaterialStats(1.07f, 120), new ExtraMaterialStats(71), +// new BowMaterialStats(1.33f, 1.44f, 5f)); +// } +// +// if (isRegistrable("terrasteel")) { +// Material matTerrasteel = ingotMaterial("Terrasteel", 0x4EE823, 1400); +// matTerrasteel.addTrait(ModTraits.manaEater); +// TinkerRegistry.addMaterialStats(matTerrasteel, +// new HeadMaterialStats(960, 9.53f, 12.03f, HarvestLevels.COBALT), +// new HandleMaterialStats(1.45f, 200), new ExtraMaterialStats(136), +// new BowMaterialStats(0.76f, 0.97f, 7f)); +// } +// +// if (isRegistrable("elvenelementium")) { +// Material matElementium = ingotMaterial("ElvenElementium", 0xED3BD8, 1400); +// matElementium.addTrait(ModTraits.manaRepair); +// TinkerRegistry.addMaterialStats(matElementium, +// new HeadMaterialStats(200, 8.01f, 7.04f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(3.01f, -50), new ExtraMaterialStats(-20), +// new BowMaterialStats(4.01f, 0.53f, 2f)); +// } +// } +// +// if (isRegistrable("gaia")) { +// +// Material matGaia = ingotMaterial("gaia", "gaiaIngot", 0x9157B5, 1600); +// matGaia.addTrait(TinkerTraits.alien); +// matGaia.addTrait(ModTraits.payback); +// TinkerRegistry.registerMelting("gaiaIngot", FluidRegistry.getFluid("gaia"), 144); +// TinkerRegistry.addMaterialStats(matGaia, new HeadMaterialStats(1600, 14.52f, 19.62f, HarvestLevels.COBALT), +// new HandleMaterialStats(1.63f, 260), new ExtraMaterialStats(180), +// new BowMaterialStats(1.54f, 6.45f, 15f)); +// } +// if (Loader.isModLoaded("enderio")) { +// +// if (isRegistrable("electricalsteel")) { +// Material matElecSteel = ingotMaterialExist(FluidRegistry.getFluid("electricalsteel"), "ElectricalSteel", +// 0xD1D1D1); +// TinkerRegistry.addMaterialStats(matElecSteel, +// new HeadMaterialStats(350, 5.87f, 2.42f, HarvestLevels.IRON), +// new HandleMaterialStats(0.76f, -10), new ExtraMaterialStats(10), +// new BowMaterialStats(0.97f, 2.10f, 7f)); +// } +// +// if (isRegistrable("energeticalloy")) { +// Material matEnerAlloy = ingotMaterialExist(FluidRegistry.getFluid("energeticalloy"), "EnergeticAlloy", 0xFFB300); +// TinkerRegistry.addMaterialStats(matEnerAlloy, +// new HeadMaterialStats(420, 7.84f, 1.07f, HarvestLevels.DIAMOND), +// new HandleMaterialStats(1.00f, 20), new ExtraMaterialStats(50), +// new BowMaterialStats(1.54f, 1.52f, 6f)); +// } +// +// if (isRegistrable("vibrantalloy")) { +// Material matVibrAlloy = ingotMaterialExist(FluidRegistry.getFluid("vibrantalloy"), "VibrantAlloy", 0x2DFA3E); +// matVibrAlloy.addTrait(ModTraits.enderMagnetic, MaterialTypes.HEAD); +// TinkerRegistry.addMaterialStats(matVibrAlloy, +// new HeadMaterialStats(970, 9.88f, 3.41f, HarvestLevels.COBALT), +// new HandleMaterialStats(1.85f, 200), new ExtraMaterialStats(150), +// new BowMaterialStats(2.12f, 2.41f, 7f)); +// } +// +// if (isRegistrable("redstonealloy")) { +// Material matRedAlloy = ingotMaterialExist(FluidRegistry.getFluid("redstonealloy"), "RedstoneAlloy", 0xD61818); +// TinkerRegistry.addMaterialStats(matRedAlloy, +// new HeadMaterialStats(114, 15.53f, 1.41f, HarvestLevels.IRON), +// new HandleMaterialStats(0.11f, -70), new ExtraMaterialStats(-40), +// new BowMaterialStats(6.42f, 0.67f, 0.5f)); +// } +// +// if (isRegistrable("conductiveiron")) { +// Material matCondIron = ingotMaterialExist(FluidRegistry.getFluid("conductiveiron"), "ConductiveIron", 0xE87676); +// TinkerRegistry.addMaterialStats(matCondIron, +// new HeadMaterialStats(347, 8.03f, 3.43f, HarvestLevels.DIAMOND), +// new HandleMaterialStats(0.46f, 10), new ExtraMaterialStats(5), +// new BowMaterialStats(1.99f, 1.00f, 3f)); +// } +// +// if (isRegistrable("pulsatingiron")) { +// Material matPulsIron = ingotMaterialExist(FluidRegistry.getFluid("pulsatingiron"), "PulsatingIron", 0x15D474); +// TinkerRegistry.addMaterialStats(matPulsIron, +// new HeadMaterialStats(362, 7.10f, 5.10f, HarvestLevels.DIAMOND), +// new HandleMaterialStats(1.01f, 99), new ExtraMaterialStats(76), +// new BowMaterialStats(1.65f, 10.98f, 7f)); +// } +// if (isRegistrable("darksteel")) { +// Material matDarkSteel = ingotMaterialExist(FluidRegistry.getFluid("darksteel"), "DarkSteel", 0x292828); +// TinkerRegistry.addMaterialStats(matDarkSteel, +// new HeadMaterialStats(1100, 9.87f, 10.91f, HarvestLevels.COBALT), +// new HandleMaterialStats(1.87f, 300), new ExtraMaterialStats(400), +// new BowMaterialStats(1.34f, 2.67f, 6f)); +// } +// if (isRegistrable("soularium")) { +// Material matSoularium = ingotMaterialExist(FluidRegistry.getFluid("soularium"), "Soularium", 0x613E16); +// matSoularium.addTrait(ModTraits.instantdeath2, MaterialTypes.HEAD); +// matSoularium.addTrait(TinkerTraits.hellish); +// TinkerRegistry.addMaterialStats(matSoularium, +// new HeadMaterialStats(870, 4.32f, 6.66f, HarvestLevels.DIAMOND), +// new HandleMaterialStats(1.11f, 100), new ExtraMaterialStats(125), +// new BowMaterialStats(0.76f, 1.25f, 10f)); +// } +// } +// +// if (Loader.isModLoaded("bigreactors")) { +// if (isRegistrable("yellorium")) { +// force = true; +// Material matYellorium = ingotMaterialExist(FluidRegistry.getFluid("yellorium"), "Yellorium", 0xFAF748); +// matYellorium.addTrait(ModTraits.radioactive2); +// TinkerRegistry.addMaterialStats(matYellorium, +// new HeadMaterialStats(660, 7.52f, 5.08f, HarvestLevels.DIAMOND), +// new HandleMaterialStats(0.76f, -40), new ExtraMaterialStats(-20), +// new BowMaterialStats(0.97f, 0.79f, 3f)); +// } +// if (isRegistrable("cyanite")) { +// force = true; +// Material matCyanite = ingotMaterialExist(FluidRegistry.getFluid("cyanite"), "Cyanite", 0x25C9DB); +// matCyanite.addTrait(ModTraits.radioactive); +// TinkerRegistry.addMaterialStats(matCyanite, +// new HeadMaterialStats(300, 6.53f, 4.83f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(1.53f, 20), new ExtraMaterialStats(60), +// new BowMaterialStats(2.51f, 1.11f, 8f)); +// } +// } +// +// if (isRegistrable("blutonium")) { +// if (Loader.isModLoaded("bigreactors")) +// force = true; +// Material matBlutonium = ingotMaterial("Blutonium", 0x2918C4, 1500); +// matBlutonium.addTrait(ModTraits.radioactive3); +// TinkerRegistry.addMaterialStats(matBlutonium, +// new HeadMaterialStats(800, 8.09f, 6.23f, HarvestLevels.COBALT), new HandleMaterialStats(1.06f, 90), +// new ExtraMaterialStats(50), new BowMaterialStats(1.25f, 1.02f, 12f)); +// } +// if (isRegistrable("ludicrite")) { +// if (Loader.isModLoaded("bigreactors")) +// force = true; +// Material matLudicrite = ingotMaterial("Ludicrite", 0xD42CD4, 1700); +// TinkerRegistry.addMaterialStats(matLudicrite, +// new HeadMaterialStats(1400, 11.21f, 12.42f, HarvestLevels.COBALT), +// new HandleMaterialStats(2.34f, 400), new ExtraMaterialStats(300), +// new BowMaterialStats(4.52f, 3.21f, 13f)); +// } +// if (isRegistrable("quartzenrichediron")) { +// ModFluids.registerFluid("quartzenrichediron", 0xE6E6E6, 900); +// if (Loader.isModLoaded("refinedstorage")) { +// force = true; +// Item quartzIron = Item.REGISTRY +// .getObject(new ResourceLocation("refinedstorage", "quartz_enriched_iron")); +// Material matQuartzIron = new Material("quartzenrichediron", 0xE6E6E6); +// matQuartzIron.addItem(quartzIron, 1, Material.VALUE_Ingot); +// matQuartzIron.setCastable(true); +// matQuartzIron.setRepresentativeItem(quartzIron); +// TinkerRegistry.integrate(matQuartzIron, FluidRegistry.getFluid("quartzenrichediron")); +// TinkerRegistry.registerMelting(quartzIron, FluidRegistry.getFluid("quartzenrichediron"), 144); +// TinkerRegistry.addMaterialStats(matQuartzIron, +// new HeadMaterialStats(500, 7.65f, 6.83f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(1.22f, 140), new ExtraMaterialStats(70), +// new BowMaterialStats(0.64f, 0.86f, 4f)); +// } +// } +// +// if (Loader.isModLoaded("draconicevolution")) { +// if (isRegistrable("draconium")) { +// Item dracCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "draconic_core")); +// Material matDraconium = new Material("draconium", 0x7A2EC7); +// matDraconium.addItem(dracCore, 1, Material.VALUE_Ingot); +// matDraconium.setCraftable(true); +// matDraconium.setRepresentativeItem(dracCore); +// matDraconium.addTrait(ModTraits.energyRepair); +// matDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); +// matDraconium.addTrait(ModTraits.op); +// TinkerRegistry.integrate(matDraconium); +// TinkerRegistry.addMaterialStats(matDraconium, +// new HeadMaterialStats(1400, 12.04f, 13.53f, HarvestLevels.COBALT), +// new HandleMaterialStats(1.86f, 400), new ExtraMaterialStats(300), +// new BowMaterialStats(2.56f, 1.62f, 10f)); +// } +// if (isRegistrable("wyverndraconium")) { +// Item wyvCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "wyvern_core")); +// Material matWyvDraconium = new Material("wyverndraconium", 0xAB2EFF); +// matWyvDraconium.addItem(wyvCore, 1, Material.VALUE_Ingot); +// matWyvDraconium.setCraftable(true); +// matWyvDraconium.setRepresentativeItem(wyvCore); +// matWyvDraconium.addTrait(ModTraits.op); +// matWyvDraconium.addTrait(ModTraits.energyRepair); +// matWyvDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); +// TinkerRegistry.integrate(matWyvDraconium); +// TinkerRegistry.addMaterialStats(matWyvDraconium, new HeadMaterialStats(1700, 16.35f, 19.76f, 5), +// new HandleMaterialStats(2.76f, 600), new ExtraMaterialStats(450), +// new BowMaterialStats(4.06f, 2.98f, 14f)); +// } +// if (isRegistrable("awakeneddraconium")) { +// Item awaCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "awakened_core")); +// Material matAwaDraconium = new Material("awakeneddraconium", 0xFFC929); +// matAwaDraconium.addItem(awaCore, 1, Material.VALUE_Ingot); +// matAwaDraconium.setCraftable(true); +// matAwaDraconium.setRepresentativeItem(awaCore); +// matAwaDraconium.addTrait(ModTraits.op); +// matAwaDraconium.addTrait(ModTraits.energyRepair); +// matAwaDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); +// TinkerRegistry.integrate(matAwaDraconium); +// TinkerRegistry.addMaterialStats(matAwaDraconium, new HeadMaterialStats(2000, 25.43f, 29.52f, 6), +// new HandleMaterialStats(3.12f, 800), new ExtraMaterialStats(600), +// new BowMaterialStats(5.60f, 3.76f, 20f)); +// } +// if (isRegistrable("chaoticdraconium")) { +// Item chaCore = Item.REGISTRY.getObject(new ResourceLocation("draconicevolution", "chaotic_core")); +// Material matChaDraconium = new Material("chaoticdraconium", 0x171717); +// matChaDraconium.addItem(chaCore, 1, Material.VALUE_Ingot); +// matChaDraconium.setCraftable(true); +// matChaDraconium.setRepresentativeItem(chaCore); +// matChaDraconium.addTrait(ModTraits.op); +// matChaDraconium.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); +// matChaDraconium.addTrait(ModTraits.weee, MaterialTypes.HEAD); +// TinkerRegistry.integrate(matChaDraconium); +// TinkerRegistry.addMaterialStats(matChaDraconium, new HeadMaterialStats(3000, 32.73f, 1400.76f, 7), +// new HandleMaterialStats(5.31f, 1200), new ExtraMaterialStats(1000), +// new BowMaterialStats(8.96f, 5.14f, 800f)); +// } +// } +// +// if (isRegistrable("magicalwood") && Loader.isModLoaded("extrautils2")) { +// Item magWood = Item.REGISTRY.getObject(new ResourceLocation("extrautils2", "decorativesolidwood")); +// Material matMagWood = new Material("magicalwood", 0xB7C752); +// matMagWood.addItem(new ItemStack(magWood, 1, 1), 1, Material.VALUE_Ingot); +// matMagWood.setCraftable(true); +// matMagWood.setRepresentativeItem(new ItemStack(magWood, 1, 1)); +// matMagWood.addTrait(ModTraits.moarwritable); +// matMagWood.addTrait(ModTraits.moarwritable2, MaterialTypes.HEAD); +// matMagWood.addTrait(TinkerTraits.ecological); +// TinkerRegistry.integrate(matMagWood); +// TinkerRegistry.addMaterialStats(matMagWood, +// new HeadMaterialStats(120, 1.23f, 1.65f, HarvestLevels.STONE), +// new HandleMaterialStats(0.78f, 10), new ExtraMaterialStats(20), +// new BowMaterialStats(0.96f, 0.87f, 0.5f)); +// } +// if (isRegistrable("enchantedmetal")) { +// +// Material matEnchMetal = ingotMaterial("EnchantedMetal", 0x80F222, 1500); +// matEnchMetal.addTrait(ModTraits.moarwritable); +// matEnchMetal.addTrait(ModTraits.moarwritable2, MaterialTypes.HEAD); +// matEnchMetal.addTrait(TinkerTraits.established); +// TinkerRegistry.addMaterialStats(matEnchMetal, +// new HeadMaterialStats(360, 7.53f, 8.52f, HarvestLevels.COBALT), new HandleMaterialStats(1.25f, 80), +// new ExtraMaterialStats(50), new BowMaterialStats(1.12f, 1.35f, 6f)); +// } +// if (isRegistrable("psi")) { +// Material matPsimetal = ingotMaterial("Psi", 0x2C88C9, 800); +// matPsimetal.addTrait(ModTraits.psiRepair); +// TinkerRegistry.addMaterialStats(matPsimetal, +// new HeadMaterialStats(450, 9.04f, 8.01f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(1.12f, 140), new ExtraMaterialStats(80), +// new BowMaterialStats(1.45f, 1.26f, 5f)); +// } +// if (isRegistrable("psigem")) { +// Material matPsigem = materialPart("psigem", "gemPsi", 0x0CE8DD); +// matPsigem.addTrait(ModTraits.psiEater); +// TinkerRegistry.addMaterialStats(matPsigem, new HeadMaterialStats(800, 8.25f, 7.12f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(1.54f, 100), new ExtraMaterialStats(100), +// new BowMaterialStats(1.21f, 0.85f, 4f)); +// } +// if (isRegistrable("ivorypsi")) { +// Material matIvoryPsimetal = ingotMaterial("IvoryPsi", 0xF5F5F5, 1700); +// matIvoryPsimetal.addTrait(ModTraits.psiRepair); +// matIvoryPsimetal.addTrait(TinkerTraits.holy, MaterialTypes.HEAD); +// TinkerRegistry.addMaterialStats(matIvoryPsimetal, +// new HeadMaterialStats(980, 14.06f, 11.07f, HarvestLevels.COBALT), +// new HandleMaterialStats(1.53f, 300), new ExtraMaterialStats(170), +// new BowMaterialStats(2.74f, 1.75f, 6f)); +// } +// if (isRegistrable("ebonypsi")) { +// Material matEbonyPsimetal = ingotMaterial("EbonyPsi", 0x0A0A0A, 1700); +// matEbonyPsimetal.addTrait(ModTraits.psiRepair); +// matEbonyPsimetal.addTrait(ModTraits.darkness, MaterialTypes.HEAD); +// TinkerRegistry.addMaterialStats(matEbonyPsimetal, +// new HeadMaterialStats(1210, 11.76f, 14.06f, HarvestLevels.COBALT), +// new HandleMaterialStats(1.98f, 400), new ExtraMaterialStats(290), +// new BowMaterialStats(1.64f, 2.56f, 10f)); +// } +// if (Loader.isModLoaded("projecte")) { +// if (isRegistrable("darkmatter")) { +// Item matter = Item.REGISTRY.getObject(new ResourceLocation("projecte", "item.pe_matter")); +// Material matDarkMatter = new Material("darkmatter", 0x270133); +// matDarkMatter.addItem(new ItemStack(matter, 1, 0), 1, Material.VALUE_Ingot); +// matDarkMatter.setCraftable(true); +// matDarkMatter.setRepresentativeItem(new ItemStack(matter, 1, 0)); +// matDarkMatter.addTrait(ModTraits.darkness); +// matDarkMatter.addTrait(ModTraits.instantdeath, MaterialTypes.HEAD); +// TinkerRegistry.integrate(matDarkMatter); +// TinkerRegistry.addMaterialStats(matDarkMatter, +// new HeadMaterialStats(1200, 13.62f, 9.04f, HarvestLevels.COBALT), +// new HandleMaterialStats(2.03f, 350), new ExtraMaterialStats(200), +// new BowMaterialStats(1.87f, 3.54f, 8f)); +// } +// if (isRegistrable("redmatter")) { +// Item matter = Item.REGISTRY.getObject(new ResourceLocation("projecte", "item.pe_matter")); +// Material matRedMatter = new Material("redmatter", 0xE30000); +// matRedMatter.addItem(new ItemStack(matter, 1, 1), 1, Material.VALUE_Ingot); +// matRedMatter.setCraftable(true); +// matRedMatter.setRepresentativeItem(new ItemStack(matter, 1, 1)); +// matRedMatter.addTrait(ModTraits.weee, MaterialTypes.HEAD); +// TinkerRegistry.integrate(matRedMatter); +// TinkerRegistry.addMaterialStats(matRedMatter, +// new HeadMaterialStats(1900, 16.74f, 15.07f, HarvestLevels.COBALT), +// new HandleMaterialStats(3.86f, 500), new ExtraMaterialStats(500), +// new BowMaterialStats(2.98f, 5.06f, 16f)); +// } +// } +// +// if (isRegistrable("electrumflux")) { +// Material matFluxElec = ingotMaterial("ElectrumFlux", 0xFFF56B, 1800); +// matFluxElec.addTrait(ModTraits.energyRepair, MaterialTypes.EXTRA); +// matFluxElec.addTrait(ModTraits.energyRepair, MaterialTypes.HANDLE); +// matFluxElec.addTrait(ModTraits.energyRepair, MaterialTypes.SHAFT); +// matFluxElec.addTrait(ModTraits.energyEater, MaterialTypes.HEAD); +// TinkerRegistry.addMaterialStats(matFluxElec, +// new HeadMaterialStats(1100, 13.52f, 14.06f, HarvestLevels.COBALT), +// new HandleMaterialStats(2.43f, 240), new ExtraMaterialStats(230), +// new BowMaterialStats(2.26f, 3.41f, 8f)); +// } +// if (isRegistrable("hardenedstone")) { +// Material matHardStone = materialPart("hardenedstone", "stoneHardened", 0x595959); +// matHardStone.addTrait(TinkerTraits.petramor); +// TinkerRegistry.addMaterialStats(matHardStone, +// new HeadMaterialStats(200, 3.74f, 2.56f, HarvestLevels.DIAMOND), new HandleMaterialStats(0.53f, 90), +// new ExtraMaterialStats(50), new BowMaterialStats(0.83f, 0.21f, 1f)); +// } +// if (isRegistrable("basalt")) { +// Material matBasalt = materialPart("basalt", "stoneBasalt", 0x292929); +// matBasalt.addTrait(TinkerTraits.hellish); +// TinkerRegistry.addMaterialStats(matBasalt, new HeadMaterialStats(272, 5.07f, 4.86f, HarvestLevels.DIAMOND), +// new HandleMaterialStats(0.96f, 100), new ExtraMaterialStats(60), +// new BowMaterialStats(0.64f, 0.42f, 2f)); +// } +// if (isRegistrable("alabaster")) { +// Material matAlabaster = materialPart("alabaster", "stoneAlabaster", 0xFFFFFF); +// TinkerRegistry.addMaterialStats(matAlabaster, new HeadMaterialStats(225, 4.63f, 4.21f, HarvestLevels.IRON), +// new HandleMaterialStats(1.21f, 70), new ExtraMaterialStats(70), +// new BowMaterialStats(0.88f, 0.78f, 3f)); +// } +// if (isRegistrable("lonsdaleite")) { +// Material matLonsdaleite = materialPart("lonsdaleite", "blockLonsdaleite", 0x1A1A1A); +// matLonsdaleite.addTrait(ModTraits.exploit, MaterialTypes.HEAD); +// TinkerRegistry.addMaterialStats(matLonsdaleite, +// new HeadMaterialStats(1200, 0.97f, 1.54f, HarvestLevels.COBALT), +// new HandleMaterialStats(3.41f, 100), new ExtraMaterialStats(200), +// new BowMaterialStats(0.12f, 0.04f, 0.2f)); +// } +// if (isRegistrable("mica") && Loader.isModLoaded("environmentaltech")) { +// Item mica = Item.REGISTRY.getObject(new ResourceLocation("environmentaltech", "mica")); +// +// Material matMica = new Material("mica", 0xDEDEDE); +// matMica.addItem(mica, 1, Material.VALUE_Ingot); +// matMica.setCraftable(true); +// matMica.setRepresentativeItem(mica); +// TinkerRegistry.integrate(matMica); +// TinkerRegistry.addMaterialStats(matMica, +// new HeadMaterialStats(703, 5.62f, 6.32f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(2.13f, 100), new ExtraMaterialStats(250), +// new BowMaterialStats(3.04f, 4.06f, 5f)); +// } +// if (isRegistrable("refinediron")) { +// Material matRefinedIron = ingotMaterial("RefinedIron", 0xE0E0E0, 780); +// TinkerRegistry.addMaterialStats(matRefinedIron, +// new HeadMaterialStats(450, 7.86f, 9.53f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(1.23f, 140), new ExtraMaterialStats(120), +// new BowMaterialStats(0.56f, 1.45f, 7f)); +// } +// if (isRegistrable("tungsten")) { +// Material matTungsten = ingotMaterial("Tungsten", 0x464659, 1800); +// TinkerRegistry.addMaterialStats(matTungsten, +// new HeadMaterialStats(680, 8.42f, 11.52f, HarvestLevels.COBALT), +// new HandleMaterialStats(1.73f, 220), new ExtraMaterialStats(115), +// new BowMaterialStats(0.98f, 5.17f, 9.5f)); +// } +// if (isRegistrable("tungstensteel")) { +// Material matTungstensteel = ingotMaterial("Tungstensteel", 0x464659, 2100); +// TinkerRegistry.addMaterialStats(matTungstensteel, +// new HeadMaterialStats(1120, 8.97f, 14.53f, HarvestLevels.COBALT), +// new HandleMaterialStats(2.42f, 320), new ExtraMaterialStats(200), +// new BowMaterialStats(0.65f, 4.12f, 13f)); +// } +// if (isRegistrable("titanium")) { +// Material matTitanium = ingotMaterial("Titanium", 0xBABABA, 1400); +// TinkerRegistry.addMaterialStats(matTitanium, +// new HeadMaterialStats(590, 7.63f, 10.41f, HarvestLevels.COBALT), +// new HandleMaterialStats(1.52f, 180), new ExtraMaterialStats(95), +// new BowMaterialStats(1.0f, 3.52f, 7.6f)); +// } +// if (isRegistrable("chrome")) { +// Material matChrome = ingotMaterial("Chrome", 0xD6D6D6, 1600); +// TinkerRegistry.addMaterialStats(matChrome, new HeadMaterialStats(800, 9.16f, 7.83f, HarvestLevels.COBALT), +// new HandleMaterialStats(0.74f, 250), new ExtraMaterialStats(140), +// new BowMaterialStats(1.52f, 2.15f, 5f)); +// } +// if (isRegistrable("advancedalloy")) { +// Material matAdvAlloy = ingotMaterial("AdvancedAlloy", 0xFFBBA8, 1500); +// TinkerRegistry.addMaterialStats(matAdvAlloy, +// new HeadMaterialStats(1600, 13.63f, 13.23f, HarvestLevels.COBALT), +// new HandleMaterialStats(1.85f, 400), new ExtraMaterialStats(500), +// new BowMaterialStats(0.75f, 0.98f, 16f)); +// } +// if (isRegistrable("ruby")) { +// Material matRuby = materialPart("ruby", "gemRuby", 0xCF0000); +// matRuby.addTrait(ModTraits.reflect, MaterialTypes.HEAD); +// TinkerRegistry.addMaterialStats(matRuby, new HeadMaterialStats(600, 10.12f, 6.84f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(0.74f, 100), new ExtraMaterialStats(80), +// new BowMaterialStats(1.97f, 2.26f, 6f)); +// } +// if (isRegistrable("sapphire")) { +// Material matSapphire = materialPart("sapphire", "gemSapphire", 0x0B33D6); +// matSapphire.addTrait(ModTraits.launch, MaterialTypes.HEAD); +// TinkerRegistry.addMaterialStats(matSapphire, +// new HeadMaterialStats(600, 10.12f, 6.84f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(0.74f, 100), new ExtraMaterialStats(80), +// new BowMaterialStats(1.97f, 2.26f, 6f)); +// } +// if (isRegistrable("peridot")) { +// Material matPeridot = materialPart("peridot", "gemPeridot", 0x15E835); +// matPeridot.addTrait(ModTraits.shock, MaterialTypes.HEAD); +// TinkerRegistry.addMaterialStats(matPeridot, +// new HeadMaterialStats(600, 10.12f, 6.84f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(0.74f, 100), new ExtraMaterialStats(80), +// new BowMaterialStats(1.97f, 2.26f, 6f)); +// } +// if (isRegistrable("yellowgarnet")) { +// Material matYellowGarnet = materialPart("yellowgarnet", "gemYellowGarnet", 0xF5F51B); +// matYellowGarnet.addTrait(TinkerTraits.autosmelt); +// matYellowGarnet.addTrait(TinkerTraits.superheat, MaterialTypes.HEAD); +// TinkerRegistry.addMaterialStats(matYellowGarnet, +// new HeadMaterialStats(800, 11.54f, 7.42f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(0.82f, 120), new ExtraMaterialStats(95), +// new BowMaterialStats(1.67f, 2.41f, 7f)); +// } +// if (isRegistrable("redgarnet")) { +// Material matRedGarnet = materialPart("redgarnet", "gemRedGarnet", 0xED2424); +// matRedGarnet.addTrait(ModTraits.healer, MaterialTypes.HEAD); +// TinkerRegistry.addMaterialStats(matRedGarnet, +// new HeadMaterialStats(800, 11.54f, 7.42f, HarvestLevels.OBSIDIAN), +// new HandleMaterialStats(0.82f, 120), new ExtraMaterialStats(95), +// new BowMaterialStats(1.67f, 2.41f, 7f)); +// } +// if (isRegistrable("rubber")) { +// Material matRubber = materialPart("rubber", "itemRubber", 0x5C4F4F); +// matRubber.addTrait(ModTraits.sling); +// TinkerRegistry.addMaterialStats(matRubber, new HeadMaterialStats(14, 0.95f, 0.12f, HarvestLevels.IRON), +// new HandleMaterialStats(0.87f, 10), new ExtraMaterialStats(3), +// new BowMaterialStats(6.42f, 1.42f, 0.3f), new BowStringMaterialStats(2.65f)); +// } +// if (Loader.isModLoaded("appliedenergistics2")) { +// if (isRegistrable("certus")) { +// Item material = Item.REGISTRY.getObject(new ResourceLocation("appliedenergistics2", "material")); +// Material matCertus = new Material("certus", 0xCCE4F0); +// matCertus.addItem(new ItemStack(material, 1, 0), 1, Material.VALUE_Ingot); +// matCertus.setCraftable(true); +// matCertus.setRepresentativeItem(new ItemStack(material, 1, 0)); +// matCertus.addTrait(TinkerTraits.shocking); +// TinkerRegistry.integrate(matCertus); +// TinkerRegistry.addMaterialStats(matCertus, +// new HeadMaterialStats(490, 7.45f, 10.45f, HarvestLevels.IRON), +// new HandleMaterialStats(0.74f, 30), new ExtraMaterialStats(26), +// new BowMaterialStats(2.31f, 1.23f, 12f)); +// } +// if (isRegistrable("fluix")) { +// Item material = Item.REGISTRY.getObject(new ResourceLocation("appliedenergistics2", "material")); +// Material matFluix = new Material("fluix", 0xB04EDE); +// matFluix.addItem(new ItemStack(material, 1, 7), 1, Material.VALUE_Ingot); +// matFluix.setCraftable(true); +// matFluix.setRepresentativeItem(new ItemStack(material, 1, 7)); +// TinkerRegistry.integrate(matFluix); +// TinkerRegistry.addMaterialStats(matFluix, +// new HeadMaterialStats(680, 13.32f, 12.65f, HarvestLevels.DIAMOND), +// new HandleMaterialStats(0.45f, 10), new ExtraMaterialStats(40), +// new BowMaterialStats(2.87f, 4.53f, 14f)); +// } +// } +// } - private static Material ingotMaterial(String name, String oreName, int color, int temp) { - Material material = new Material(name, color); - ModFluids.registerFluid(name, color, temp); - MoarMaterialIntegration m = new MoarMaterialIntegration(oreName, material, FluidRegistry.getFluid(name), null); - m.setRepresentativeItem(oreName).toolforge(); - m.preInit(force); - TinkerRegistry.integrate(m); - - material.addItemIngot(oreName); - material.setCastable(true); - force = false; - return material; - } private static Material materialPart(String name, String oreName, int color) { Material material = new Material(name, color); @@ -786,7 +680,7 @@ private static Material materialPart(String name, String oreName, int color) { private static Material ingotMaterialNoDust(String name, int color, int temp) { Material material = new Material(name.toLowerCase(), color); - material.addCommonItems(RandomHelper.capatilizeString(name)); + material.addCommonItems(org.apache.commons.lang3.StringUtils.capitalize(name)); ModFluids.registerFluid(name.toLowerCase(), color, temp); MaterialIntegrationNoDust m = new MaterialIntegrationNoDust(material, @@ -803,7 +697,7 @@ private static Material ingotMaterialNoDust(String name, int color, int temp) { private static Material ingotMaterialExist(Fluid fluid, String name, int color) { Material material = new Material(name.toLowerCase(), color); - material.addCommonItems(RandomHelper.capatilizeString(name)); + material.addCommonItems(org.apache.commons.lang3.StringUtils.capitalize(name)); MaterialIntegrationExists m = new MaterialIntegrationExists(material, fluid, name); m.setRepresentativeItem("ingot" + name).toolforge(); From 8f8fc25212497b9bac4e95653dfb259d4f0b6bc1 Mon Sep 17 00:00:00 2001 From: YaibaToKen Date: Thu, 17 May 2018 00:18:01 +0100 Subject: [PATCH 5/6] Clean up Melting registration in ModAlloys.java --- .../moartinkers/registry/ModAlloys.java | 35 +++++++++++-------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/bartz24/moartinkers/registry/ModAlloys.java b/src/main/java/com/bartz24/moartinkers/registry/ModAlloys.java index 29f9c67..1df23f8 100644 --- a/src/main/java/com/bartz24/moartinkers/registry/ModAlloys.java +++ b/src/main/java/com/bartz24/moartinkers/registry/ModAlloys.java @@ -3,9 +3,12 @@ import java.util.ArrayList; import java.util.List; +import net.minecraft.block.Block; import net.minecraft.init.Blocks; import net.minecraft.init.Items; +import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fml.common.Loader; @@ -14,6 +17,18 @@ import slimeknights.tconstruct.library.smeltery.MeltingRecipe; public class ModAlloys { + private static void registerMelting(ItemStack itemStack, int amountNeeded, int amountMatched, String fluid, int temperature) { + TinkerRegistry.registerMelting(new MeltingRecipe(new RecipeMatch.Item(itemStack, amountNeeded, amountMatched), FluidRegistry.getFluid(fluid), temperature)); + } + + private static void registerMelting(Item item, int amountNeeded, int amountMatched, String fluid, int temperature) { + registerMelting(new ItemStack(item), amountNeeded, amountMatched, fluid, temperature); + } + + private static void registerMelting(Block block, int amountNeeded, int amountMatched, String fluid, int temperature) { + registerMelting(new ItemStack(block), amountNeeded, amountMatched, fluid, temperature); + } + public static void init() { registerAlloy("signalum*144", "redstone*250", "copper*108", "silver*36"); registerAlloy("lumium*144", "glowstone*250", "tin*108", "silver*36"); @@ -25,21 +40,11 @@ public static void init() { if (Loader.isModLoaded("thermalfoundation")) { TinkerRegistry.registerSmelteryFuel(new FluidStack(FluidRegistry.getFluid("pyrotheum"), 50), 400); - TinkerRegistry - .registerMelting(new MeltingRecipe(new RecipeMatch.Item(new ItemStack(Items.REDSTONE), 1, 100), - FluidRegistry.getFluid("redstone"), 800)); - TinkerRegistry.registerMelting( - new MeltingRecipe(new RecipeMatch.Item(new ItemStack(Blocks.REDSTONE_BLOCK), 1, 900), - FluidRegistry.getFluid("redstone"), 1400)); - TinkerRegistry.registerMelting( - new MeltingRecipe(new RecipeMatch.Item(new ItemStack(Items.GLOWSTONE_DUST), 1, 250), - FluidRegistry.getFluid("glowstone"), 1100)); - TinkerRegistry - .registerMelting(new MeltingRecipe(new RecipeMatch.Item(new ItemStack(Blocks.GLOWSTONE), 1, 1000), - FluidRegistry.getFluid("glowstone"), 1500)); - TinkerRegistry - .registerMelting(new MeltingRecipe(new RecipeMatch.Item(new ItemStack(Items.ENDER_PEARL), 1, 250), - FluidRegistry.getFluid("ender"), 1200)); + registerMelting(Items.REDSTONE, 1, 100, "redstone", 800); + registerMelting(Blocks.REDSTONE_BLOCK, 1, 900, "redstone", 1400); + registerMelting(Items.GLOWSTONE_DUST, 1, 250, "glowstone", 1100); + registerMelting(Blocks.GLOWSTONE, 1, 1000, "glowstone", 1500); + registerMelting(Items.ENDER_PEARL, 1, 250, "ender", 1200); } } From 75ba8780457f3093daa9a95457983871fa00b0de Mon Sep 17 00:00:00 2001 From: YaibaToKen Date: Sat, 19 May 2018 18:10:28 +0100 Subject: [PATCH 6/6] Transit some of the materials into the new system --- .../moartinkers/registry/ModMaterials.java | 77 +++++++++---------- 1 file changed, 36 insertions(+), 41 deletions(-) diff --git a/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java b/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java index 9b033fc..677fa08 100644 --- a/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java +++ b/src/main/java/com/bartz24/moartinkers/registry/ModMaterials.java @@ -18,44 +18,65 @@ public class ModMaterials { private static MaterialRegistration[] materials = new MaterialRegistration[]{ new MaterialRegistration.MaterialRegistrationBuilder() - .setIdentifier("enderium") - .setColor(0x006E61) - .setTemp(1200) + .setIdentifier("enderium").setColor(0x006E61).setTemp(1200) .setTraits( new Tuple[]{ new Tuple(TinkerTraits.enderference, null), new Tuple(ModTraits.enderMagnetic, MaterialTypes.HEAD) }) .setHead(1020, 8.31f, 10.19f, HarvestLevels.COBALT) - .setHandle(0.42f, 600) - .setExtra(60) + .setHandle(0.42f, 600).setExtra(60) .setBow(1.22f, 1.1f, 5f) .build(), new MaterialRegistration.MaterialRegistrationBuilder() - .setIdentifier("platinum") - .setColor(0x39CAFA) - .setTemp(900) + .setIdentifier("platinum").setColor(0x39CAFA).setTemp(900) .setTraits( new Tuple[]{ new Tuple(TinkerTraits.dense, null) }) .setHead(1410, 9.47f, 7.39f, HarvestLevels.OBSIDIAN) - .setHandle(0.78f, 600) - .setExtra(120) + .setHandle(0.78f, 600).setExtra(120) .setBow(0.67f, 0.6f, 3f) .build(), new MaterialRegistration.MaterialRegistrationBuilder() - .setIdentifier("iridium") - .setColor(0xEBEBEB) - .setTemp(1500) + .setIdentifier("iridium").setColor(0xEBEBEB).setTemp(1500) .setTraits( new Tuple[]{ new Tuple(ModTraits.weee, MaterialTypes.HEAD) }) .setHead(1910, 11.02f, 9.95f, HarvestLevels.OBSIDIAN) - .setHandle(0.83f, 500) - .setExtra(200) + .setHandle(0.83f, 500).setExtra(200) .setBow(0.23f, 1.44f, 5f) + .build(), + new MaterialRegistration.MaterialRegistrationBuilder() + .setIdentifier("mithril").setColor(0x2095B0).setTemp(1350) + .setTraits( + new Tuple[]{ + new Tuple(ModTraits.sos, null) + }) + .setHead(1160, 13.02f, 7.03f, HarvestLevels.COBALT) + .setHandle(0.49f, 200).setExtra(30) + .setBow(1.87f, 1.23f, 3f) + .build(), + new MaterialRegistration.MaterialRegistrationBuilder() + .setIdentifier("signalum").setColor(0xE65B10).setTemp(950) + .setTraits( + new Tuple[]{ + new Tuple(TinkerTraits.unnatural, null) + }) + .setHead(740, 12.42f, 6.37f, HarvestLevels.OBSIDIAN) + .setHandle(0.52f, 100).setExtra(40) + .setBow(3.24f, 0.78f, 3f) + .build(), + new MaterialRegistration.MaterialRegistrationBuilder() + .setIdentifier("Lumium").setColor(0xFFFCB0).setTemp(1000) + .setTraits( + new Tuple[]{ + new Tuple(ModTraits.lightboost, null) + }) + .setHead(600, 0.6f, 8.34f, HarvestLevels.OBSIDIAN) + .setHandle(0.44f, 90).setExtra(20) + .setBow(2.89f, 2.36f, 9f) .build() }; @@ -65,32 +86,6 @@ public static void preInit() { materialRegistration.register(); } } -// if (isRegistrable("mithril")) { -// Material matMithril = ingotMaterial("Mithril", 0x2095B0, 1350); -// matMithril.addTrait(ModTraits.sos); -// TinkerRegistry.addMaterialStats(matMithril, -// new HeadMaterialStats(1160, 13.02f, 7.03f, HarvestLevels.COBALT), -// new HandleMaterialStats(0.49f, 200), new ExtraMaterialStats(30), -// new BowMaterialStats(1.87f, 1.12f, 3f)); -// } -// -// if (isRegistrable("signalum")) { -// Material matSignalum = ingotMaterial("Signalum", 0xE65B10, 950); -// matSignalum.addTrait(TinkerTraits.unnatural); -// TinkerRegistry.addMaterialStats(matSignalum, -// new HeadMaterialStats(740, 12.42f, 6.37f, HarvestLevels.OBSIDIAN), -// new HandleMaterialStats(0.52f, 100), new ExtraMaterialStats(40), -// new BowMaterialStats(3.24f, 0.78f, 3f)); -// } -// -// if (isRegistrable("lumium")) { -// Material matLumium = ingotMaterial("Lumium", 0xFFFCB0, 1000); -// matLumium.addTrait(ModTraits.lightboost); -// TinkerRegistry.addMaterialStats(matLumium, new HeadMaterialStats(600, 8.60f, 8.34f, HarvestLevels.OBSIDIAN), -// new HandleMaterialStats(0.44f, 90), new ExtraMaterialStats(20), -// new BowMaterialStats(2.89f, 2.36f, 9f)); -// } -// // if (isRegistrable("constantan") && !Loader.isModLoaded("immersiveengineering")) { // Material matConstantan = ingotMaterial("Constantan", 0xD9B34A, 500); // matConstantan.addTrait(ModTraits.constant);