diff --git a/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer1.java b/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer1.java index e7e12727..b50e6f89 100644 --- a/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer1.java +++ b/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer1.java @@ -145,11 +145,6 @@ public ITexture getTextureOverlay() { return textureOverlay; } - @Override - public int tierOverclock() { - return 1; - } - @Override public String[] getStructureDescription(ItemStack stackSize) { return DescTextLocalization.addText("LargeFusion1.hint", 9); diff --git a/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer2.java b/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer2.java index 09686879..e60689e7 100644 --- a/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer2.java +++ b/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer2.java @@ -146,11 +146,6 @@ public ITexture getTextureOverlay() { return textureOverlay; } - @Override - public int tierOverclock() { - return 2; - } - @Override public String[] getStructureDescription(ItemStack stackSize) { return DescTextLocalization.addText("LargeFusion2.hint", 9); diff --git a/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer3.java b/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer3.java index f8cd64f4..19183c49 100644 --- a/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer3.java +++ b/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer3.java @@ -147,11 +147,6 @@ public ITexture getTextureOverlay() { return textureOverlay; } - @Override - public int tierOverclock() { - return 4; - } - @Override public String[] getStructureDescription(ItemStack stackSize) { return DescTextLocalization.addText("LargeFusion3.hint", 9); diff --git a/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer4.java b/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer4.java index 04de52de..e34ed92c 100644 --- a/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer4.java +++ b/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer4.java @@ -150,11 +150,6 @@ public int getMaxPara() { return 64; } - @Override - public int tierOverclock() { - return 8; - } - @Override public int extraPara(int startEnergy) { if (startEnergy < 160000000) return 4; diff --git a/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer5.java b/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer5.java index ed56e43f..7c397370 100644 --- a/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer5.java +++ b/src/main/java/goodgenerator/blocks/tileEntity/LargeFusionComputer5.java @@ -150,11 +150,6 @@ public int getMaxPara() { return 64; } - @Override - public int tierOverclock() { - return 16; - } - @Override public int extraPara(int startEnergy) { if (startEnergy < 160000000) return 5; diff --git a/src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputer.java b/src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputer.java index 2c1f3a17..2ca4013c 100644 --- a/src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputer.java +++ b/src/main/java/goodgenerator/blocks/tileEntity/base/LargeFusionComputer.java @@ -5,7 +5,6 @@ import static gregtech.api.util.GT_StructureUtility.filterByMTETier; import static gregtech.api.util.GT_StructureUtility.ofFrame; import static gregtech.api.util.GT_Utility.filterValidMTEs; -import static gregtech.api.util.GT_Utility.roundUpVoltage; import java.util.List; @@ -409,27 +408,6 @@ public void onMachineBlockUpdate() { mUpdate = 100; } - public abstract int tierOverclock(); - - public int overclock(int mStartEnergy) { - if (tierOverclock() == 1) { - return 0; - } - if (tierOverclock() == 2) { - return mStartEnergy <= 160000000 ? 1 : 0; - } - if (tierOverclock() == 4) { - return (mStartEnergy <= 160000000 ? 2 : (mStartEnergy <= 320000000 ? 1 : 0)); - } - if (tierOverclock() == 8) { - return (mStartEnergy <= 160000000) ? 3 - : ((mStartEnergy <= 320000000) ? 2 : (mStartEnergy <= 640000000) ? 1 : 0); - } - return (mStartEnergy <= 160000000) ? 4 - : ((mStartEnergy <= 320000000) ? 3 - : ((mStartEnergy <= 640000000) ? 2 : (mStartEnergy <= 1280000000) ? 1 : 0)); - } - @Override public RecipeMap getRecipeMap() { return RecipeMaps.fusionRecipes; @@ -454,19 +432,19 @@ protected GT_ParallelHelper createParallelHelper(@NotNull GT_Recipe recipe) { @NotNull @Override protected GT_OverclockCalculator createOverclockCalculator(@NotNull GT_Recipe recipe) { - int overclockCount = overclock(recipe.mSpecialValue); - if (GT_Values.VP[LargeFusionComputer.this.tier()] <= roundUpVoltage(recipe.mEUt)) { - overclockCount = 0; - } - return super.createOverclockCalculator(recipe).limitOverclockCount(overclockCount); + return overclockDescriber.createCalculator(super.createOverclockCalculator(recipe), recipe); } @NotNull @Override protected CheckRecipeResult validateRecipe(@NotNull GT_Recipe recipe) { - if (!mRunningOnLoad && recipe.mSpecialValue > maxEUStore() - || GT_Values.VP[LargeFusionComputer.this.tier()] < recipe.mEUt) { - return CheckRecipeResultRegistry.insufficientStartupPower(recipe.mSpecialValue); + if (!mRunningOnLoad) { + if (recipe.mSpecialValue > maxEUStore()) { + return CheckRecipeResultRegistry.insufficientStartupPower(recipe.mSpecialValue); + } + if (recipe.mEUt > GT_Values.V[tier()]) { + return CheckRecipeResultRegistry.insufficientPower(recipe.mEUt); + } } maxParallel = getMaxPara() * extraPara(recipe.mSpecialValue); return CheckRecipeResultRegistry.SUCCESSFUL; @@ -486,14 +464,13 @@ public CheckRecipeResult process() { para = getCurrentParallels(); return result; } - }.setOverclock(1, 1); + }; } @Override protected void setProcessingLogicPower(ProcessingLogic logic) { - logic.setAvailableVoltage(GT_Values.V[hatchTier()]); - logic.setAvailableAmperage( - getSingleHatchPower() * (mEnergyHatches.size() + eEnergyMulti.size()) / GT_Values.V[hatchTier()]); + logic.setAvailableVoltage(GT_Values.V[tier()]); + logic.setAvailableAmperage(getSingleHatchPower() * 32 / GT_Values.V[tier()]); } @Override @@ -553,11 +530,6 @@ public IStructureDefinition getStructure_EM() { return STRUCTURE_DEFINITION.get(getClass()); } - @Override - public boolean isGivingInformation() { - return true; - } - @Override public int getMaxEfficiency(ItemStack aStack) { return 10000; @@ -581,7 +553,7 @@ protected ResourceLocation getActivitySound() { @Override public String[] getInfoData() { IGregTechTileEntity baseMetaTileEntity = getBaseMetaTileEntity(); - String tier = switch (hatchTier()) { + String tier = switch (tier()) { case 6 -> EnumChatFormatting.RED + "I" + EnumChatFormatting.RESET; case 7 -> EnumChatFormatting.RED + "II" + EnumChatFormatting.RESET; case 8 -> EnumChatFormatting.RED + "III" + EnumChatFormatting.RESET;