From a78da8fbd3795aefd6d214c2f81de9d087010c45 Mon Sep 17 00:00:00 2001 From: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com> Date: Fri, 17 Feb 2023 09:50:37 +0000 Subject: Change plastic usage on UXV conveyor. --- .../tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java b/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java index cd1499b712..12dd19ed2b 100644 --- a/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java +++ b/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java @@ -5147,10 +5147,9 @@ public class DreamCraftRecipeLoader { .get(OrePrefixes.round, Materials.MagnetohydrodynamicallyConstrainedStarMatter, 64L), GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SpaceTime, 2L), GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.Infinity, 2L), - new Object[] { OrePrefixes.plate.get(Materials.AnySyntheticRubber), 64L }, - new Object[] { OrePrefixes.plate.get(Materials.AnySyntheticRubber), 64L }, - new Object[] { OrePrefixes.plate.get(Materials.AnySyntheticRubber), 32L }, - Materials.Neutronium.getNanite(4) }, + MaterialsKevlar.Kevlar.getPlates(64), MaterialsKevlar.Kevlar.getPlates(16), + GT_OreDictUnificator.get("plateRadoxPoly", 64L), + GT_OreDictUnificator.get("plateRadoxPoly", 16L), Materials.Neutronium.getNanite(4) }, new FluidStack[] { fluid_0, fluid_1, fluid_2, fluid_3 }, ItemList.Conveyor_Module_UXV.get(1), craftingTimeInTicks, -- cgit From 8c313064dd37cbf2854940ef1fc88e96c517ecc5 Mon Sep 17 00:00:00 2001 From: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com> Date: Fri, 17 Feb 2023 15:20:08 +0000 Subject: Add custom stone dusts per dimension --- .../technus/tectech/recipe/EyeOfHarmonyRecipe.java | 116 +++++++++++++++++---- .../tectech/recipe/EyeOfHarmonyRecipeStorage.java | 2 +- 2 files changed, 94 insertions(+), 24 deletions(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipe.java b/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipe.java index 98f24260eb..39a6f0b185 100644 --- a/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipe.java +++ b/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipe.java @@ -3,6 +3,7 @@ package com.github.technus.tectech.recipe; import static com.github.technus.tectech.recipe.EyeOfHarmonyRecipeStorage.BILLION; import static com.google.common.math.IntMath.pow; import static gregtech.api.GregTech_API.getUnificatedOreDictStack; +import static gregtech.api.util.GT_ModHandler.getModItem; import static gregtech.api.util.GT_Utility.getPlasmaFuelValueInEUPerLiterFromMaterial; import static java.lang.Math.min; @@ -10,12 +11,12 @@ import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream; -import net.minecraft.block.Block; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; import org.apache.commons.lang3.tuple.Pair; +import pers.gwyog.gtneioreplugin.plugin.block.BlockDimensionDisplay; import pers.gwyog.gtneioreplugin.util.GT5OreLayerHelper; import pers.gwyog.gtneioreplugin.util.GT5OreSmallHelper; @@ -31,6 +32,18 @@ import gregtech.api.util.GT_OreDictUnificator; @SuppressWarnings("SpellCheckingInspection") public class EyeOfHarmonyRecipe { + static final FluidStack[] SPECIAL_FLUIDS = new FluidStack[] { + Materials.WhiteDwarfMatter.getMolten(576), + Materials.WhiteDwarfMatter.getMolten(576), + Materials.WhiteDwarfMatter.getMolten(2_304), + Materials.WhiteDwarfMatter.getMolten(9_216), + Materials.BlackDwarfMatter.getMolten(576), + Materials.BlackDwarfMatter.getMolten(2_304), + Materials.BlackDwarfMatter.getMolten(9_216), + Materials.Universium.getMolten(576), + Materials.Universium.getMolten(2_304), + }; + HashingStrategy itemStackHashingStrategy = new HashingStrategy() { @Override @@ -95,7 +108,7 @@ public class EyeOfHarmonyRecipe { return rocketTier; } - public EyeOfHarmonyRecipe(ArrayList> materialList, Block block, + public EyeOfHarmonyRecipe(final ArrayList> materialList, final BlockDimensionDisplay block, final double recipeEnergyEfficiency, final long hydrogenRequirement, final long heliumRequirement, final long miningTimeSeconds, final long rocketTierOfRecipe, final double baseSuccessChance) { @@ -108,8 +121,7 @@ public class EyeOfHarmonyRecipe { this.sumOfItems = this.outputItems.stream().map(ItemStackLong::getStackSize).reduce(0L, Long::sum); - this.outputItems.add( - new ItemStackLong(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1), this.sumOfItems * 3)); + this.outputItems.add(new ItemStackLong(getStoneDustType(block.getDimension()), this.sumOfItems * 3L)); this.outputItems.sort(Comparator.comparingLong(ItemStackLong::getStackSize)); Collections.reverse(this.outputItems); @@ -132,29 +144,19 @@ public class EyeOfHarmonyRecipe { // Add a bonus fluid of compressed star matter. fluidStackArrayList.add(Materials.RawStarMatter.getFluid((this.spacetimeCasingTierRequired + 1) * 100_000)); - // Tier 0 - 576 White - // Tier 1 - 2304 White - // Tier 2 - 9216 White - // Tier 3 - 36864 White + // Tier 0 & 1 - 576 White + // Tier 2 - 2304 White + // Tier 3 - 9216 White // Tier 4 - 576 Black // Tier 5 - 2304 Black // Tier 6 - 9216 Black - // Tier 7 - 36864 Black - // Tier 8 - 576 Universium - // Tier 9 - 2304 Universium + // Tier 7 - 576 Universium + // Tier 8 - 2304 Universium if (rocketTierOfRecipe <= 2) { - fluidStackArrayList.add(Materials.WhiteDwarfMatter.getMolten(576L * pow(4, (int) rocketTierOfRecipe))); - } - - if ((3 <= rocketTierOfRecipe) && (rocketTierOfRecipe <= 7)) { - fluidStackArrayList.add(Materials.BlackDwarfMatter.getMolten(576L * pow(4, (int) rocketTierOfRecipe - 3))); - } - - if (rocketTierOfRecipe >= 8) { - fluidStackArrayList.add(Materials.Universium.getMolten(576L * pow(4, (int) (rocketTierOfRecipe - 8)))); + fluidStackArrayList.add(SPECIAL_FLUIDS[(int) rocketTierOfRecipe]); } outputFluids = fluidStackArrayList; @@ -174,10 +176,78 @@ public class EyeOfHarmonyRecipe { this.euOutput = (long) (euStartCost * recipeEnergyEfficiency); } + private ItemStack getStoneDustType(String key) { + + switch (key) { + case "Ne": + return GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Netherrack, 1); + case "ED": + case "VA": + case "EA": + return GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Endstone, 1); + case "Mo": + return getModItem("dreamcraft", "item.MoonStoneDust", 1); + case "De": + return getModItem("dreamcraft", "item.DeimosStoneDust", 1); + case "Ma": + return getModItem("dreamcraft", "item.MarsStoneDust", 1); + case "Ph": + return getModItem("dreamcraft", "item.PhobosStoneDust", 1); + case "As": + case "KB": + return getModItem("dreamcraft", "item.AsteroidsStoneDust", 1); + case "Ca": + return getModItem("dreamcraft", "item.CallistoStoneDust", 1); + case "Ce": + return getModItem("dreamcraft", "item.CeresStoneDust", 1); + case "Eu": + return getModItem("dreamcraft", "item.EuropaStoneDust", 1); + case "Ga": + return getModItem("dreamcraft", "item.GanymedeStoneDust", 1); + case "Io": + return getModItem("dreamcraft", "item.IoStoneDust", 1); + case "Me": + return getModItem("dreamcraft", "item.MercuryStoneDust", 1); + case "Ve": + return getModItem("dreamcraft", "item.VenusStoneDust", 1); + case "En": + return getModItem("dreamcraft", "item.EnceladusStoneDust", 1); + case "Mi": + return getModItem("dreamcraft", "item.MirandaStoneDust", 1); + case "Ob": + return getModItem("dreamcraft", "item.OberonStoneDust", 1); + case "Ti": + return getModItem("dreamcraft", "item.TitanStoneDust", 1); + case "Pr": + return getModItem("dreamcraft", "item.ProteusStoneDust", 1); + case "Tr": + return getModItem("dreamcraft", "item.TritonStoneDust", 1); + case "Ha": + return getModItem("dreamcraft", "item.HaumeaStoneDust", 1); + case "MM": + return getModItem("dreamcraft", "item.MakeMakeStoneDust", 1); + case "Pl": + return getModItem("dreamcraft", "item.PlutoStoneDust", 1); + case "BE": + return getModItem("dreamcraft", "item.BarnardaEStoneDust", 1); + case "BF": + return getModItem("dreamcraft", "item.BarnardaFStoneDust", 1); + case "CB": + return getModItem("dreamcraft", "item.CentauriAStoneDust", 1); + case "TE": + return getModItem("dreamcraft", "item.TCetiEStoneDust", 1); + case "VB": + return getModItem("dreamcraft", "item.VegaBStoneDust", 1); + default: + return GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1); + } + } + public EyeOfHarmonyRecipe(final GT5OreLayerHelper.NormalOreDimensionWrapper normalOreDimensionWrapper, - final GT5OreSmallHelper.SmallOreDimensionWrapper smallOreDimensionWrapper, final Block block, - final double recipeEnergyEfficiency, final long hydrogenRequirement, final long heliumRequirement, - final long miningTimeSeconds, final long spacetimeCasingTierRequired, final double baseSuccessChance) { + final GT5OreSmallHelper.SmallOreDimensionWrapper smallOreDimensionWrapper, + final BlockDimensionDisplay block, final double recipeEnergyEfficiency, final long hydrogenRequirement, + final long heliumRequirement, final long miningTimeSeconds, final long spacetimeCasingTierRequired, + final double baseSuccessChance) { // Process recipes output items. // 6 * 64 = 6 stacks/second for VM tier 3 + Og gas. diff --git a/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipeStorage.java b/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipeStorage.java index 78e97f4c46..f4a5dbb92c 100644 --- a/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipeStorage.java +++ b/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipeStorage.java @@ -52,7 +52,7 @@ public class EyeOfHarmonyRecipeStorage { GT5OreSmallHelper.SmallOreDimensionWrapper smallOre = GT5OreSmallHelper.dimToSmallOreWrapper .getOrDefault(dimAbbreviation, null); if (normalOre == null && smallOre == null) { - // no ores are generated in this dimension. fail silently + // No ores are generated in this dimension. Fail silently. continue; } -- cgit From e694ff59eda01068dc8ddea958e3b46b8ef453f4 Mon Sep 17 00:00:00 2001 From: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com> Date: Fri, 17 Feb 2023 15:20:20 +0000 Subject: Change tooltip to reflect updates. --- .../github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java b/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java index 1b670ee9d9..31c25667cf 100644 --- a/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java +++ b/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java @@ -43,7 +43,7 @@ public class GT_Item_Casings_Spacetime extends GT_Item_Casings_Abstract { + GT_LanguageManager.addStringLocalization( "EOH.Spacetime.Standard.Tooltip.1", "Capable of running recipes up to tier ") - + aStack.getItemDamage()); + + aStack.getItemDamage() + 1); break; default: aList.add( -- cgit From 4b08315f7fdfe0e7304434c6a3e9f2335617a403 Mon Sep 17 00:00:00 2001 From: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com> Date: Fri, 17 Feb 2023 15:21:56 +0000 Subject: Fix missing rod --- .../tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java b/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java index 12dd19ed2b..808f596153 100644 --- a/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java +++ b/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java @@ -5349,7 +5349,7 @@ public class DreamCraftRecipeLoader { GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.BlackDwarfMatter, 2), GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.BlackDwarfMatter, 8), GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.BlackDwarfMatter, 32), - GT_OreDictUnificator.get(OrePrefixes.rod, Materials.BlackDwarfMatter, 32), + GT_OreDictUnificator.get(OrePrefixes.stick, Materials.BlackDwarfMatter, 32), GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.MagnetohydrodynamicallyConstrainedStarMatter, 2) }; // EOH Controller Recipe. -- cgit From ce1258f8665e66d19cca3c68c226002fe890f388 Mon Sep 17 00:00:00 2001 From: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com> Date: Fri, 17 Feb 2023 23:37:44 +0000 Subject: Fix some tiering. --- .../technus/tectech/recipe/EyeOfHarmonyRecipe.java | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipe.java b/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipe.java index 39a6f0b185..a92ddd8e2a 100644 --- a/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipe.java +++ b/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipe.java @@ -32,17 +32,11 @@ import gregtech.api.util.GT_OreDictUnificator; @SuppressWarnings("SpellCheckingInspection") public class EyeOfHarmonyRecipe { - static final FluidStack[] SPECIAL_FLUIDS = new FluidStack[] { - Materials.WhiteDwarfMatter.getMolten(576), - Materials.WhiteDwarfMatter.getMolten(576), - Materials.WhiteDwarfMatter.getMolten(2_304), - Materials.WhiteDwarfMatter.getMolten(9_216), - Materials.BlackDwarfMatter.getMolten(576), - Materials.BlackDwarfMatter.getMolten(2_304), - Materials.BlackDwarfMatter.getMolten(9_216), - Materials.Universium.getMolten(576), - Materials.Universium.getMolten(2_304), - }; + static final FluidStack[] SPECIAL_FLUIDS = new FluidStack[] { Materials.WhiteDwarfMatter.getMolten(576), + Materials.WhiteDwarfMatter.getMolten(576), Materials.WhiteDwarfMatter.getMolten(2_304), + Materials.WhiteDwarfMatter.getMolten(9_216), Materials.BlackDwarfMatter.getMolten(576), + Materials.BlackDwarfMatter.getMolten(2_304), Materials.BlackDwarfMatter.getMolten(9_216), + Materials.Universium.getMolten(576), Materials.Universium.getMolten(2_304), }; HashingStrategy itemStackHashingStrategy = new HashingStrategy() { -- cgit From 60ef3f05cbf599e6e13c8dc155f1e26a0174b9a2 Mon Sep 17 00:00:00 2001 From: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com> Date: Fri, 17 Feb 2023 23:37:55 +0000 Subject: Fix string --- .../github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java b/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java index 31c25667cf..52cf559107 100644 --- a/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java +++ b/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java @@ -43,7 +43,8 @@ public class GT_Item_Casings_Spacetime extends GT_Item_Casings_Abstract { + GT_LanguageManager.addStringLocalization( "EOH.Spacetime.Standard.Tooltip.1", "Capable of running recipes up to tier ") - + aStack.getItemDamage() + 1); + + (aStack.getItemDamage() + + 1)); break; default: aList.add( -- cgit From 81ad68563a3f7e613a2322a0fab22d37c4e1f080 Mon Sep 17 00:00:00 2001 From: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com> Date: Sat, 18 Feb 2023 17:06:58 +0000 Subject: Clean up code more --- .../multi/GT_MetaTileEntity_EM_EyeOfHarmony.java | 55 ++++++++++++---------- 1 file changed, 31 insertions(+), 24 deletions(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java index 1656dbc42a..0f083d202f 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java @@ -59,6 +59,8 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl implements IConstructable, IGlobalWirelessEnergy, ISurvivalConstructable { private static final boolean EOH_DEBUG_MODE = false; + private static final long SPACETIME_PER_FAILURE_TIER = 14_400L; + private static final double SPACETIME_FAILURE_BASE = 1.6; private boolean disableAnimation = false; // Region variables. @@ -70,9 +72,10 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl private int stabilisationFieldMetadata = -1; private static final double SPACETIME_CASING_DIFFERENCE_DISCOUNT_PERCENTAGE = 0.03; + private static final double TIME_ACCEL_DECREASE_CHANCE_PER_TIER = 0.1; + private static final double STABILITY_INCREASE_PROBABILITY_PER_TIER = 0.05; private String userUUID = ""; - private String userName = ""; private long euOutput = 0; @Override @@ -733,7 +736,7 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl } private double recipeChanceCalculator() { - double chance = currentRecipe.getBaseRecipeSuccessChance() - timeAccelerationFieldMetadata * 0.1 + double chance = currentRecipe.getBaseRecipeSuccessChance() - timeAccelerationFieldMetadata * TIME_ACCEL_DECREASE_CHANCE_PER_TIER + stabilisationFieldMetadata * 0.05 - hydrogenOverflowProbabilityAdjustment - heliumOverflowProbabilityAdjustment; @@ -753,7 +756,7 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl return clamp(yield, 0.0, 1.0); } - private int recipeProcessTimeCalculator(long recipeTime, long recipeSpacetimeCasingRequired) { + private int recipeProcessTimeCalculator(final long recipeTime, final long recipeSpacetimeCasingRequired) { // Tier 1 recipe. // Tier 2 spacetime blocks. @@ -765,7 +768,7 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl long spacetimeCasingDifference = (recipeSpacetimeCasingRequired - spacetimeCompressionFieldMetadata); double recipeTimeDiscounted = recipeTime * pow(2.0, -timeAccelerationFieldMetadata) - * pow(1 - SPACETIME_CASING_DIFFERENCE_DISCOUNT_PERCENTAGE, spacetimeCasingDifference); + * pow(1 - SPACETIME_CASING_DIFFERENCE_DISCOUNT_PERCENTAGE, spacetimeCasingDifference) / max(1, pow(2, currentCircuitMultiplier)); return (int) Math.max(recipeTimeDiscounted, 1.0); } @@ -870,24 +873,23 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl .addInfo(" spacetime compression field block exceeds the requirements of the recipe it") .addInfo( " will decrease the processing time by " + RED - + "3%" + + formatNumbers(SPACETIME_CASING_DIFFERENCE_DISCOUNT_PERCENTAGE * 100) + "%" + GRAY - + " per tier over the requirement. This") - .addInfo(" is multiplicative.").addInfo(BLUE + "Time Dilation Field Generator:") + + " per tier over the requirement (multiplicative).") + .addInfo(BLUE + "Time Dilation Field Generator:") .addInfo( - "- Decreases the time required by a recipe by a factor of " + RED - + "2" + "- Decreases the time required for a recipe by " + RED + "50%" + GRAY - + " per tier of block.") + + " per tier of block (multiplicative).") .addInfo( " Decreases the probability of a recipe succeeding by " + RED - + "10%" + + formatNumbers(TIME_ACCEL_DECREASE_CHANCE_PER_TIER * 100) + "%" + GRAY + " per tier (additive)") .addInfo(BLUE + "Stabilisation Field Generator:") .addInfo( "- Increases the probability of a recipe succeeding by " + RED - + "5%" + + formatNumbers(STABILITY_INCREASE_PROBABILITY_PER_TIER * 100) + "%" + GRAY + " per tier (additive).") .addInfo(" Decreases the yield of a recipe by " + RED + "5%" + GRAY + " per tier (additive). ") @@ -908,6 +910,10 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl "is avaliable the items/fluids will be " + UNDERLINE + DARK_RED + "voided" + RESET + GRAY + ".") .addInfo(GOLD + "--------------------------------------------------------------------------------") .addInfo("This multiblock can be overclocked by placing a programmed circuit into the input bus.") + .addInfo( + "E.g. A circuit of 1 will provide 1 OC, 4x EU consumed and 0.5x the time. All outputs are equal.") + .addInfo(GOLD + "--------------------------------------------------------------------------------") + .addInfo("If a recipe fails the EOH will output " + GREEN + formatNumbers(SPACETIME_PER_FAILURE_TIER) + "*" + SPACETIME_FAILURE_BASE + "^(Recipe tier)" + GRAY + ".") .addInfo( "E.g. A circuit of 1 will provide 1 OC, 4x EU consumed and 0.5x the time. All outputs are equal.") .addSeparator().addStructureInfo("Eye of Harmony structure is too complex! See schematic for details.") @@ -1056,8 +1062,12 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl } } + if (spacetimeCompressionFieldMetadata == -1) { + return false; + } + // Check tier of spacetime compression blocks is high enough. - if (spacetimeCompressionFieldMetadata < recipeObject.getSpacetimeCasingTierRequired()) { + if ((spacetimeCompressionFieldMetadata + 1) < recipeObject.getSpacetimeCasingTierRequired()) { return false; } @@ -1071,7 +1081,6 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl mMaxProgresstime = recipeProcessTimeCalculator( recipeObject.getRecipeTimeInTicks(), recipeObject.getSpacetimeCasingTierRequired()); - mMaxProgresstime /= max(1, pow(2, currentCircuitMultiplier)); calculateHydrogenHeliumInputExcessValues( recipeObject.getHydrogenRequirement(), @@ -1154,11 +1163,9 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl private double successChance; private void outputFailedChance() { - // todo Replace with proper fluid once added to GT. - int exoticMaterialOutputAmount = (int) ((successChance) * 1440 - * (getHydrogenStored() + getHeliumStored()) - / 1_000_000_000.0); - mOutputFluids = new FluidStack[] { Materials.SpaceTime.getFluid(exoticMaterialOutputAmount) }; + // 2^Tier spacetime released upon recipe failure. + mOutputFluids = new FluidStack[] { + Materials.SpaceTime.getMolten((long) (SPACETIME_PER_FAILURE_TIER * pow(SPACETIME_FAILURE_BASE, currentRecipe.getRocketTier() + 1))) }; super.outputAfterRecipe_EM(); } @@ -1192,12 +1199,12 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl if (successChance < random()) { outputFailedChance(); outputItems = new ArrayList<>(); - return; + addEUToGlobalEnergyMap(userUUID, currentRecipe.getEUStartCost() / 2); + } else { + addEUToGlobalEnergyMap(userUUID, euOutput); + euOutput = 0; } - addEUToGlobalEnergyMap(userUUID, euOutput); - euOutput = 0; - for (ItemStackLong itemStack : outputItems) { outputItemToAENetwork(itemStack.itemStack, itemStack.stackSize); } @@ -1215,7 +1222,7 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl if (aTick == 1) { userUUID = String.valueOf(getBaseMetaTileEntity().getOwnerUuid()); - userName = getBaseMetaTileEntity().getOwnerName(); + String userName = getBaseMetaTileEntity().getOwnerName(); strongCheckOrAddUser(userUUID, userName); } -- cgit From 0de07194fc3a978b5b83283e8247d77c97be58de Mon Sep 17 00:00:00 2001 From: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com> Date: Sat, 18 Feb 2023 17:16:24 +0000 Subject: Add proper descriptions for some blocks --- .../tectech/thing/casing/GT_Item_CasingsBA0.java | 75 +++++++++++++++------- .../tectech/thing/casing/GT_Item_CasingsTT.java | 10 +-- 2 files changed, 54 insertions(+), 31 deletions(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_CasingsBA0.java b/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_CasingsBA0.java index 35bfe12071..f0c12be8bc 100644 --- a/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_CasingsBA0.java +++ b/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_CasingsBA0.java @@ -2,6 +2,8 @@ package com.github.technus.tectech.thing.casing; import static com.github.technus.tectech.util.CommonValues.*; import static gregtech.api.util.GT_Utility.formatNumbers; +import static net.minecraft.util.EnumChatFormatting.AQUA; +import static net.minecraft.util.EnumChatFormatting.GRAY; import static net.minecraft.util.StatCollector.translateToLocal; import java.util.List; @@ -11,6 +13,7 @@ import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; +import gregtech.api.enums.TierEU; import gregtech.common.blocks.GT_Item_Casings_Abstract; public class GT_Item_CasingsBA0 extends GT_Item_Casings_Abstract { @@ -37,42 +40,68 @@ public class GT_Item_CasingsBA0 extends GT_Item_Casings_Abstract { translateToLocal("gt.blockcasingsBA0.0.desc.0") + " " + formatNumbers(V[aStack.getItemDamage() + 1]) + " EU/t"); // Handles up to - aList.add( - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD - + translateToLocal("gt.blockcasingsBA0.0.desc.1")); // What one man calls God, another - // calls the + aList.add(AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockcasingsBA0.0.desc.1")); // What + // one + // man + // calls + // God, + // another + // calls + // the // laws of physics. break; case 6: // "Tesla Base Casing" aList.add(translateToLocal("gt.blockcasingsBA0.6.desc.0")); // The base of a wondrous contraption - aList.add( - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD - + translateToLocal("gt.blockcasingsBA0.6.desc.1")); // it's alive, IT'S ALIVE! + aList.add(AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockcasingsBA0.6.desc.1")); // it's + // alive, + // IT'S + // ALIVE! break; case 7: // "Tesla Toroid Casing" aList.add(translateToLocal("gt.blockcasingsBA0.7.desc.0")); // Made out of the finest tin foil! - aList.add( - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD - + translateToLocal("gt.blockcasingsBA0.7.desc.1")); // Faraday suits might come later + aList.add(AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockcasingsBA0.7.desc.1")); // Faraday + // suits + // might + // come + // later break; case 8: // "Tesla Secondary Windings" aList.add(translateToLocal("gt.blockcasingsBA0.8.desc.0")); // Picks up power from a primary coil - aList.add( - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD - + translateToLocal("gt.blockcasingsBA0.8.desc.1")); // Who wouldn't want a 32k epoxy - // multi? + aList.add(AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockcasingsBA0.8.desc.1")); // Who + // wouldn't + // want + // a + // 32k + // epoxy + // multi? break; case 9: // "ZPM Superconductor Primary Tesla Windings" - aList.add(translateToLocal("gt.blockcasingsBA0.0.desc.0") + " " + formatNumbers(V[7]) + " EU/t"); // Handles - // up - // to - aList.add( - EnumChatFormatting.AQUA.toString() + EnumChatFormatting.BOLD - + translateToLocal("gt.blockcasingsBA0.0.desc.1")); // What one man calls God, another - // calls the - // laws of physics. + aList.add(translateToLocal("gt.blockcasingsBA0.0.desc.0") + " " + formatNumbers(TierEU.ZPM) + " EU/t"); // Handles + // up + // to + aList.add(AQUA.toString() + EnumChatFormatting.BOLD + translateToLocal("gt.blockcasingsBA0.0.desc.1")); // What + // one + // man + // calls + // God, + // another + case 10: // Reinforced Temporal Structure Casing + aList.add(AQUA + translateToLocal("gt.blockcasingsBA0.10.desc.0")); + aList.add(GRAY + translateToLocal("gt.blockcasingsBA0.10.desc.1")); + // Designed to resist spatial shearing from internal volume expansion. + // Can survive at least one big bang, maybe two... + break; + case 11: // Reinforced Temporal Structure Casing + aList.add(AQUA + translateToLocal("gt.blockcasingsBA0.11.desc.0")); + aList.add(GRAY + translateToLocal("gt.blockcasingsBA0.11.desc.1")); + // Resistant to temporal shearing from time dilation differences. + // This block can last an eternity without any decay. + break; + case 12: // Infinite Spacetime Energy Boundary Casing + aList.add(AQUA + translateToLocal("gt.blockcasingsBA0.12.desc.0")); + // Provides a stable bridge between spacetime regions. break; - default: // WTF? + default: aList.add("Damn son where did you get that!?"); aList.add(EnumChatFormatting.BLUE.toString() + "From outer space... I guess..."); } diff --git a/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_CasingsTT.java b/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_CasingsTT.java index 8417c848bf..c362b9aaaf 100644 --- a/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_CasingsTT.java +++ b/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_CasingsTT.java @@ -123,17 +123,11 @@ public class GT_Item_CasingsTT extends GT_Item_Casings_Abstract { break; case 15: // "Debug Sides" aList.add(translateToLocal("gt.blockcasingsTT.15.desc.0")); // Lazy man way of determining sides. - aList.add(EnumChatFormatting.BLUE.toString() + translateToLocal("gt.blockcasingsTT.15.desc.1")); // 0, - // 1, - // 2, - // 3, - // 4, - // 5, - // 6?! + aList.add(EnumChatFormatting.BLUE + translateToLocal("gt.blockcasingsTT.15.desc.1")); break; default: // WTF? aList.add("Damn son where did you get that!?"); - aList.add(EnumChatFormatting.BLUE.toString() + "From outer space... I guess..."); + aList.add(EnumChatFormatting.BLUE + "From outer space... I guess..."); } } } -- cgit From 41e116c6802e3ffd283eeed6b43054c149d273c1 Mon Sep 17 00:00:00 2001 From: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com> Date: Sat, 18 Feb 2023 18:15:45 +0000 Subject: Fixes --- .../multi/GT_MetaTileEntity_EM_EyeOfHarmony.java | 71 ++++++++++++++-------- 1 file changed, 47 insertions(+), 24 deletions(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java index 0f083d202f..dad3433fc3 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java @@ -59,8 +59,8 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl implements IConstructable, IGlobalWirelessEnergy, ISurvivalConstructable { private static final boolean EOH_DEBUG_MODE = false; - private static final long SPACETIME_PER_FAILURE_TIER = 14_400L; - private static final double SPACETIME_FAILURE_BASE = 1.6; + private static final long MOLTEN_SPACETIME_PER_FAILURE_TIER = 14_400L; + private static final double SPACETIME_FAILURE_BASE = 2; private boolean disableAnimation = false; // Region variables. @@ -73,7 +73,7 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl private static final double SPACETIME_CASING_DIFFERENCE_DISCOUNT_PERCENTAGE = 0.03; private static final double TIME_ACCEL_DECREASE_CHANCE_PER_TIER = 0.1; - private static final double STABILITY_INCREASE_PROBABILITY_PER_TIER = 0.05; + private static final double STABILITY_INCREASE_PROBABILITY_DECREASE_YIELD_PER_TIER = 0.05; private String userUUID = ""; private long euOutput = 0; @@ -736,8 +736,9 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl } private double recipeChanceCalculator() { - double chance = currentRecipe.getBaseRecipeSuccessChance() - timeAccelerationFieldMetadata * TIME_ACCEL_DECREASE_CHANCE_PER_TIER - + stabilisationFieldMetadata * 0.05 + double chance = currentRecipe.getBaseRecipeSuccessChance() + - timeAccelerationFieldMetadata * TIME_ACCEL_DECREASE_CHANCE_PER_TIER + + stabilisationFieldMetadata * STABILITY_INCREASE_PROBABILITY_DECREASE_YIELD_PER_TIER - hydrogenOverflowProbabilityAdjustment - heliumOverflowProbabilityAdjustment; @@ -751,7 +752,7 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl private double recipeYieldCalculator() { double yield = 1.0 - hydrogenOverflowProbabilityAdjustment - heliumOverflowProbabilityAdjustment - - stabilisationFieldMetadata * 0.05; + - stabilisationFieldMetadata * STABILITY_INCREASE_PROBABILITY_DECREASE_YIELD_PER_TIER; return clamp(yield, 0.0, 1.0); } @@ -768,7 +769,8 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl long spacetimeCasingDifference = (recipeSpacetimeCasingRequired - spacetimeCompressionFieldMetadata); double recipeTimeDiscounted = recipeTime * pow(2.0, -timeAccelerationFieldMetadata) - * pow(1 - SPACETIME_CASING_DIFFERENCE_DISCOUNT_PERCENTAGE, spacetimeCasingDifference) / max(1, pow(2, currentCircuitMultiplier)); + * pow(1 - SPACETIME_CASING_DIFFERENCE_DISCOUNT_PERCENTAGE, spacetimeCasingDifference) + / max(1, pow(2, currentCircuitMultiplier)); return (int) Math.max(recipeTimeDiscounted, 1.0); } @@ -873,37 +875,46 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl .addInfo(" spacetime compression field block exceeds the requirements of the recipe it") .addInfo( " will decrease the processing time by " + RED - + formatNumbers(SPACETIME_CASING_DIFFERENCE_DISCOUNT_PERCENTAGE * 100) + "%" + + formatNumbers(SPACETIME_CASING_DIFFERENCE_DISCOUNT_PERCENTAGE * 100) + + "%" + GRAY + " per tier over the requirement (multiplicative).") .addInfo(BLUE + "Time Dilation Field Generator:") .addInfo( - "- Decreases the time required for a recipe by " + RED + "50%" + "- Decreases the time required for a recipe by " + RED + + "50%" + GRAY + " per tier of block (multiplicative).") .addInfo( " Decreases the probability of a recipe succeeding by " + RED - + formatNumbers(TIME_ACCEL_DECREASE_CHANCE_PER_TIER * 100) + "%" + + formatNumbers(TIME_ACCEL_DECREASE_CHANCE_PER_TIER * 100) + + "%" + GRAY + " per tier (additive)") .addInfo(BLUE + "Stabilisation Field Generator:") .addInfo( "- Increases the probability of a recipe succeeding by " + RED - + formatNumbers(STABILITY_INCREASE_PROBABILITY_PER_TIER * 100) + "%" + + formatNumbers(STABILITY_INCREASE_PROBABILITY_DECREASE_YIELD_PER_TIER * 100) + + "%" + GRAY + " per tier (additive).") - .addInfo(" Decreases the yield of a recipe by " + RED + "5%" + GRAY + " per tier (additive). ") + .addInfo( + " Decreases the yield of a recipe by " + RED + + formatNumbers(STABILITY_INCREASE_PROBABILITY_DECREASE_YIELD_PER_TIER * 100) + + "%" + + GRAY + + " per tier (additive). ") .addInfo(GOLD + "--------------------------------------------------------------------------------") - .addInfo("Going over a recipe requirement on hydrogen or helium has a penalty on yield and recipe") .addInfo( - "chance. All stored hydrogen and helium is consumed during a craft. The associated formulas are:") + "Going over a recipe requirement on hydrogen or helium has a penalty on yield and recipe chance.") + .addInfo("All stored hydrogen and helium is consumed during a craft. The associated formulas are:") .addInfo(GREEN + "percentageOverflow = abs(1 - fluidStored/recipeRequirement)") .addInfo(GREEN + "adjustmentValue = 1 - exp(-(30 * percentageOverflow)^2)") .addInfo("The value of adjustmentValue is then subtracted from the total yield and recipe chance.") .addInfo(GOLD + "--------------------------------------------------------------------------------") - .addInfo("It should be noted that base recipe chance is determined per recipe and yield always") - .addInfo("starts at 1 and subtracts depending on penalities. All fluid/item outputs are multiplied") - .addInfo("by the yield calculated.") + .addInfo("It should be noted that base recipe chance is determined per recipe and yield always starts") + .addInfo("at recipe base chance and subtracts depending on penalities. All fluid/item outputs are") + .addInfo("multiplied by the yield. Failure fluid is exempt.") .addInfo(GOLD + "--------------------------------------------------------------------------------") .addInfo("This multiblock can only output to ME output busses/hatches. If no space in the network") .addInfo( @@ -911,12 +922,21 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl .addInfo(GOLD + "--------------------------------------------------------------------------------") .addInfo("This multiblock can be overclocked by placing a programmed circuit into the input bus.") .addInfo( - "E.g. A circuit of 1 will provide 1 OC, 4x EU consumed and 0.5x the time. All outputs are equal.") + "E.g. A circuit of 2 will provide 2 OCs, 16x EU consumed and 0.25x the time. All outputs are equal.") .addInfo(GOLD + "--------------------------------------------------------------------------------") - .addInfo("If a recipe fails the EOH will output " + GREEN + formatNumbers(SPACETIME_PER_FAILURE_TIER) + "*" + SPACETIME_FAILURE_BASE + "^(Recipe tier)" + GRAY + ".") .addInfo( - "E.g. A circuit of 1 will provide 1 OC, 4x EU consumed and 0.5x the time. All outputs are equal.") - .addSeparator().addStructureInfo("Eye of Harmony structure is too complex! See schematic for details.") + "If a recipe fails the EOH will output " + GREEN + + "successChance * " + + formatNumbers(MOLTEN_SPACETIME_PER_FAILURE_TIER) + + " * (" + + SPACETIME_FAILURE_BASE + + ")^(Recipe tier)" + + GRAY + + "L of molten " + + Materials.SpaceTime.getLocalizedNameForItem("%material") + + " and") + .addInfo("return half the start EU.").addSeparator() + .addStructureInfo("Eye of Harmony structure is too complex! See schematic for details.") .addStructureInfo( EnumChatFormatting.GOLD + "896" + EnumChatFormatting.GRAY @@ -1164,8 +1184,9 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl private void outputFailedChance() { // 2^Tier spacetime released upon recipe failure. - mOutputFluids = new FluidStack[] { - Materials.SpaceTime.getMolten((long) (SPACETIME_PER_FAILURE_TIER * pow(SPACETIME_FAILURE_BASE, currentRecipe.getRocketTier() + 1))) }; + mOutputFluids = new FluidStack[] { Materials.SpaceTime.getMolten( + (long) (successChance * MOLTEN_SPACETIME_PER_FAILURE_TIER + * pow(SPACETIME_FAILURE_BASE, currentRecipe.getRocketTier() + 1))) }; super.outputAfterRecipe_EM(); } @@ -1199,7 +1220,9 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl if (successChance < random()) { outputFailedChance(); outputItems = new ArrayList<>(); - addEUToGlobalEnergyMap(userUUID, currentRecipe.getEUStartCost() / 2); + addEUToGlobalEnergyMap( + userUUID, + (long) (currentRecipe.getEUStartCost() * pow(4, currentCircuitMultiplier) / 2L)); } else { addEUToGlobalEnergyMap(userUUID, euOutput); euOutput = 0; -- cgit From ff44479f60708b6d9e113c00832d909c950f968c Mon Sep 17 00:00:00 2001 From: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com> Date: Sat, 18 Feb 2023 18:15:58 +0000 Subject: Fix string concatenation issue. --- .../github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java b/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java index 52cf559107..0f38f5fadf 100644 --- a/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java +++ b/src/main/java/com/github/technus/tectech/thing/casing/GT_Item_Casings_Spacetime.java @@ -43,8 +43,7 @@ public class GT_Item_Casings_Spacetime extends GT_Item_Casings_Abstract { + GT_LanguageManager.addStringLocalization( "EOH.Spacetime.Standard.Tooltip.1", "Capable of running recipes up to tier ") - + (aStack.getItemDamage() - + 1)); + + (aStack.getItemDamage() + 1)); break; default: aList.add( -- cgit From 08940cf50ec63e239bf2d85583f58ea3f78b1d4f Mon Sep 17 00:00:00 2001 From: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com> Date: Sat, 18 Feb 2023 18:16:12 +0000 Subject: Prevent EOH if no Tgregworks --- .../dreamcraft/DreamCraftRecipeLoader.java | 33 ++++++++++++---------- 1 file changed, 18 insertions(+), 15 deletions(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java b/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java index 808f596153..aeedccd5bf 100644 --- a/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java +++ b/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java @@ -2503,7 +2503,9 @@ public class DreamCraftRecipeLoader { addWirelessEnergyRecipes(); - addEOHRecipes(); + if (Loader.isModLoaded("TGregworks")) { + addEOHRecipes(); + } // UHV-UMV Energy Hatch & Dynamo TT_recipeAdder.addResearchableAssemblylineRecipe( @@ -5043,14 +5045,15 @@ public class DreamCraftRecipeLoader { // ------------------------- Set up information ------------------------- // ---------------------------------------------------------------------- - // Fluid mutatedLivingSolder = FluidRegistry.getFluid("molten.mutatedlivingsolder") != null - // ? FluidRegistry.getFluid("molten.mutatedlivingsolder") - // : FluidRegistry.getFluid("molten.solderingalloy"); + Fluid mutatedLivingSolder = FluidRegistry.getFluid("molten.mutatedlivingsolder") != null + ? FluidRegistry.getFluid("molten.mutatedlivingsolder") + : FluidRegistry.getFluid("molten.solderingalloy"); FluidStack fluid_0 = Materials.MagnetohydrodynamicallyConstrainedStarMatter.getMolten(576); FluidStack fluid_1 = Materials.SpaceTime.getMolten(576); FluidStack fluid_2 = Materials.Universium.getMolten(576); - FluidStack fluid_3 = Materials.Lubricant.getFluid(8000); + FluidStack lubricantFluid = Materials.Lubricant.getFluid(8000); + FluidStack solderingAlloy = new FluidStack(mutatedLivingSolder, 14_400); int totalComputation = 384_000; int compPerSecond = 512; @@ -5094,7 +5097,7 @@ public class DreamCraftRecipeLoader { GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SpaceTime, 2L), GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.Infinity, 2L), Materials.Neutronium.getNanite(4) }, - new FluidStack[] { fluid_0, fluid_1, fluid_2, fluid_3 }, + new FluidStack[] { fluid_0, fluid_1, fluid_2, lubricantFluid }, ItemList.Electric_Motor_UXV.get(1L), craftingTimeInTicks, craftingEuPerTick); @@ -5115,15 +5118,15 @@ public class DreamCraftRecipeLoader { .get(OrePrefixes.plate, Materials.MagnetohydrodynamicallyConstrainedStarMatter, 4L), GT_OreDictUnificator .get(OrePrefixes.screw, Materials.MagnetohydrodynamicallyConstrainedStarMatter, 16L), - new Object[] { OrePrefixes.ring.get(Materials.AnySyntheticRubber), 64L }, - new Object[] { OrePrefixes.ring.get(Materials.AnySyntheticRubber), 64L }, + GT_OreDictUnificator.get(OrePrefixes.ring, MaterialsKevlar.Kevlar, 64L), + GT_OreDictUnificator.get("ringRadoxPoly", 64L), GT_OreDictUnificator .get(OrePrefixes.rotor, Materials.MagnetohydrodynamicallyConstrainedStarMatter, 4L), GT_OreDictUnificator.get("rotorShirabon", 4), GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SpaceTime, 2L), GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.Infinity, 2L), Materials.Neutronium.getNanite(4) }, - new FluidStack[] { fluid_0, fluid_1, fluid_2, fluid_3 }, + new FluidStack[] { fluid_0, fluid_1, fluid_2, lubricantFluid }, ItemList.Electric_Pump_UXV.get(1), craftingTimeInTicks, craftingEuPerTick); @@ -5150,7 +5153,7 @@ public class DreamCraftRecipeLoader { MaterialsKevlar.Kevlar.getPlates(64), MaterialsKevlar.Kevlar.getPlates(16), GT_OreDictUnificator.get("plateRadoxPoly", 64L), GT_OreDictUnificator.get("plateRadoxPoly", 16L), Materials.Neutronium.getNanite(4) }, - new FluidStack[] { fluid_0, fluid_1, fluid_2, fluid_3 }, + new FluidStack[] { fluid_0, fluid_1, fluid_2, lubricantFluid }, ItemList.Conveyor_Module_UXV.get(1), craftingTimeInTicks, craftingEuPerTick); @@ -5183,7 +5186,7 @@ public class DreamCraftRecipeLoader { GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SpaceTime, 6L), GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.Infinity, 6L), Materials.Neutronium.getNanite(8) }, - new FluidStack[] { fluid_0, fluid_1, fluid_2, fluid_3 }, + new FluidStack[] { fluid_0, fluid_1, fluid_2, lubricantFluid }, ItemList.Robot_Arm_UXV.get(1L), craftingTimeInTicks, craftingEuPerTick); @@ -5218,7 +5221,7 @@ public class DreamCraftRecipeLoader { GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SpaceTime, 4L), GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.Infinity, 4L), Materials.Neutronium.getNanite(4) }, - new FluidStack[] { fluid_0, fluid_1, fluid_2, fluid_3 }, + new FluidStack[] { fluid_0, fluid_1, fluid_2, lubricantFluid }, ItemList.Electric_Piston_UXV.get(1), craftingTimeInTicks, craftingEuPerTick); @@ -5250,7 +5253,7 @@ public class DreamCraftRecipeLoader { Materials.Neutronium.getNanite(8) }, - new FluidStack[] { fluid_0, fluid_1, fluid_2, fluid_3 }, + new FluidStack[] { fluid_0, fluid_1, fluid_2, solderingAlloy }, ItemList.Emitter_UXV.get(1L), craftingTimeInTicks, craftingEuPerTick); @@ -5280,7 +5283,7 @@ public class DreamCraftRecipeLoader { GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SpaceTime, 7L), GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.Infinity, 7L), Materials.Neutronium.getNanite(8) }, - new FluidStack[] { fluid_0, fluid_1, fluid_2, fluid_3 }, + new FluidStack[] { fluid_0, fluid_1, fluid_2, solderingAlloy }, ItemList.Sensor_UXV.get(1L), craftingTimeInTicks, craftingEuPerTick); @@ -5317,7 +5320,7 @@ public class DreamCraftRecipeLoader { GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.SpaceTime, 8L), GT_OreDictUnificator.get(OrePrefixes.wireGt04, Materials.Infinity, 8L), Materials.Neutronium.getNanite(12) }, - new FluidStack[] { fluid_0, fluid_1, fluid_2, fluid_3 }, + new FluidStack[] { fluid_0, fluid_1, fluid_2, solderingAlloy }, ItemList.Field_Generator_UXV.get(1L), craftingTimeInTicks, craftingEuPerTick); -- cgit From 1586d30b4aa38d3c66048b602b542abb72ed7daf Mon Sep 17 00:00:00 2001 From: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com> Date: Sat, 18 Feb 2023 18:16:36 +0000 Subject: Another static final constant. --- .../github/technus/tectech/recipe/EyeOfHarmonyRecipeStorage.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipeStorage.java b/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipeStorage.java index f4a5dbb92c..9603e60af9 100644 --- a/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipeStorage.java +++ b/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipeStorage.java @@ -27,6 +27,7 @@ import gregtech.api.util.GT_OreDictUnificator; public class EyeOfHarmonyRecipeStorage { public static final long BILLION = LongMath.pow(10, 9); + private static final double CHANCE_DECREASE_PER_DIMENSION = 0.05; // Map is unique so this is fine. HashMap blocksMapInverted = new HashMap() { @@ -67,7 +68,8 @@ public class EyeOfHarmonyRecipeStorage { BILLION * (blockDimensionDisplay.getDimensionRocketTier() + 1), timeCalculator(blockDimensionDisplay.getDimensionRocketTier()), blockDimensionDisplay.getDimensionRocketTier(), - 1.0 - 0.05 * blockDimensionDisplay.getDimensionRocketTier())); + 1.0 - CHANCE_DECREASE_PER_DIMENSION + * blockDimensionDisplay.getDimensionRocketTier())); } } } @@ -138,7 +140,7 @@ public class EyeOfHarmonyRecipeStorage { BILLION * (rocketTier + 1), timeCalculator(rocketTier), rocketTier, // -1 so that we avoid out of bounds exception on NEI render. - 1.0 - rocketTier / 10.0)); + 1.0 - rocketTier * CHANCE_DECREASE_PER_DIMENSION)); } private static long timeCalculator(final long rocketTier) { -- cgit From 686b4483b496dade0d004a3a9bc212e91c43c3d6 Mon Sep 17 00:00:00 2001 From: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com> Date: Mon, 20 Feb 2023 00:34:02 +0000 Subject: Make MHDCSM used earlier --- .../tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java | 6 +++--- .../com/github/technus/tectech/recipe/EyeOfHarmonyRecipe.java | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java b/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java index aeedccd5bf..6db446aaa1 100644 --- a/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java +++ b/src/main/java/com/github/technus/tectech/compatibility/dreamcraft/DreamCraftRecipeLoader.java @@ -5345,15 +5345,15 @@ public class DreamCraftRecipeLoader { final ItemStack[] plateList = new ItemStack[] { // Dense Shirabon plate. - GT_OreDictUnificator.get("plateDenseShirabon", 1), + GT_OreDictUnificator.get("boltShirabon", 2), GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.WhiteDwarfMatter, 2), GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.WhiteDwarfMatter, 8), GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.WhiteDwarfMatter, 32), GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.BlackDwarfMatter, 2), GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.BlackDwarfMatter, 8), GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.BlackDwarfMatter, 32), - GT_OreDictUnificator.get(OrePrefixes.stick, Materials.BlackDwarfMatter, 32), - GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.MagnetohydrodynamicallyConstrainedStarMatter, 2) }; + GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.MagnetohydrodynamicallyConstrainedStarMatter, 2), + GT_OreDictUnificator.get(OrePrefixes.bolt, Materials.Magn