diff options
Diffstat (limited to 'src/Java/gtPlusPlus/core')
16 files changed, 394 insertions, 98 deletions
diff --git a/src/Java/gtPlusPlus/core/block/ModBlocks.java b/src/Java/gtPlusPlus/core/block/ModBlocks.java index 4bc5908f98..db9ad2264c 100644 --- a/src/Java/gtPlusPlus/core/block/ModBlocks.java +++ b/src/Java/gtPlusPlus/core/block/ModBlocks.java @@ -55,7 +55,8 @@ public final class ModBlocks { public static Block blockCasingsMisc; public static Block blockCasings2Misc; public static Block blockCasings3Misc; - public static Block blockCasings4Misc; + public static Block blockCasings4Misc; + public static Block blockCasingsTieredGTPP; public static Block blockMetaTileEntity; public static Block blockHeliumGenerator; @@ -97,7 +98,6 @@ public final class ModBlocks { public static Block blockPooCollector; public static Block blockPestKiller; - public static GregtechMetaTieredCasingBlocks1 BlockTieredCasings1; public static void init() { Logger.INFO("Initializing Blocks."); diff --git a/src/Java/gtPlusPlus/core/config/ConfigHandler.java b/src/Java/gtPlusPlus/core/config/ConfigHandler.java index ecaf031030..61e7045192 100644 --- a/src/Java/gtPlusPlus/core/config/ConfigHandler.java +++ b/src/Java/gtPlusPlus/core/config/ConfigHandler.java @@ -113,6 +113,9 @@ public class ConfigHandler { "gregtech", true, "Very basic automated cauldron for dust washing."); enableMachine_Pollution = config.getBoolean("enableMachinePollution", "gregtech", true, "Pollution Detector & Scrubbers."); + enableMachine_RF_Convetor = config.getBoolean("enableMachineRFConvetor", "gregtech", + true, "Converts RF to GTEU. Requires COFH-Core to be installed."); + // Multi machines enableMultiblock_AlloyBlastSmelter = config.getBoolean("enableMultiblockAlloyBlastSmelter", diff --git a/src/Java/gtPlusPlus/core/handler/BookHandler.java b/src/Java/gtPlusPlus/core/handler/BookHandler.java index 860946f513..d9d3efe680 100644 --- a/src/Java/gtPlusPlus/core/handler/BookHandler.java +++ b/src/Java/gtPlusPlus/core/handler/BookHandler.java @@ -125,7 +125,7 @@ public class BookHandler { "The Mode can be set by using a Screwdriver on the controller block. Each mode allows the use of Numbered Circuits, to allow a different machine 'type' for each input bus.", "[Metal Work] Mode A - Allows the multiblock to function as a Compressor, a Lathe or an Electro-Magnet. To allow a hatch to run in Compressor mode, insert a No. 20 circuit. For Lathe, use No. 21 and for Electro-Magnet use No. 22.", "[Fluid Work] Mode B - Allows the multiblock to function as a Fermenter, a Fluid Extractor or an Extractor. To allow a hatch to run in Fermenter mode, insert a No. 20 circuit. For Fluid Extractor, use No. 21 and for Extractor use No. 22.", - "[Misc. Work] Mode C - Allows the multiblock to function as a Laser Engraver, a Replicator or an Autoclave. To allow a hatch to run in Laser Engraver mode, insert a No. 20 circuit. For Autoclave, use No. 21 and for Replicator use No. 22. REPLICATOR DISABLED.", + "[Misc. Work] Mode C - Allows the multiblock to function as a Laser Engraver, an Autoclave or a Fluid Solidifier. To allow a hatch to run in Laser Engraver mode, insert a No. 20 circuit. For Autoclave, use No. 21 and for Solidifier use No. 22.", }); book_NuclearManual = writeBookTemplate( diff --git a/src/Java/gtPlusPlus/core/handler/COMPAT_HANDLER.java b/src/Java/gtPlusPlus/core/handler/COMPAT_HANDLER.java index be02e352c7..d7c971e71f 100644 --- a/src/Java/gtPlusPlus/core/handler/COMPAT_HANDLER.java +++ b/src/Java/gtPlusPlus/core/handler/COMPAT_HANDLER.java @@ -68,6 +68,7 @@ import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialCuttingF import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialElectrolyzer; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialExtruder; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialFishPond; +import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialAlloySmelter; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialFuelRefinery; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialGeneratorArray; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialMacerator; @@ -216,6 +217,7 @@ public class COMPAT_HANDLER { GregtechPowerBreakers.run(); GregtechFluidReactor.run(); GregtechAlgaeContent.run(); + GregtechIndustrialAlloySmelter.run(); //New Horizons Content NewHorizonsAccelerator.run(); diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java index 114750d2d9..354107147b 100644 --- a/src/Java/gtPlusPlus/core/item/ModItems.java +++ b/src/Java/gtPlusPlus/core/item/ModItems.java @@ -4,7 +4,6 @@ import static gtPlusPlus.core.creative.AddToCreativeTab.tabMisc; import static gtPlusPlus.core.lib.CORE.LOAD_ALL_CONTENT; import cpw.mods.fml.common.registry.GameRegistry; -import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.util.GT_OreDictUnificator; import gtPlusPlus.api.objects.Logger; @@ -14,7 +13,6 @@ import gtPlusPlus.core.common.compat.COMPAT_Baubles; import gtPlusPlus.core.creative.AddToCreativeTab; import gtPlusPlus.core.item.base.BaseEuItem; import gtPlusPlus.core.item.base.BaseItemBackpack; -import gtPlusPlus.core.item.base.BaseItemBurnable; import gtPlusPlus.core.item.base.BaseItemComponent.ComponentTypes; import gtPlusPlus.core.item.base.BaseItemDamageable; import gtPlusPlus.core.item.base.BaseItemTCShard; @@ -55,7 +53,6 @@ import gtPlusPlus.core.item.general.ItemGenericToken; import gtPlusPlus.core.item.general.ItemGiantEgg; import gtPlusPlus.core.item.general.ItemHalfCompleteCasings; import gtPlusPlus.core.item.general.ItemLavaFilter; -import gtPlusPlus.core.item.general.RF2EU_Battery; import gtPlusPlus.core.item.general.books.ItemBaseBook; import gtPlusPlus.core.item.general.capture.ItemEntityCatcher; import gtPlusPlus.core.item.general.chassis.ItemBoilerChassis; @@ -97,6 +94,7 @@ import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.core.util.minecraft.MaterialUtils; import gtPlusPlus.core.util.reflect.ReflectionUtils; import gtPlusPlus.everglades.GTplusplus_Everglades; +import gtPlusPlus.xmod.cofh.HANDLER_COFH; import gtPlusPlus.xmod.eio.material.MaterialEIO; import gtPlusPlus.xmod.gregtech.common.items.MetaGeneratedGregtechItems; import net.minecraft.item.EnumRarity; @@ -1135,10 +1133,6 @@ public final class ModItems { if (LoadedMods.IndustrialCraft2|| LOAD_ALL_CONTENT){ Logger.INFO("IndustrialCraft2 Found - Loading Resources."); - if (LoadedMods.CoFHCore) { - RfEuBattery = new RF2EU_Battery(); - } - //Baubles Mod Test try { final Class<?> baublesTest = ReflectionUtils.getClass("baubles.api.IBauble"); @@ -1167,7 +1161,7 @@ public final class ModItems { //UtilsItems.generateSpawnEgg("ic2", "boatcarbon", Utils.generateSingularRandomHexValue(), Utils.generateSingularRandomHexValue()); - + HANDLER_COFH.initItems(); /* * Misc Items diff --git a/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java b/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java index 6e5b47041f..49d3303688 100644 --- a/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java +++ b/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java @@ -87,7 +87,7 @@ public class GenericChem extends ItemPackage { // Phenol Byproducts public Item PhenolicResins; //https://en.wikipedia.org/wiki/Phenol_formaldehyde_resin - public ItemGenericChemBase mGenericChemItem1; + public static ItemGenericChemBase mGenericChemItem1; @@ -112,6 +112,7 @@ public class GenericChem extends ItemPackage { public static ItemStack mOrangeCatalyst; public static ItemStack mPurpleCatalyst; public static ItemStack mBrownCatalyst; + public static ItemStack mPinkCatalyst; public void registerItemStacks() { @@ -124,6 +125,7 @@ public class GenericChem extends ItemPackage { mOrangeCatalyst = ItemUtils.simpleMetaStack(mGenericChemItem1, 3, 1); mPurpleCatalyst = ItemUtils.simpleMetaStack(mGenericChemItem1, 4, 1); mBrownCatalyst = ItemUtils.simpleMetaStack(mGenericChemItem1, 5, 1); + mPinkCatalyst = ItemUtils.simpleMetaStack(mGenericChemItem1, 6, 1); } @@ -135,6 +137,7 @@ public class GenericChem extends ItemPackage { ItemUtils.addItemToOreDictionary(mOrangeCatalyst, "catalystVanadiumPalladium"); ItemUtils.addItemToOreDictionary(mPurpleCatalyst, "catalystIridiumRuthenium"); ItemUtils.addItemToOreDictionary(mBrownCatalyst, "catalystNickelAluminium"); + ItemUtils.addItemToOreDictionary(mPinkCatalyst, "catalystPlatinumRhodium"); } @@ -206,6 +209,7 @@ public class GenericChem extends ItemPackage { recipeCatalystOrange(); recipeCatalystPurple(); recipeCatalystBrown(); + recipeCatalystPink(); recipeNitroBenzene(); recipeAniline(); @@ -224,7 +228,7 @@ public class GenericChem extends ItemPackage { private void recipeCyclohexane() { - CORE.RA.addFluidReactorRecipe( + CORE.RA.addChemicalPlantRecipe( new ItemStack[] { getTierTwoChip(), ItemUtils.getSimpleStack(mBrownCatalyst, 0) @@ -247,7 +251,7 @@ public class GenericChem extends ItemPackage { private void recipeCyclohexanone() { - CORE.RA.addFluidReactorRecipe( + CORE.RA.addChemicalPlantRecipe( new ItemStack[] { getTierTwoChip(), ItemUtils.getSimpleStack(mBlueCatalyst, 0) @@ -266,7 +270,7 @@ public class GenericChem extends ItemPackage { 120, 2); - CORE.RA.addFluidReactorRecipe( + CORE.RA.addChemicalPlantRecipe( new ItemStack[] { getTierTwoChip(), }, @@ -293,7 +297,7 @@ public class GenericChem extends ItemPackage { // Assembly Recipe CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] { getTierOneChip(), - ItemUtils.getSimpleStack(AgriculturalChem.mCatalystCarrier, 10), + CI.getEmptyCatalyst(10), ELEMENT.getInstance().IRON.getDust(2), ELEMENT.getInstance().COPPER.getDust(2), }, @@ -308,7 +312,7 @@ public class GenericChem extends ItemPackage { // Assembly Recipe CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] { getTierThreeChip(), - ItemUtils.getSimpleStack(AgriculturalChem.mCatalystCarrier, 10), + CI.getEmptyCatalyst(10), ELEMENT.getInstance().TUNGSTEN.getDust(4), ELEMENT.getInstance().NICKEL.getDust(4), }, @@ -323,7 +327,7 @@ public class GenericChem extends ItemPackage { // Assembly Recipe CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] { getTierTwoChip(), - ItemUtils.getSimpleStack(AgriculturalChem.mCatalystCarrier, 10), + CI.getEmptyCatalyst(10), ELEMENT.getInstance().COBALT.getDust(3), ELEMENT.getInstance().TITANIUM.getDust(3), }, @@ -338,7 +342,7 @@ public class GenericChem extends ItemPackage { // Assembly Recipe CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] { getTierTwoChip(), - ItemUtils.getSimpleStack(AgriculturalChem.mCatalystCarrier, 10), + CI.getEmptyCatalyst(10), ELEMENT.getInstance().VANADIUM.getDust(5), ELEMENT.getInstance().PALLADIUM.getDust(5), }, @@ -353,7 +357,7 @@ public class GenericChem extends ItemPackage { // Assembly Recipe CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] { getTierFourChip(), - ItemUtils.getSimpleStack(AgriculturalChem.mCatalystCarrier, 10), + CI.getEmptyCatalyst(10), ELEMENT.getInstance().IRIDIUM.getDust(6), ELEMENT.getInstance().RUTHENIUM.getDust(6), }, @@ -368,7 +372,7 @@ public class GenericChem extends ItemPackage { // Assembly Recipe CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] { getTierOneChip(), - ItemUtils.getSimpleStack(AgriculturalChem.mCatalystCarrier, 10), + CI.getEmptyCatalyst(10), ELEMENT.getInstance().NICKEL.getDust(4), ELEMENT.getInstance().ALUMINIUM.getDust(4), }, @@ -379,10 +383,25 @@ public class GenericChem extends ItemPackage { } + private void recipeCatalystPink() { + // Assembly Recipe + CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] { + getTierThreeChip(), + CI.getEmptyCatalyst(10), + ELEMENT.getInstance().PLATINUM.getDust(4), + ELEMENT.getInstance().RHODIUM.getDust(4), + }, + GT_Values.NF, + ItemUtils.getSimpleStack(mPinkCatalyst, 10), + 30 * 20, + 2000); + + } + private void recipeCadaverineAndPutrescine() { // Basic Recipe - CORE.RA.addFluidReactorRecipe( + CORE.RA.addChemicalPlantRecipe( new ItemStack[] { getTierOneChip(), ItemUtils.getSimpleStack(Items.rotten_flesh, 64) @@ -402,7 +421,7 @@ public class GenericChem extends ItemPackage { 1); // Advanced Recipe - CORE.RA.addFluidReactorRecipe( + CORE.RA.addChemicalPlantRecipe( new ItemStack[] { getTierTwoChip(), ItemUtils.getSimpleStack(Items.rotten_flesh, 128), @@ -426,7 +445,7 @@ public class GenericChem extends ItemPackage { private void recipeAniline() { - CORE.RA.addFluidReactorRecipe( + CORE.RA.addChemicalPlantRecipe( new ItemStack[] { getTierThreeChip(), ItemUtils.getSimpleStack(mBlueCatalyst, 0) @@ -449,7 +468,7 @@ public class GenericChem extends ItemPackage { private void recipeNitroBenzene() { - CORE.RA.addFluidReactorRecipe( + CORE.RA.addChemicalPlantRecipe( new ItemStack[] { getTierThreeChip(), }, @@ -474,7 +493,7 @@ public class GenericChem extends ItemPackage { private void recipe2Ethylanthraquinone() { - CORE.RA.addFluidReactorRecipe( + CORE.RA.addChemicalPlantRecipe( new ItemStack[] { CI.getNumberedCircuit(4), ItemUtils.getItemStackOfAmountFromOreDict("dustPhthalicAnhydride", 4), @@ -504,7 +523,7 @@ public class GenericChem extends ItemPackage { private void recipe2Ethylanthrahydroquinone() { - CORE.RA.addFluidReactorRecipe( + CORE.RA.addChemicalPlantRecipe( new ItemStack[] { CI.getNumberedCircuit(4), ItemUtils.getSimpleStack(mOrangeCatalyst, 0), @@ -553,7 +572,7 @@ public class GenericChem extends ItemPackage { private void recipeLithiumHydroperoxide() { - CORE.RA.addFluidReactorRecipe( + CORE.RA.addChemicalPlantRecipe( new ItemStack[] { CI.getNumberedCircuit(4), ItemUtils.getItemStackOfAmountFromOreDict("dustLithiumHydroxide", 7), @@ -587,7 +606,7 @@ public class GenericChem extends ItemPackage { private void recipeHydrogenPeroxide() { - CORE.RA.addFluidReactorRecipe( + CORE.RA.addChemicalPlantRecipe( new ItemStack[] { CI.getNumberedCircuit(4), }, diff --git a/src/Java/gtPlusPlus/core/item/chemistry/general/ItemGenericChemBase.java b/src/Java/gtPlusPlus/core/item/chemistry/general/ItemGenericChemBase.java index 8a003ec7aa..208fecd57c 100644 --- a/src/Java/gtPlusPlus/core/item/chemistry/general/ItemGenericChemBase.java +++ b/src/Java/gtPlusPlus/core/item/chemistry/general/ItemGenericChemBase.java @@ -19,7 +19,7 @@ public class ItemGenericChemBase extends Item { final protected IIcon base[]; - final private int aMetaSize = 6; + final private int aMetaSize = 7; /* * 0 - Red Metal Catalyst //FeCu @@ -28,6 +28,7 @@ public class ItemGenericChemBase extends Item { * 3 - Orange Metal Catalyst //Vanadium Pd * 4 - Purple Metal Catalyst //IrIdium Ruthenium * 5 - Brown Metal Catalyst //NiAl + * 6 - Pink Metal Catalyst //PtRh * */ diff --git a/src/Java/gtPlusPlus/core/lib/CORE.java b/src/Java/gtPlusPlus/core/lib/CORE.java index 2a267dc16d..34d7475df3 100644 --- a/src/Java/gtPlusPlus/core/lib/CORE.java +++ b/src/Java/gtPlusPlus/core/lib/CORE.java @@ -237,6 +237,7 @@ public class CORE { public static boolean enableMachine_ComponentAssemblers = false; public static boolean enableCustom_Pipes = true; public static boolean enableCustom_Cables = true; + public static boolean enableMachine_RF_Convetor = false; //Multiblocks public static boolean enableMultiblock_AlloyBlastSmelter = true; diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java index 74c8ce4202..f1676689e7 100644 --- a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java +++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java @@ -17,6 +17,7 @@ import gregtech.api.util.ThermalFuel; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.core.item.ModItems; +import gtPlusPlus.core.item.chemistry.AgriculturalChem; import gtPlusPlus.core.item.chemistry.GenericChem; import gtPlusPlus.core.item.chemistry.IonParticles; import gtPlusPlus.core.item.chemistry.RocketFuels; @@ -39,6 +40,7 @@ import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.core.util.minecraft.MaterialUtils; import gtPlusPlus.core.util.reflect.AddGregtechRecipe; import gtPlusPlus.everglades.dimension.Dimension_Everglades; +import gtPlusPlus.plugin.agrichem.BioRecipes; import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; import net.minecraft.init.Blocks; import net.minecraft.init.Items; @@ -91,6 +93,7 @@ public class RECIPES_GREGTECH { latheRecipes(); vacuumFreezerRecipes(); fluidheaterRecipes(); + chemplantRecipes(); /** @@ -107,6 +110,30 @@ public class RECIPES_GREGTECH { addFuels(); } + private static void chemplantRecipes() { + + // Advanced method for Nitric Acid Production + /* CORE.RA.addChemicalPlantRecipe( + new ItemStack[] { + CI.getNumberedBioCircuit(17), + CI.getPinkCatalyst(0), + }, + new FluidStack[] { + FluidUtils.getLava(10000), + FluidUtils.getDistilledWater(5000) + }, + new ItemStack[] { + + }, + new FluidStack[] { + FluidUtils.getFluidStack("nitricacid", 2000), + }, + 10 * 20, + 480, + 3);*/ + + } + private static void fluidheaterRecipes() { GT_Values.RA.addFluidHeaterRecipe(CI.getNumberedCircuit(20), FluidUtils.getWater(1000), FluidUtils.getHotWater(1000), 30, 30); @@ -511,6 +538,30 @@ public class RECIPES_GREGTECH { private static void laserEngraverRecipes() { + // Laser Sensors and Emitters together + GregtechItemList[] aTransParts = new GregtechItemList[] { + GregtechItemList.TransmissionComponent_ULV, + GregtechItemList.TransmissionComponent_LV, + GregtechItemList.TransmissionComponent_MV, + GregtechItemList.TransmissionComponent_HV, + GregtechItemList.TransmissionComponent_EV, + GregtechItemList.TransmissionComponent_IV, + GregtechItemList.TransmissionComponent_LuV, + GregtechItemList.TransmissionComponent_ZPM, + GregtechItemList.TransmissionComponent_UV, + GregtechItemList.TransmissionComponent_MAX, + }; + for (int i=0;i<10;i++) { + GT_Values.RA.addLaserEngraverRecipe( + CI.getEmitter(i, 2), + CI.getSensor(i, 2), + aTransParts[i].get(1), + 20 * 5, + MaterialUtils.getVoltageForTier(i)); + } + + + GT_Values.RA.addLaserEngraverRecipe( GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tungsten, 6L), GregtechItemList.Laser_Lens_Special.get(0), @@ -646,18 +697,18 @@ public class RECIPES_GREGTECH { new int[] {10000}, //Output Chance 20 * 120, 30720); - + //NITINOL_60 CORE.RA.addBlastSmelterRecipe( new ItemStack[] { - ELEMENT.getInstance().TITANIUM.getDust(3), - ELEMENT.getInstance().NICKEL.getDust(2) + ELEMENT.getInstance().TITANIUM.getDust(3), + ELEMENT.getInstance().NICKEL.getDust(2) }, - ALLOY.NITINOL_60.getFluid(20 * 144), + ALLOY.NITINOL_60.getFluid(5 * 144), 0, 20 * 75, 7680); - + @@ -847,13 +898,13 @@ public class RECIPES_GREGTECH { //Gelid Cryotheum CORE.RA.addFluidExtractionRecipe(ItemUtils.getItemStackOfAmountFromOreDict("dustCryotheum", 1), FluidUtils.getFluidStack("cryotheum", 250), 200, 240); - + //Ender Fluid CORE.RA.addFluidExtractionRecipe(ItemUtils.getSimpleStack(Items.ender_pearl), FluidUtils.getFluidStack("ender", 250), 100, 30); - + //Blazing Pyrotheum CORE.RA.addFluidExtractionRecipe(ItemUtils.getItemStackOfAmountFromOreDict("dustPyrotheum", 1), FluidUtils.getFluidStack("pyrotheum", 250), 200, 240); - + } @@ -1568,10 +1619,10 @@ public class RECIPES_GREGTECH { GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Invar, 8L), GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Invar, 4L), GregtechItemList.Fluid_Cell_144L.get(1L, new Object[0]), 75, 32); } } - + if (LoadedMods.Baubles) { - + // Turbine Housing Research Page @@ -1600,8 +1651,8 @@ public class RECIPES_GREGTECH { ItemDummyResearch.getResearchStack(ASSEMBLY_LINE_RESEARCH.RESEARCH_9_CLOAKING, 1), 20 * 60 * 10, (int) GT_Values.V[7]); - - + + // Supreme Pizza Gloves CORE.RA.addSixSlotAssemblingRecipe(new ItemStack[] { ItemUtils.getGregtechCircuit(19), diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java index d703bb9637..2165f27ec7 100644 --- a/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java +++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java @@ -253,7 +253,7 @@ public class RECIPES_Machines { CI.getTieredComponentOfMaterial(Materials.Steel, OrePrefixes.gearGt, 6), CI.getTieredComponentOfMaterial(Materials.Aluminium, OrePrefixes.plate, 32), CI.getTieredComponentOfMaterial(Materials.CobaltBrass, OrePrefixes.dust, 16), - ALLOY.STAINLESS_STEEL.getFrameBox(4), + CI.getTieredComponent(OrePrefixes.frameGt, 2, 4), }, ALLOY.STEEL.getFluid(2 * (144 * 4)), GregtechItemList.ChemicalPlant_Controller.get(1), @@ -293,7 +293,7 @@ public class RECIPES_Machines { private static void distillus() { - CORE.RA.addFluidReactorRecipe( + CORE.RA.addChemicalPlantRecipe( new ItemStack[] { CI.getNumberedBioCircuit(19), ItemList.Distillation_Tower.get(2), @@ -338,7 +338,7 @@ public class RECIPES_Machines { CI.getElectricPiston(i, 10), CI.getFieldGenerator(i + 1, 6), CI.getPlate(i, 16), - CI.getEmitter(i - 1, 24), + CI.getTransmissionComponent(i - 1, 8), CI.getTieredComponent(OrePrefixes.cableGt08, i, 16) }, ALLOY.EGLIN_STEEL.getFluid(i * (144 * 4)), @@ -394,14 +394,14 @@ public class RECIPES_Machines { for (int i=0;i<10;i++) { CORE.RA.addSixSlotAssemblingRecipe( new ItemStack[] { - CI.getNumberedBioCircuit(22), + CI.getNumberedBioCircuit(20), CI.getTieredMachineCasing(i), CI.getPlate(i, 8), CI.getGear(i, 2), CI.getTieredComponent(OrePrefixes.cableGt02, i, 4), CI.getTieredComponent(OrePrefixes.circuit, i, 2) }, - CI.getTieredFluid(i, 144 * i * 2), + CI.getAlternativeTieredFluid(i, 144 * i * 2), aHulls[i].get(1), 20 * 20, MaterialUtils.getVoltageForTier(i)); @@ -605,6 +605,16 @@ public class RECIPES_Machines { plateEnergeticAlloy, pipeLargeCopper, plateEnergeticAlloy, RECIPE_SteamCondenser); } + + + //Steam Condenser + if (LoadedMods.CoFHCore && CORE.ConfigSwitches.enableMachine_RF_Convetor){ + RecipeUtils.addShapedGregtechRecipe( + CI.getPlate(4, 1), CI.getTieredCircuitOreDictName(5), CI.getPlate(4, 1), + CI.getTransmissionComponent(3, 1), CI.getTieredGTPPMachineCasing(4, 1), CI.getTransmissionComponent(3, 1), + CI.getPlate(4, 1), plateEnergeticAlloy, CI.getPlate(4, 1), + GregtechItemList.Energy_Buffer_RF_Convertor.get(1)); + } if (CORE.ConfigSwitches.enableMultiblock_IronBlastFurnace){ @@ -1488,8 +1498,7 @@ public class RECIPES_Machines { GregtechItemList.Casing_Refinery_Structural.get(4), ItemUtils.getSimpleStack(ModItems.itemCircuitLFTR, GTNH ? 2 : 1), CI.getTieredComponent(OrePrefixes.cableGt08, GTNH ? 7 : 6, GTNH ? 32 : 16), - CI.getEmitter(GTNH ? 6 : 5, 2), - CI.getSensor(GTNH ? 6 : 5, 2), + CI.getTransmissionComponent(GTNH ? 6 : 5, 2), GregtechItemList.Gregtech_Computer_Cube.get(1), }, CI.getTieredFluid(7, 144 * (GTNH ? 32 : 8)), GregtechItemList.GT4_Multi_Crafter.get(1), @@ -2178,8 +2187,7 @@ public class RECIPES_Machines { int aTier = (i + 1); ItemStack[] aInputs = new ItemStack[] { CI.getTieredMachineHull(i, 1 * aCostMultiplier), - CI.getEmitter(i, 2 * aCostMultiplier), - CI.getSensor(i, 2 * aCostMultiplier), + CI.getTransmissionComponent(i, 2 * aCostMultiplier), CI.getFieldGenerator(i, 1 * aCostMultiplier), CI.getTieredComponent(OrePrefixes.plate, aTier, 4 * aCostMultiplier), CI.getTieredComponent(OrePrefixes.circuit, aTier, 2 * aCostMultiplier), @@ -2199,9 +2207,8 @@ public class RECIPES_Machines { CORE.RA.addSixSlotAssemblingRecipe( new ItemStack[] { CI.getTieredMachineHull(-1, 1 * aCostMultiplier), - CI.getEmitter(2, 2 * aCostMultiplier), + CI.getTransmissionComponent(2, 2 * aCostMultiplier), CI.getElectricPiston(4, 2 * aCostMultiplier), - CI.getSensor(4, 1 * aCostMultiplier), CI.getTieredComponent(OrePrefixes.plate, 5, 4 * aCostMultiplier), CI.getTieredComponent(OrePrefixes.pipeSmall, 4, 1 * aCostMultiplier), }, diff --git a/src/Java/gtPlusPlus/core/recipe/common/CI.java b/src/Java/gtPlusPlus/core/recipe/common/CI.java index 6b8f992266..1d3d386da3 100644 --- a/src/Java/gtPlusPlus/core/recipe/common/CI.java +++ b/src/Java/gtPlusPlus/core/recipe/common/CI.java @@ -7,6 +7,7 @@ import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.item.chemistry.AgriculturalChem; +import gtPlusPlus.core.item.chemistry.GenericChem; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.lib.LoadedMods; import gtPlusPlus.core.material.ALLOY; @@ -564,7 +565,7 @@ public class CI { private static final Material[] aMaterial_Secondary = new Material[] { ALLOY.STEEL, ALLOY.SILICON_CARBIDE, - ALLOY.TUNGSTEN_CARBIDE, + ALLOY.BABBIT_ALLOY, ALLOY.INCONEL_690, ALLOY.STELLITE, ALLOY.ARCANITE, @@ -579,7 +580,7 @@ public class CI { private static final Material[] aMaterial_Tertiary = new Material[] { ELEMENT.getInstance().LEAD, ELEMENT.getInstance().ALUMINIUM, - ALLOY.STAINLESS_STEEL, + ELEMENT.STANDALONE.BLACK_METAL, ELEMENT.getInstance().TUNGSTEN, ALLOY.HASTELLOY_N, ALLOY.ENERGYCRYSTAL, @@ -1264,4 +1265,96 @@ public class CI { return ItemUtils.getOrePrefixStack(aPrefix, aMaterial, aAmount); } + public static ItemStack getTransmissionComponent(int aTier, int aAmount) { + GregtechItemList[] aTransParts = new GregtechItemList[] { + GregtechItemList.TransmissionComponent_ULV, + GregtechItemList.TransmissionComponent_LV, + GregtechItemList.TransmissionComponent_MV, + GregtechItemList.TransmissionComponent_HV, + GregtechItemList.TransmissionComponent_EV, + GregtechItemList.TransmissionComponent_IV, + GregtechItemList.TransmissionComponent_LuV, + GregtechItemList.TransmissionComponent_ZPM, + GregtechItemList.TransmissionComponent_UV, + GregtechItemList.TransmissionComponent_MAX, + }; + return aTransParts[aTier].get(aAmount); + } + + public static ItemStack getEmptyCatalyst(int aAmount) { + return ItemUtils.simpleMetaStack(AgriculturalChem.mAgrichemItem1, 13, aAmount); + } + + /** + * Aluminium + Silver Catalyst + * @param aAmount - Stacksize + * @return - A Catalyst stack of given size + */ + public static ItemStack getGreenCatalyst(int aAmount) { + return ItemUtils.simpleMetaStack(AgriculturalChem.mAgrichemItem1, 14, aAmount); + } + + /** + * Iron + Copper Catalyst + * @param aAmount - Stacksize + * @return - A Catalyst stack of given size + */ + public static ItemStack getRedCatalyst(int aAmount) { + return ItemUtils.simpleMetaStack(GenericChem.mGenericChemItem1, 0, aAmount); + } + + /** + * Tungsten + Nickel Catalyst + * @param aAmount - Stacksize + * @return - A Catalyst stack of given size + */ + public static ItemStack getYellowCatalyst(int aAmount) { + return ItemUtils.simpleMetaStack(GenericChem.mGenericChemItem1, 1, aAmount); + } + + /** + * Cobalt + Titanium Catalyst + * @param aAmount - Stacksize + * @return - A Catalyst stack of given size + */ + public static ItemStack getBlueCatalyst(int aAmount) { + return ItemUtils.simpleMetaStack(GenericChem.mGenericChemItem1, 2, aAmount); + } + + /** + * Vanadium + Palladium Catalyst + * @param aAmount - Stacksize + * @return - A Catalyst stack of given size + */ + public static ItemStack getOrangeCatalyst(int aAmount) { + return ItemUtils.simpleMetaStack(GenericChem.mGenericChemItem1, 3, aAmount); + } + + /** + * Iridium + Ruthenium Catalyst + * @param aAmount - Stacksize + * @return - A Catalyst stack of given size + */ + public static ItemStack getPurpleCatalyst(int aAmount) { + return ItemUtils.simpleMetaStack(GenericChem.mGenericChemItem1, 4, aAmount); + } + + /** + * Aluminium + Nickel Catalyst + * @param aAmount - Stacksize + * @return - A Catalyst stack of given size + */ + public static ItemStack getBrownCatalyst(int aAmount) { + return ItemUtils.simpleMetaStack(GenericChem.mGenericChemItem1, 5, aAmount); + } + + /** + * Platinum + Rhodium Catalyst + * @param aAmount - Stacksize + * @return - A Catalyst stack of given size + */ + public static ItemStack getPinkCatalyst(int aAmount) { + return ItemUtils.simpleMetaStack(GenericChem.mGenericChemItem1, 6, aAmount); + } + } diff --git a/src/Java/gtPlusPlus/core/slots/SlotChemicalPlantInput.java b/src/Java/gtPlusPlus/core/slots/SlotChemicalPlantInput.java index 6cd13dc209..add55b8d27 100644 --- a/src/Java/gtPlusPlus/core/slots/SlotChemicalPlantInput.java +++ b/src/Java/gtPlusPlus/core/slots/SlotChemicalPlantInput.java @@ -20,9 +20,9 @@ public class SlotChemicalPlantInput extends Slot { } public static boolean isItemValidForChemicalPlantSlot(ItemStack aStack) { - boolean validItem = Gregtech_Recipe_Map.sFluidChemicalReactorRecipes.containsInput(aStack); + boolean validItem = Gregtech_Recipe_Map.sChemicalPlantRecipes.containsInput(aStack); if (!validItem) { - for (Recipe_GT f : Gregtech_Recipe_Map.sFluidChemicalReactorRecipes.mRecipeList) { + for (Recipe_GT f : Gregtech_Recipe_Map.sChemicalPlantRecipes.mRecipeList) { if (f.mFluidInputs.length > 0) { for (FluidStack g : f.mFluidInputs) { if (g != null) { diff --git a/src/Java/gtPlusPlus/core/util/data/ArrayUtils.java b/src/Java/gtPlusPlus/core/util/data/ArrayUtils.java index 3e96220995..6f5bb5b453 100644 --- a/src/Java/gtPlusPlus/core/util/data/ArrayUtils.java +++ b/src/Java/gtPlusPlus/core/util/data/ArrayUtils.java @@ -10,6 +10,7 @@ import java.util.Set; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.data.AutoMap; import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.FluidStack; public class ArrayUtils { @@ -88,5 +89,14 @@ public class ArrayUtils { return org.apache.commons.lang3.ArrayUtils.toString(aArray); } + public static <T> Object[] getArrayFromArrayList(ArrayList<T> aArrayList) { + Object[] aGenericArray = new Object[aArrayList.size()]; + int aIndex = 0; + for (T object : aArrayList) { + aGenericArray[aIndex++] = object; + } + return aGenericArray; + } + } diff --git a/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java b/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java index 485436011f..d7d611a1e4 100644 --- a/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java +++ b/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java @@ -25,11 +25,14 @@ import gtPlusPlus.core.item.base.dusts.BaseItemDustUnique; import gtPlusPlus.core.item.base.dusts.decimal.BaseItemCentidust; import gtPlusPlus.core.item.base.dusts.decimal.BaseItemDecidust; import gtPlusPlus.core.item.base.plates.BaseItemPlate_OLD; +import gtPlusPlus.core.item.chemistry.AgriculturalChem; +import gtPlusPlus.core.item.chemistry.GenericChem; import gtPlusPlus.core.item.tool.staballoy.MultiPickaxeBase; import gtPlusPlus.core.item.tool.staballoy.MultiSpadeBase; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.lib.LoadedMods; import gtPlusPlus.core.material.Material; +import gtPlusPlus.core.recipe.common.CI; import gtPlusPlus.core.util.Utils; import gtPlusPlus.core.util.math.MathUtils; import gtPlusPlus.core.util.reflect.ReflectionUtils; @@ -909,46 +912,10 @@ public class ItemUtils { return CORE.burnables.add(new Pair<Integer, ItemStack>(burn, aBurnable)); } - /** - * Quick Block Name Lookup that is friendly to servers and locale. - */ - private static volatile Map<String, String> mLocaleCache = new HashMap<String, String>(); - public static String getLocalizedNameOfBlock(BlockPos pos) { Block block = pos.world.getBlock(pos.xPos, pos.yPos, pos.zPos); int metaData = pos.world.getBlockMetadata(pos.xPos, pos.yPos, pos.zPos); - return getLocalizedNameOfBlock(block, metaData); - } - - public synchronized static String getLocalizedNameOfBlock(Block block, int meta) { - if (block == null || meta < 0) { - return "Bad Block"; - } - String mCacheKey = block.getUnlocalizedName() + ":" + meta; - if (mLocaleCache.containsKey(mCacheKey)) { - // Recache the key if it's invalid. - if (mLocaleCache.get(mCacheKey).toLowerCase().contains(".name")) { - mLocaleCache.remove(mCacheKey); - String mNew = ItemUtils.simpleMetaStack(block, meta, 1).getDisplayName(); - //Logger.INFO("Re-caching "+mNew+" into locale cache."); - mLocaleCache.put(mCacheKey, mNew); - } - //Logger.INFO("Returning Cached Value."); - return mLocaleCache.get(mCacheKey); - } else { - Item item = Item.getItemFromBlock(block); - if (item == null) { - return "Bad Item"; - } - String unlocalizedName = item.getUnlocalizedName(new ItemStack(block, 1, meta)); - String blockName = StatCollector.translateToLocal(unlocalizedName + ".name"); - if (blockName.toLowerCase().contains(".name")) { - blockName = ItemUtils.simpleMetaStack(block, meta, 1).getDisplayName(); - } - mLocaleCache.put(mCacheKey, blockName); - //Logger.INFO("Cached New Value."); - return blockName; - } + return LangUtils.getLocalizedNameOfBlock(block, metaData); } public static boolean checkForInvalidItems(ItemStack mInput) { @@ -1270,7 +1237,7 @@ public class ItemUtils { } public static ItemStack getItemListObject(String aObjectFromExperimentalName, String aReplacementName, int aAmount) { - ItemList aItemListObject = getItemListObject(aReplacementName, aReplacementName); + ItemList aItemListObject = getItemListObject(aObjectFromExperimentalName, aReplacementName); if (aItemListObject == ItemList.NULL || aItemListObject == null) { return null; } @@ -1304,4 +1271,47 @@ public class ItemUtils { } } + public static boolean isControlCircuit(ItemStack aStack) { + if (aStack != null) { + Item aItem = aStack.getItem(); + if (aItem == CI.getNumberedBioCircuit(0).getItem() || aItem == CI.getNumberedCircuit(0).getItem()) { + return true; + } + } + return false; + } + + public static boolean isCatalyst(ItemStack aStack) { + + if (GT_Utility.areStacksEqual(aStack, GenericChem.mBlueCatalyst, true)) { + return true; + } + if (GT_Utility.areStacksEqual(aStack, GenericChem.mBrownCatalyst, true)) { + return true; + } + if (GT_Utility.areStacksEqual(aStack, GenericChem.mOrangeCatalyst, true)) { + return true; + } + if (GT_Utility.areStacksEqual(aStack, GenericChem.mPurpleCatalyst, true)) { + return true; + } + if (GT_Utility.areStacksEqual(aStack, GenericChem.mRedCatalyst, true)) { + return true; + } + if (GT_Utility.areStacksEqual(aStack, GenericChem.mYellowCatalyst, true)) { + return true; + } + if (GT_Utility.areStacksEqual(aStack, GenericChem.mPinkCatalyst, true)) { + return true; + } + if (GT_Utility.areStacksEqual(aStack, AgriculturalChem.mGreenCatalyst, true)) { + return true; + } + return false; + } + + public static String getLocalizedNameOfBlock(Block aBlock, int aMeta) { + return LangUtils.getLocalizedNameOfBlock(aBlock, aMeta); + } + } diff --git a/src/Java/gtPlusPlus/core/util/minecraft/LangUtils.java b/src/Java/gtPlusPlus/core/util/minecraft/LangUtils.java index 01d0efac54..0b24e962af 100644 --- a/src/Java/gtPlusPlus/core/util/minecraft/LangUtils.java +++ b/src/Java/gtPlusPlus/core/util/minecraft/LangUtils.java @@ -7,7 +7,13 @@ import java.util.Properties; import cpw.mods.fml.common.registry.LanguageRegistry; import gregtech.api.util.GT_LanguageManager; +import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.util.reflect.ReflectionUtils; +import net.minecraft.block.Block; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.StatCollector; public class LangUtils { @@ -15,7 +21,7 @@ public class LangUtils { public static boolean rewriteEntryForLanguageRegistry(String aKey, String aNewValue){ return rewriteEntryForLanguageRegistry("en_US", aKey, aNewValue); } - + @SuppressWarnings("unchecked") public static boolean rewriteEntryForLanguageRegistry(String aLang, String aKey, String aNewValue){ LanguageRegistry aInstance = LanguageRegistry.instance(); @@ -43,7 +49,7 @@ public class LangUtils { } } catch (IllegalArgumentException | IllegalAccessException e) { - + } } return false; @@ -52,5 +58,93 @@ public class LangUtils { public static String trans(String aNr, String aEnglish) { return GT_LanguageManager.addStringLocalization("Interaction_DESCRIPTION_Index_GTPP_" + aNr, aEnglish, false); } - + + + + /** + * Quick Block Name Lookup that is friendly to servers and locale. + */ + private static final Map<String, String> mLocaleCache = new HashMap<String, String>(); + + public static String getLocalizedNameOfBlock(Block aBlock, int aMeta) { + if (aBlock != null) { + return getLocalizedNameOfItemStack(ItemUtils.simpleMetaStack(aBlock, aMeta, 1)); + } + return "Bad Block Name"; + } + + public static String getLocalizedNameOfItem(Item aItem, int aMeta) { + if (aItem != null) { + return getLocalizedNameOfItemStack(ItemUtils.simpleMetaStack(aItem, aMeta, 1)); + } + return "Bad Item Name"; + } + + public static String getLocalizedNameOfItemStack(ItemStack aStack) { + String aUnlocalized; + if (aStack != null) { + aUnlocalized = ItemUtils.getUnlocalizedItemName(aStack)+"."+aStack.getItemDamage()+".name"; + if (aUnlocalized == null || aUnlocalized.length() <= 0) { + return "Bad Locale Data"; + } + String mCacheKey = aUnlocalized; + if (mLocaleCache.containsKey(mCacheKey)) { + // Recache the key if it's invalid. + if (mLocaleCache.get(mCacheKey).toLowerCase().contains(".name") || mLocaleCache.get(mCacheKey).toLowerCase().contains("|")) { + mLocaleCache.remove(mCacheKey); + String mNew; + try { + mNew = ("" + StatCollector + .translateToLocal(aStack.getItem().getUnlocalizedNameInefficiently(aStack) + ".name")) + .trim(); + if (aStack.hasTagCompound()) { + if (aStack.stackTagCompound != null && aStack.stackTagCompound.hasKey("display", 10)) { + NBTTagCompound nbttagcompound = aStack.stackTagCompound.getCompoundTag("display"); + + if (nbttagcompound.hasKey("Name", 8)) { + mNew = nbttagcompound.getString("Name"); + } + } + } + } catch (Throwable t) { + mNew = "ERROR - Empty Stack"; + } + Logger.INFO("Re-caching "+mNew+" into locale cache. Key: "+mCacheKey); + mLocaleCache.put(mCacheKey, mNew); + } + Logger.INFO("Returning Cached Value. Key: "+mCacheKey); + return mLocaleCache.get(mCacheKey); + } + else { + String unlocalizedName = aStack.getItem().getUnlocalizedName(aStack); + Logger.INFO("Cached New Value. UnlocalName: "+unlocalizedName); + String blockName = StatCollector.translateToLocal(unlocalizedName + ".name"); + Logger.INFO("Cached New Value. TranslatedName: "+unlocalizedName); + if (blockName.toLowerCase().contains(".name") || blockName.toLowerCase().contains("|")) { + try { + blockName = ("" + StatCollector + .translateToLocal(aStack.getItem().getUnlocalizedNameInefficiently(aStack) + ".name")) + .trim(); + if (aStack.hasTagCompound()) { + if (aStack.stackTagCompound != null && aStack.stackTagCompound.hasKey("display", 10)) { + NBTTagCompound nbttagcompound = aStack.stackTagCompound.getCompoundTag("display"); + if (nbttagcompound.hasKey("Name", 8)) { + blockName = nbttagcompound.getString("Name"); + } + } + } + } catch (Throwable t) { + blockName = "ERROR - Empty Stack"; + } + } + mLocaleCache.put(mCacheKey, blockName); + Logger.INFO("Cached New Value. Key: "+mCacheKey); + return blockName; + } + + } + return "Bad ItemStack Name"; + } + + } diff --git a/src/Java/gtPlusPlus/core/util/minecraft/NBTUtils.java b/src/Java/gtPlusPlus/core/util/minecraft/NBTUtils.java index 66abbded15..b0623d429d 100644 --- a/src/Java/gtPlusPlus/core/util/minecraft/NBTUtils.java +++ b/src/Java/gtPlusPlus/core/util/minecraft/NBTUtils.java @@ -464,4 +464,15 @@ public class NBTUtils { return ReflectionUtils.setField(aEntity, "customEntityData", aTag); } + public static boolean hasTagCompound(ItemStack aStack) { + return aStack.hasTagCompound(); + } + + public static void createEmptyTagCompound(ItemStack aStack) { + if (!hasTagCompound(aStack)) { + NBTTagCompound aTag = new NBTTagCompound(); + aStack.setTagCompound(aTag); + } + } + } |