From ea4d03ed847f8c715053a36bfdd9fea61a838177 Mon Sep 17 00:00:00 2001 From: GDCloud <93287602+GDCloudstrike@users.noreply.github.com> Date: Sat, 28 Jan 2023 22:21:05 +0100 Subject: Optical Circuit line recipes (#1665) * Optical Board recipes * Spotless * Tweak chromatic glass amount * Expand Forming press input slots * sa * Glowstone nanites recipe * Add new forming press support * Spotless * Tiered expansion of PLE/Forming press slots --------- Co-authored-by: Martin Robertz --- .../loaders/postload/chains/GT_NaniteChain.java | 19 +++++ .../postload/chains/GT_PCBFactoryRecipes.java | 97 ++++++++++++++++++++++ 2 files changed, 116 insertions(+) (limited to 'src/main/java/gregtech/loaders/postload/chains') diff --git a/src/main/java/gregtech/loaders/postload/chains/GT_NaniteChain.java b/src/main/java/gregtech/loaders/postload/chains/GT_NaniteChain.java index 1adb1b4fff..3047938783 100644 --- a/src/main/java/gregtech/loaders/postload/chains/GT_NaniteChain.java +++ b/src/main/java/gregtech/loaders/postload/chains/GT_NaniteChain.java @@ -118,6 +118,25 @@ public class GT_NaniteChain { 100_000_000, 1); + // Glowstone Nanites - Used in the optical circuit line + GT_Values.RA.addNanoForgeRecipe( + new ItemStack[] { + aUEVTierLens, + getModItem( + MOD_ID_GTPP, + "blockCompressedObsidian", + 8, + 7), // Double compressed glowstone blocks (yes, it's not obsidian) + ItemList.Circuit_Chip_SoC2.get(64) + }, + new FluidStack[] {Materials.UUMatter.getFluid(50000)}, + new ItemStack[] {Materials.Glowstone.getNanite(64)}, + null, + null, + 200 * 20, + 50_000_000, + 2); + // Gold Nanites - Used in Tier 3 PCB Factory to improve board production GT_Values.RA.addNanoForgeRecipe( new ItemStack[] {aUMVTierLens, Materials.Gold.getBlocks(8), ItemList.Circuit_Chip_SoC.get(16)}, diff --git a/src/main/java/gregtech/loaders/postload/chains/GT_PCBFactoryRecipes.java b/src/main/java/gregtech/loaders/postload/chains/GT_PCBFactoryRecipes.java index 2b6eaf212a..6f258610b1 100644 --- a/src/main/java/gregtech/loaders/postload/chains/GT_PCBFactoryRecipes.java +++ b/src/main/java/gregtech/loaders/postload/chains/GT_PCBFactoryRecipes.java @@ -2,6 +2,7 @@ package gregtech.loaders.postload.chains; import static gregtech.api.enums.GT_Values.MOD_ID_GTPP; +import cpw.mods.fml.common.Loader; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; @@ -575,5 +576,101 @@ public class GT_PCBFactoryRecipes { (int) GT_Values.VP[tier + 1] * 3 / 4, mTier3BitMap | mBioUpgradeBitMap); } + + if (Loader.isModLoaded("miscutils")) { + // Optical Circuit Board + for (int tier = 7; tier <= GT_PCBFactoryManager.mTiersOfPlastics; tier++) { + int amountOfBoards = (int) Math.ceil(8 * (Math.sqrt(Math.pow(2, tier - 7)))); + List aBoards = new ArrayList(); + for (int i = amountOfBoards; i > 64; i -= 64) { + aBoards.add(ItemList.Circuit_Board_Optical.get(i)); + amountOfBoards -= 64; + } + aBoards.add(ItemList.Circuit_Board_Optical.get(amountOfBoards)); + GT_Values.RA.addPCBFactoryRecipe( + new ItemStack[] { + GT_Utility.getIntegratedCircuit(1), + GT_PCBFactoryManager.getPlasticMaterialFromTier(tier) + .getPlates(1), + GT_ModHandler.getModItem( + "bartworks", "gt.bwMetaGeneratedfoil", (long) (16 * (Math.sqrt(tier - 6))), 10106), + GT_OreDictUnificator.get( + OrePrefixes.foil, Materials.InfinityCatalyst, (long) (16 * (Math.sqrt(tier - 6)))), + GT_ModHandler.getModItem( + "miscutils", "itemFoilChromaticGlass", (long) (16 * (Math.sqrt(tier - 6)))) + }, + new FluidStack[] { + Materials.SulfuricAcid.getFluid((long) (500 * (Math.sqrt(tier - 6)))), + Materials.IronIIIChloride.getFluid((long) (12500 * (Math.sqrt(tier - 6)))), + Materials.MysteriousCrystal.getMolten((long) (2880 * (Math.sqrt(tier - 6)))) + }, + aBoards.toArray(new ItemStack[0]), + (int) Math.ceil(600 / Math.sqrt(Math.pow(1.5, tier - 5.5))), + (int) GT_Values.VP[tier] * 3 / 4, + mTier1BitMap | mTier2BitMap | mTier3BitMap); + } + for (int tier = 7; tier <= GT_PCBFactoryManager.mTiersOfPlastics; tier++) { + int amountOfBoards = (int) Math.ceil(8 * (Math.sqrt(Math.pow(2, tier - 6.5)))); + List aBoards = new ArrayList(); + for (int i = amountOfBoards; i > 64; i -= 64) { + aBoards.add(ItemList.Circuit_Board_Optical.get(i)); + amountOfBoards -= 64; + } + aBoards.add(ItemList.Circuit_Board_Optical.get(amountOfBoards)); + GT_Values.RA.addPCBFactoryRecipe( + new ItemStack[] { + GT_Utility.getIntegratedCircuit(2), + GT_Utility.getNaniteAsCatalyst(Materials.Silver), + GT_PCBFactoryManager.getPlasticMaterialFromTier(tier) + .getPlates(1), + GT_ModHandler.getModItem( + "bartworks", "gt.bwMetaGeneratedfoil", (long) (16 * (Math.sqrt(tier - 6))), 10106), + GT_OreDictUnificator.get( + OrePrefixes.foil, Materials.InfinityCatalyst, (long) (16 * (Math.sqrt(tier - 6)))), + GT_ModHandler.getModItem( + "miscutils", "itemFoilChromaticGlass", (long) (16 * (Math.sqrt(tier - 6)))) + }, + new FluidStack[] { + Materials.SulfuricAcid.getFluid((long) (500 * (Math.sqrt(tier - 6)))), + Materials.IronIIIChloride.getFluid((long) (12500 * (Math.sqrt(tier - 6)))), + Materials.MysteriousCrystal.getMolten((long) (2880 * (Math.sqrt(tier - 6)))) + }, + aBoards.toArray(new ItemStack[0]), + (int) Math.ceil(500 / Math.sqrt(Math.pow(1.5, tier - 6.5))), + (int) GT_Values.VP[tier + 1] * 3 / 4, + mTier2BitMap | mTier3BitMap); + } + for (int tier = 7; tier <= GT_PCBFactoryManager.mTiersOfPlastics; tier++) { + int amountOfBoards = (int) Math.ceil(8 * (Math.sqrt(Math.pow(2, tier - 6)))); + List aBoards = new ArrayList(); + for (int i = amountOfBoards; i > 64; i -= 64) { + aBoards.add(ItemList.Circuit_Board_Optical.get(i)); + amountOfBoards -= 64; + } + aBoards.add(ItemList.Circuit_Board_Optical.get(amountOfBoards)); + GT_Values.RA.addPCBFactoryRecipe( + new ItemStack[] { + GT_Utility.getIntegratedCircuit(3), + GT_Utility.getNaniteAsCatalyst(Materials.Gold), + GT_PCBFactoryManager.getPlasticMaterialFromTier(tier) + .getPlates(1), + GT_ModHandler.getModItem( + "bartworks", "gt.bwMetaGeneratedfoil", (long) (16 * (Math.sqrt(tier - 6))), 10106), + GT_OreDictUnificator.get( + OrePrefixes.foil, Materials.InfinityCatalyst, (long) (16 * (Math.sqrt(tier - 6)))), + GT_ModHandler.getModItem( + "miscutils", "itemFoilChromaticGlass", (long) (16 * (Math.sqrt(tier - 6)))) + }, + new FluidStack[] { + Materials.SulfuricAcid.getFluid((long) (500 * (Math.sqrt(tier - 6)))), + Materials.IronIIIChloride.getFluid((long) (12500 * (Math.sqrt(tier - 6)))), + Materials.MysteriousCrystal.getMolten((long) (2880 * (Math.sqrt(tier - 6)))) + }, + aBoards.toArray(new ItemStack[0]), + (int) Math.ceil(400 / Math.sqrt(Math.pow(1.5, tier - 6.5))), + (int) GT_Values.VP[tier + 1] * 3 / 4, + mTier3BitMap); + } + } } } -- cgit