From 2b424e8295b7071b85a2960a87da91bf0dd3df02 Mon Sep 17 00:00:00 2001 From: Maxim Date: Sat, 22 Jul 2023 16:12:12 +0200 Subject: Implement generic processing logic (#697) * Migrated extruder * Migrated alloy smelter * Migrated arc furnace * Migrated centrifuge * Migrated ICO * Migrated cutter * Migrated dehydrator * Migrated electrolyzer * Migrated fluid heater * Migrated forge hammer * Forgot gtpp machines are cursed * Migrated mac * Migrated mixer * Migrated molecular transformer * Migrated bender * Migrated sifter * Migrated thermal centrifuge * Migrated VF * Migrated washer * Migrated wiremill * Migrated Volcanus * Migrated adv implo compressor * Migrated XL turbines * Migrated chemplant * Migrated MABS * Migrated ABS * Migrated cyclotron * Migrated Zhuhai * Migrated rock breaker * Migrated rocketdyne * Migrated semifluid generator * Migrated QFT * Minor optimization * Migrate refinery * Migrated solar tower * Migrated TGS * Migrated duplicator * Migrated PSS * Migrated algae pond * Migrated froth flotation cell * Migrated LTFR * Migrated LPF * Migrated sparge tower * Migrated salt * Migrated isamill * Migrate DT * Migrated HE * Migrated mass fab * Migrated chisel * Migrated boiler * Migrated steam machines * Migrated amazon * Disable batch mode button on XL turbines * Update dependencies.gradle * Updated dep * Addressed first batch of reviews * Migrated assembler * Removed unused checkRecipe methods * Forgot these * Fix and cleanup chemplant * Removed getAmounfOfOutputs * Removed special multi behavior * Migrated sound mostly * Addressed new reviews * Fix build fail and chisel sound * Derp * More reviews addressed * Oversight on chemplant batchmode * Fix DT speed bonus * Removed iron blast furnace * Removed generator array * Removed * Simplify rocket engine logic * Removed left over artifacts * Minor fixes * Removed nerf chips * Removed tesla tower * Revert and fix chemplant recipe map * Fix chemplant catalyst damaging * Addressed reviews * Derp --------- Co-authored-by: Martin Robertz --- src/main/java/gregtech/api/util/GTPP_Recipe.java | 4 +- .../gtPlusPlus/api/damage/DamageTeslaTower.java | 23 - .../api/helpers/GregtechPlusPlus_API.java | 41 -- .../minecraft/multi/NoEUBonusMultiBehaviour.java | 27 -- .../multi/NoOutputBonusMultiBehaviour.java | 27 -- .../multi/NoSpeedBonusMultiBehaviour.java | 27 -- .../minecraft/multi/SpecialMultiBehaviour.java | 45 -- .../core/client/renderer/RenderPlasmaBolt.java | 167 ------- .../java/gtPlusPlus/core/config/ConfigHandler.java | 3 - .../core/entity/EntityTeslaTowerLightning.java | 180 -------- .../core/entity/InternalEntityRegistry.java | 14 - .../gtPlusPlus/core/handler/COMPAT_HANDLER.java | 6 - src/main/java/gtPlusPlus/core/lib/CORE.java | 1 - .../java/gtPlusPlus/core/proxy/ClientProxy.java | 3 - .../gtPlusPlus/core/recipe/RECIPES_Machines.java | 59 --- .../java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java | 9 - .../xmod/gregtech/api/enums/GregtechItemList.java | 13 - .../base/GregtechMeta_MultiBlockBase.java | 514 +-------------------- .../base/GregtechMeta_SteamMultiBase.java | 151 +----- .../common/blocks/GregtechMetaCasingBlocks2.java | 1 - .../blocks/GregtechMetaSpecialMultiCasings.java | 1 - .../common/items/MetaGeneratedGregtechItems.java | 6 - .../machines/multi/misc/GMTE_AmazonPackager.java | 157 +------ .../multi/misc/GregtechMTE_TeslaTower.java | 503 -------------------- ...gtechMetaTileEntity_IndustrialAlloySmelter.java | 111 +---- ...regtechMetaTileEntity_IndustrialArcFurnace.java | 45 +- ...regtechMetaTileEntity_IndustrialCentrifuge.java | 16 +- .../GregtechMetaTileEntity_IndustrialChisel.java | 102 ++-- .../GregtechMetaTileEntity_IndustrialCokeOven.java | 23 +- ...echMetaTileEntity_IndustrialCuttingMachine.java | 16 +- ...regtechMetaTileEntity_IndustrialDehydrator.java | 93 +--- ...gtechMetaTileEntity_IndustrialElectrolyzer.java | 15 +- .../GregtechMetaTileEntity_IndustrialExtruder.java | 51 +- ...egtechMetaTileEntity_IndustrialFluidHeater.java | 16 +- ...egtechMetaTileEntity_IndustrialForgeHammer.java | 34 +- ...GregtechMetaTileEntity_IndustrialMacerator.java | 26 +- .../GregtechMetaTileEntity_IndustrialMixer.java | 62 +-- ...aTileEntity_IndustrialMolecularTransformer.java | 10 +- ...gtechMetaTileEntity_IndustrialMultiMachine.java | 167 +------ ...regtechMetaTileEntity_IndustrialPlatePress.java | 47 +- .../GregtechMetaTileEntity_IndustrialSifter.java | 21 +- ...MetaTileEntity_IndustrialThermalCentrifuge.java | 16 +- ...techMetaTileEntity_IndustrialVacuumFreezer.java | 10 +- ...GregtechMetaTileEntity_IndustrialWashPlant.java | 33 +- .../GregtechMetaTileEntity_IndustrialWireMill.java | 51 +- .../GregtechMetaTileEntity_IronBlastFurnace.java | 510 -------------------- .../processing/GregtechMetaTileEntity_IsaMill.java | 86 ++-- ...hMetaTileEntity_NuclearSaltProcessingPlant.java | 48 +- .../GregtechMetaTileEntity_SpargeTower.java | 48 +- ...egtechMetaTileEntity_Adv_DistillationTower.java | 41 +- .../advanced/GregtechMetaTileEntity_Adv_EBF.java | 113 +---- .../GregtechMetaTileEntity_Adv_HeatExchanger.java | 17 +- .../GregtechMetaTileEntity_Adv_Implosion.java | 22 +- .../multi/production/GT4Entity_AutoCrafter.java | 50 +- .../multi/production/GT4Entity_ThermalBoiler.java | 31 +- .../GregtechMTE_ElementalDuplicator.java | 136 ++---- .../production/GregtechMTE_FrothFlotationCell.java | 122 ++--- .../production/GregtechMTE_NuclearReactor.java | 123 ++--- .../GregtechMetaTileEntityGeneratorArray.java | 452 ------------------ .../production/GregtechMetaTileEntityTreeFarm.java | 26 +- .../GregtechMetaTileEntity_AlloyBlastSmelter.java | 128 +---- .../GregtechMetaTileEntity_Cyclotron.java | 116 ++--- ...egtechMetaTileEntity_IndustrialFishingPond.java | 181 +++----- ...egtechMetaTileEntity_IndustrialRockBreaker.java | 89 ++-- .../GregtechMetaTileEntity_LargeRocketEngine.java | 70 +-- ...techMetaTileEntity_LargeSemifluidGenerator.java | 21 +- .../GregtechMetaTileEntity_MassFabricator.java | 297 ++---------- ...techMetaTileEntity_QuantumForceTransformer.java | 446 ++++++++---------- .../GregtechMetaTileEntity_Refinery.java | 22 +- .../GregtechMetaTileEntity_SolarTower.java | 46 +- .../algae/GregtechMTE_AlgaePondBase.java | 97 ++-- .../chemplant/GregtechMTE_ChemicalPlant.java | 298 ++++-------- ...egTechMetaTileEntity_MegaAlloyBlastSmelter.java | 89 ++-- .../turbines/GT_MTE_LargeTurbine_Gas.java | 18 +- .../turbines/GT_MTE_LargeTurbine_Plasma.java | 27 +- .../GregtechMetaTileEntity_LargerTurbineBase.java | 53 +-- ...chMetaTileEntity_PowerSubStationController.java | 13 +- .../gregtech/GregtechIndustrialGeneratorArray.java | 24 - .../gregtech/GregtechIronBlastFurnace.java | 24 - .../registration/gregtech/GregtechTeslaTower.java | 14 - 80 files changed, 1062 insertions(+), 5783 deletions(-) delete mode 100644 src/main/java/gtPlusPlus/api/damage/DamageTeslaTower.java delete mode 100644 src/main/java/gtPlusPlus/api/helpers/GregtechPlusPlus_API.java delete mode 100644 src/main/java/gtPlusPlus/api/objects/minecraft/multi/NoEUBonusMultiBehaviour.java delete mode 100644 src/main/java/gtPlusPlus/api/objects/minecraft/multi/NoOutputBonusMultiBehaviour.java delete mode 100644 src/main/java/gtPlusPlus/api/objects/minecraft/multi/NoSpeedBonusMultiBehaviour.java delete mode 100644 src/main/java/gtPlusPlus/api/objects/minecraft/multi/SpecialMultiBehaviour.java delete mode 100644 src/main/java/gtPlusPlus/core/client/renderer/RenderPlasmaBolt.java delete mode 100644 src/main/java/gtPlusPlus/core/entity/EntityTeslaTowerLightning.java delete mode 100644 src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GregtechMTE_TeslaTower.java delete mode 100644 src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IronBlastFurnace.java delete mode 100644 src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntityGeneratorArray.java delete mode 100644 src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechIndustrialGeneratorArray.java delete mode 100644 src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechIronBlastFurnace.java delete mode 100644 src/main/java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechTeslaTower.java (limited to 'src/main/java') diff --git a/src/main/java/gregtech/api/util/GTPP_Recipe.java b/src/main/java/gregtech/api/util/GTPP_Recipe.java index f5bd29947d..9fd12eee05 100644 --- a/src/main/java/gregtech/api/util/GTPP_Recipe.java +++ b/src/main/java/gregtech/api/util/GTPP_Recipe.java @@ -682,11 +682,11 @@ public class GTPP_Recipe extends GT_Recipe { "temp4", null, "", + 1, 0, 0, 0, - 0, - 0, + 1, "", 0, "", diff --git a/src/main/java/gtPlusPlus/api/damage/DamageTeslaTower.java b/src/main/java/gtPlusPlus/api/damage/DamageTeslaTower.java deleted file mode 100644 index 0d9d4d5dc2..0000000000 --- a/src/main/java/gtPlusPlus/api/damage/DamageTeslaTower.java +++ /dev/null @@ -1,23 +0,0 @@ -package gtPlusPlus.api.damage; - -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.ChatComponentTranslation; -import net.minecraft.util.IChatComponent; - -import gtPlusPlus.core.world.damage.BaseCustomDamageSource; - -public class DamageTeslaTower extends BaseCustomDamageSource { - - public DamageTeslaTower(Entity transmitter) { - super("plasmabolt", transmitter, null); - this.setDamageBypassesArmor(); - this.setDamageIsAbsolute(); - } - - @Override - public IChatComponent func_151519_b(EntityLivingBase target) { - String s = "death.attack." + this.damageType; - return new ChatComponentTranslation(s, target.getCommandSenderName(), "Plasma"); - } -} diff --git a/src/main/java/gtPlusPlus/api/helpers/GregtechPlusPlus_API.java b/src/main/java/gtPlusPlus/api/helpers/GregtechPlusPlus_API.java deleted file mode 100644 index 24d2da3134..0000000000 --- a/src/main/java/gtPlusPlus/api/helpers/GregtechPlusPlus_API.java +++ /dev/null @@ -1,41 +0,0 @@ -package gtPlusPlus.api.helpers; - -import java.util.HashMap; - -import gtPlusPlus.api.objects.Logger; -import gtPlusPlus.api.objects.minecraft.multi.SpecialMultiBehaviour; -import gtPlusPlus.core.util.minecraft.ItemUtils; -import gtPlusPlus.xmod.gregtech.api.util.SpecialBehaviourTooltipHandler; - -public class GregtechPlusPlus_API { - - public static class Multiblock_API { - - private static final HashMap mSpecialBehaviourItemMap = new HashMap(); - - /** - * Register a special behaviour for GT++ Multis to listen use. - * - * @param aBehaviour - An Object which has extended {@link SpecialMultiBehaviour}'s base implementation. - * @return - Did this behaviour register properly? - */ - public static boolean registerSpecialMultiBehaviour(SpecialMultiBehaviour aBehaviour) { - if (aBehaviour.getTriggerItem() == null || aBehaviour.getTriggerItemTooltip() == null - || aBehaviour.getTriggerItemTooltip().length() <= 0) { - Logger.INFO( - "Failed to attach custom multiblock logic to " - + ItemUtils.getItemName(aBehaviour.getTriggerItem())); - return false; - } - mSpecialBehaviourItemMap.put("UniqueKey_" + aBehaviour.hashCode(), aBehaviour); - SpecialBehaviourTooltipHandler - .addTooltipForItem(aBehaviour.getTriggerItem(), aBehaviour.getTriggerItemTooltip()); - Logger.INFO("Attached custom multiblock logic to " + ItemUtils.getItemName(aBehaviour.getTriggerItem())); - return true; - } - - public static final HashMap getSpecialBehaviourItemMap() { - return mSpecialBehaviourItemMap; - } - } -} diff --git a/src/main/java/gtPlusPlus/api/objects/minecraft/multi/NoEUBonusMultiBehaviour.java b/src/main/java/gtPlusPlus/api/objects/minecraft/multi/NoEUBonusMultiBehaviour.java deleted file mode 100644 index b4ab2c9315..0000000000 --- a/src/main/java/gtPlusPlus/api/objects/minecraft/multi/NoEUBonusMultiBehaviour.java +++ /dev/null @@ -1,27 +0,0 @@ -package gtPlusPlus.api.objects.minecraft.multi; - -import net.minecraft.item.ItemStack; - -import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; - -public class NoEUBonusMultiBehaviour extends SpecialMultiBehaviour { - - public NoEUBonusMultiBehaviour() { - // Used by other mods which may wish to not obtain bonus outputs on their Sifting or Maceration recipes. - } - - @Override - public ItemStack getTriggerItem() { - return GregtechItemList.Chip_MultiNerf_NoEuBonus.get(1); - } - - @Override - public String getTriggerItemTooltip() { - return "Prevents EU discounts on GT++ multiblocks when used"; - } - - @Override - public int getEUPercent() { - return 0; - } -} diff --git a/src/main/java/gtPlusPlus/api/objects/minecraft/multi/NoOutputBonusMultiBehaviour.java b/src/main/java/gtPlusPlus/api/objects/minecraft/multi/NoOutputBonusMultiBehaviour.java deleted file mode 100644 index cea7e40a51..0000000000 --- a/src/main/java/gtPlusPlus/api/objects/minecraft/multi/NoOutputBonusMultiBehaviour.java +++ /dev/null @@ -1,27 +0,0 @@ -package gtPlusPlus.api.objects.minecraft.multi; - -import net.minecraft.item.ItemStack; - -import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; - -public class NoOutputBonusMultiBehaviour extends SpecialMultiBehaviour { - - public NoOutputBonusMultiBehaviour() { - // Used by other mods which may wish to not obtain bonus outputs on their Sifting or Maceration recipes. - } - - @Override - public ItemStack getTriggerItem() { - return GregtechItemList.Chip_MultiNerf_NoOutputBonus.get(1); - } - - @Override - public String getTriggerItemTooltip() { - return "Prevents bonus output % on GT++ multiblocks when used"; - } - - @Override - public int getOutputChanceRoll() { - return 10000; - } -} diff --git a/src/main/java/gtPlusPlus/api/objects/minecraft/multi/NoSpeedBonusMultiBehaviour.java b/src/main/java/gtPlusPlus/api/objects/minecraft/multi/NoSpeedBonusMultiBehaviour.java deleted file mode 100644 index cfe6afee66..0000000000 --- a/src/main/java/gtPlusPlus/api/objects/minecraft/multi/NoSpeedBonusMultiBehaviour.java +++ /dev/null @@ -1,27 +0,0 @@ -package gtPlusPlus.api.objects.minecraft.multi; - -import net.minecraft.item.ItemStack; - -import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; - -public class NoSpeedBonusMultiBehaviour extends SpecialMultiBehaviour { - - public NoSpeedBonusMultiBehaviour() { - // Used by other mods which may wish to not obtain bonus outputs on their Sifting or Maceration recipes. - } - - @Override - public ItemStack getTriggerItem() { - return GregtechItemList.Chip_MultiNerf_NoSpeedBonus.get(1); - } - - @Override - public String getTriggerItemTooltip() { - return "Prevents speed bonuses on GT++ multiblocks when used"; - } - - @Override - public int getSpeedBonusPercent() { - return 0; - } -} diff --git a/src/main/java/gtPlusPlus/api/objects/minecraft/multi/SpecialMultiBehaviour.java b/src/main/java/gtPlusPlus/api/objects/minecraft/multi/SpecialMultiBehaviour.java deleted file mode 100644 index 94c87ab71b..0000000000 --- a/src/main/java/gtPlusPlus/api/objects/minecraft/multi/SpecialMultiBehaviour.java +++ /dev/null @@ -1,45 +0,0 @@ -package gtPlusPlus.api.objects.minecraft.multi; - -import net.minecraft.item.ItemStack; - -import gregtech.api.util.GT_Utility; - -/** - * Extend this class to implement custom behaviour for multiblocks. The Trigger item when in a special slot or input - * bus, will cause the multiblock to behave as specified. Not overriding a method here will cause the default values to - * be used. - * - * @author Alkalus - * - */ -public abstract class SpecialMultiBehaviour { - - private final int mMaxParallelRecipes = Short.MIN_VALUE; - private final int mEUPercent = Short.MIN_VALUE; - private final int mSpeedBonusPercent = Short.MIN_VALUE; - private final int mOutputChanceRoll = Short.MIN_VALUE; - - public abstract ItemStack getTriggerItem(); - - public abstract String getTriggerItemTooltip(); - - public int getMaxParallelRecipes() { - return this.mMaxParallelRecipes; - } - - public int getEUPercent() { - return this.mEUPercent; - } - - public int getSpeedBonusPercent() { - return this.mSpeedBonusPercent; - } - - public int getOutputChanceRoll() { - return this.mOutputChanceRoll; - } - - public final boolean isTriggerItem(ItemStack aToMatch) { - return GT_Utility.areStacksEqual(getTriggerItem(), aToMatch, false); - } -} diff --git a/src/main/java/gtPlusPlus/core/client/renderer/RenderPlasmaBolt.java b/src/main/java/gtPlusPlus/core/client/renderer/RenderPlasmaBolt.java deleted file mode 100644 index be63f2d9fd..0000000000 --- a/src/main/java/gtPlusPlus/core/client/renderer/RenderPlasmaBolt.java +++ /dev/null @@ -1,167 +0,0 @@ -package gtPlusPlus.core.client.renderer; - -import java.util.Random; - -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.entity.Render; -import net.minecraft.entity.Entity; -import net.minecraft.util.ResourceLocation; - -import org.lwjgl.opengl.GL11; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import gtPlusPlus.api.objects.Logger; -import gtPlusPlus.api.objects.random.XSTR; -import gtPlusPlus.core.entity.EntityTeslaTowerLightning; - -@SideOnly(Side.CLIENT) -public class RenderPlasmaBolt extends Render { - - public RenderPlasmaBolt() { - Logger.INFO("[Render] Create custom lightning renderer."); - } - - /** - * Actually renders the given argument. This is a synthetic bridge method, always casting down its argument and then - * handing it off to a worker function which does the actual work. In all probabilty, the class Render is generic - * (Render= 0; --i) { - adouble[i] = d3; - adouble1[i] = d4; - d3 += (double) (random.nextInt(11) - 5); - d4 += (double) (random.nextInt(11) - 5); - } - - for (int k1 = 0; k1 < 4; ++k1) { - Random random1 = new XSTR(p_76986_1_.boltVertex); - - for (int j = 0; j < 3; ++j) { - int k = 7; - int l = 0; - - if (j > 0) { - k = 7 - j; - } - - if (j > 0) { - l = k - 2; - } - - double d5 = adouble[k] - d3; - double d6 = adouble1[k] - d4; - - for (int i1 = k; i1 >= l; --i1) { - double d7 = d5; - double d8 = d6; - - if (j == 0) { - d5 += (double) (random1.nextInt(11) - 5); - d6 += (double) (random1.nextInt(11) - 5); - } else { - d5 += (double) (random1.nextInt(31) - 15); - d6 += (double) (random1.nextInt(31) - 15); - } - - tessellator.startDrawing(5); - float f2 = 0.5F; - tessellator.setColorRGBA_F(0.9F * f2, 0.9F * f2, 1.0F * f2, 0.3F); - double d9 = 0.1D + (double) k1 * 0.2D; - - if (j == 0) { - d9 *= (double) i1 * 0.1D + 1.0D; - } - - double d10 = 0.1D + (double) k1 * 0.2D; - - if (j == 0) { - d10 *= (double) (i1 - 1) * 0.1D + 1.0D; - } - - for (int j1 = 0; j1 < 5; ++j1) { - double d11 = p_76986_2_ + 0.5D - d9; - double d12 = p_76986_6_ + 0.5D - d9; - - if (j1 == 1 || j1 == 2) { - d11 += d9 * 2.0D; - } - - if (j1 == 2 || j1 == 3) { - d12 += d9 * 2.0D; - } - - double d13 = p_76986_2_ + 0.5D - d10; - double d14 = p_76986_6_ + 0.5D - d10; - - if (j1 == 1 || j1 == 2) { - d13 += d10 * 2.0D; - } - - if (j1 == 2 || j1 == 3) { - d14 += d10 * 2.0D; - } - - tessellator.addVertex(d13 + d5, p_76986_4_ + (double) (i1 * 16), d14 + d6); - tessellator.addVertex(d11 + d7, p_76986_4_ + (double) ((i1 + 1) * 16), d12 + d8); - } - - tessellator.draw(); - } - } - } - GL11.glDisable(GL11.GL_BLEND); - GL11.glEnable(GL11.GL_LIGHTING); - GL11.glEnable(GL11.GL_TEXTURE_2D); - } - - /** - * Returns the location of an entity's texture. Doesn't seem to be called unless you call Render.bindEntityTexture. - */ - protected ResourceLocation getEntityTexture(EntityTeslaTowerLightning p_110775_1_) { - return null; - } - - /** - * Returns the location of an entity's texture. Doesn't seem to be called unless you call Render.bindEntityTexture. - */ - @Override - protected ResourceLocation getEntityTexture(Entity p_110775_1_) { - Logger.INFO("Render Plasma. 5"); - return this.getEntityTexture((EntityTeslaTowerLightning) p_110775_1_); - } - - /** - * Actually renders the given argument. This is a synthetic bridge method, always casting down its argument and then - * handing it off to a worker function which does the actual work. In all probabilty, the class Render is generic - * (Render= 0) { - Logger.INFO("Plasma Bolt - state >= 0."); - if (this.worldObj.isRemote) { - Logger.INFO("Plasma Bolt - World is remote, resetting state to 2."); - this.worldObj.lastLightningBolt = 2; - } else { - Logger.INFO("Plasma Bolt - World is server side."); - double d0 = 3.0D; - List list = this.worldObj.getEntitiesWithinAABBExcludingEntity( - this, - AxisAlignedBB.getBoundingBox( - this.posX - d0, - this.posY - d0, - this.posZ - d0, - this.posX + d0, - this.posY + 6.0D + d0, - this.posZ + d0)); - - for (int l = 0; l < list.size(); ++l) { - Entity entity = list.get(l); - if (this.boltValidDamageTarget.getUniqueID().equals(entity.getUniqueID())) { - if (!entity.getUniqueID().equals(boltOwnerID)) { - Logger.INFO("Plasma Bolt - Hurting Entity."); - Logger.INFO("Plasma Bolt - " + entity.getCommandSenderName() + "."); - // if (!net.minecraftforge.event.ForgeEventFactory.onEntityStruckByLightning(entity, this)) - EntityUtils.doFireDamage(entity, 5); - EntityUtils.doDamage(entity, new DamageTeslaTower(entity), 20); - } - } - } - } - } - - if (this.lightningState < 0) { - Logger.INFO("Plasma Bolt - state < 0."); - if (this.boltLivingTime == 0) { - Logger.INFO("Plasma Bolt - setting dead."); - this.setDead(); - } else if (this.lightningState < -rand.nextInt(10)) { - Logger.INFO("Plasma Bolt - dunno."); - --this.boltLivingTime; - this.lightningState = 1; - this.boltVertex = rand.nextLong(); - // Puts fires out. - if (!this.worldObj.isRemote && this.worldObj.getGameRules().getGameRuleBooleanValue("doFireTick") - && this.worldObj.doChunksNearChunkExist( - MathHelper.floor_double(this.posX), - MathHelper.floor_double(this.posY), - MathHelper.floor_double(this.posZ), - 10)) { - Logger.INFO("Plasma Bolt - Putting fires out [2]."); - int i = MathHelper.floor_double(this.posX); - int j = MathHelper.floor_double(this.posY); - int k = MathHelper.floor_double(this.posZ); - - if (this.worldObj.getBlock(i, j, k).getMaterial() == Material.fire) { - this.worldObj.setBlock(i, j, k, Blocks.air); - } - } - } - } - } - - @Override - protected void entityInit() {} - - /** - * (abstract) Protected helper method to read subclass entity data from NBT. - */ - @Override - protected void readEntityFromNBT(NBTTagCompound p_70037_1_) {} - - /** - * (abstract) Protected helper method to write subclass entity data to NBT. - */ - @Override - protected void writeEntityToNBT(NBTTagCompound p_70014_1_) {} -} diff --git a/src/main/java/gtPlusPlus/core/entity/InternalEntityRegistry.java b/src/main/java/gtPlusPlus/core/entity/InternalEntityRegistry.java index e4f82ea80e..1254d9bdff 100644 --- a/src/main/java/gtPlusPlus/core/entity/InternalEntityRegistry.java +++ b/src/main/java/gtPlusPlus/core/entity/InternalEntityRegistry.java @@ -83,8 +83,6 @@ public class InternalEntityRegistry { Utils.rgbtoHexValue(20, 200, 20), Utils.rgbtoHexValue(20, 20, 20)); - // EntityRegistry.registerGlobalEntityID(EntitySickBlaze.class, "sickBlaze", - // EntityRegistry.findGlobalUniqueEntityId(), Utils.rgbtoHexValue(0, 75, 0), Utils.rgbtoHexValue(75, 175, 75)); EntityRegistry .registerModEntity(EntitySickBlaze.class, "sickBlaze", mEntityID++, GTplusplus.instance, 64, 20, true); ItemCustomSpawnEgg.registerEntityForSpawnEgg( @@ -93,18 +91,6 @@ public class InternalEntityRegistry { Utils.rgbtoHexValue(40, 180, 40), Utils.rgbtoHexValue(75, 75, 75)); - // EntityRegistry.registerGlobalEntityID(EntityTeslaTowerLightning.class, "plasmaBolt", - // EntityRegistry.findGlobalUniqueEntityId(), Utils.rgbtoHexValue(255, 0, 0), Utils.rgbtoHexValue(125, 125, - // 125)); - EntityRegistry.registerModEntity( - EntityTeslaTowerLightning.class, - "plasmaBolt", - mEntityID++, - GTplusplus.instance, - 64, - 5, - true); - EntityRegistry.registerModEntity( EntityThrowableBomb.class, "EntityThrowableBomb", diff --git a/src/main/java/gtPlusPlus/core/handler/COMPAT_HANDLER.java b/src/main/java/gtPlusPlus/core/handler/COMPAT_HANDLER.java index 0d8c9fc529..8e9a1ca330 100644 --- a/src/main/java/gtPlusPlus/core/handler/COMPAT_HANDLER.java +++ b/src/main/java/gtPlusPlus/core/handler/COMPAT_HANDLER.java @@ -72,7 +72,6 @@ import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialFishPond import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialFluidHeater; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialForgeHammer; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialFuelRefinery; -import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialGeneratorArray; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialMacerator; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialMassFabricator; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialMixer; @@ -84,7 +83,6 @@ import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialThermalC import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialTreeFarm; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialWashPlant; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialWiremill; -import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIronBlastFurnace; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIsaMill; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechLFTR; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechLargeTurbinesAndHeatExchanger; @@ -103,7 +101,6 @@ import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechSolarTower; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechSteamCondenser; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechSteamMultis; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechSuperChests; -import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechTeslaTower; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechThaumcraftDevices; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechThreadedBuffers; import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechTieredChunkloaders; @@ -152,7 +149,6 @@ public class COMPAT_HANDLER { GregtechNuclearSaltProcessingPlant.run(); GregtechSteamCondenser.run(); GregtechSafeBlock.run(); - GregtechIronBlastFurnace.run(); GregtechIndustrialCentrifuge.run(); GregtechIndustrialCokeOven.run(); GregtechIndustrialPlatePress.run(); @@ -183,9 +179,7 @@ public class COMPAT_HANDLER { GregtechIndustrialWashPlant.run(); GregtechSemiFluidgenerators.run(); GregtechWirelessChargers.run(); - GregtechIndustrialGeneratorArray.run(); GregtechIndustrialCuttingFactory.run(); - GregtechTeslaTower.run(); GregtechSuperChests.run(); GregtechIndustrialFishPond.run(); GregtechTieredChunkloaders.run(); diff --git a/src/main/java/gtPlusPlus/core/lib/CORE.java b/src/main/java/gtPlusPlus/core/lib/CORE.java index b846434665..bec7c04c56 100644 --- a/src/main/java/gtPlusPlus/core/lib/CORE.java +++ b/src/main/java/gtPlusPlus/core/lib/CORE.java @@ -185,7 +185,6 @@ public class CORE { public static boolean enableMultiblock_IndustrialMacerationStack = true; public static boolean enableMultiblock_IndustrialPlatePress = true; public static boolean enableMultiblock_IndustrialWireMill = true; - public static boolean enableMultiblock_IronBlastFurnace = true; public static boolean enableMultiblock_MatterFabricator = true; public static boolean enableMultiblock_MultiTank = true; public static boolean enableMultiblock_PowerSubstation = true; diff --git a/src/main/java/gtPlusPlus/core/proxy/ClientProxy.java b/src/main/java/gtPlusPlus/core/proxy/ClientProxy.java index 65c25f9f1f..e6c441d4e8 100644 --- a/src/main/java/gtPlusPlus/core/proxy/ClientProxy.java +++ b/src/main/java/gtPlusPlus/core/proxy/ClientProxy.java @@ -43,14 +43,12 @@ import gtPlusPlus.core.client.renderer.RenderBatKing; import gtPlusPlus.core.client.renderer.RenderDecayChest; import gtPlusPlus.core.client.renderer.RenderGiantChicken; import gtPlusPlus.core.client.renderer.RenderMiningExplosivesPrimed; -import gtPlusPlus.core.client.renderer.RenderPlasmaBolt; import gtPlusPlus.core.client.renderer.RenderSickBlaze; import gtPlusPlus.core.client.renderer.RenderStaballoyConstruct; import gtPlusPlus.core.client.renderer.RenderToxinball; import gtPlusPlus.core.common.CommonProxy; import gtPlusPlus.core.common.compat.COMPAT_PlayerAPI; import gtPlusPlus.core.entity.EntityPrimedMiningExplosive; -import gtPlusPlus.core.entity.EntityTeslaTowerLightning; import gtPlusPlus.core.entity.monster.EntityBatKing; import gtPlusPlus.core.entity.monster.EntityGiantChickenBase; import gtPlusPlus.core.entity.monster.EntitySickBlaze; @@ -152,7 +150,6 @@ public class ClientProxy extends CommonProxy implements Runnable { RenderingRegistry.registerEntityRenderingHandler( EntityHydrofluoricAcidPotion.class, new RenderSnowball(ModItems.itemHydrofluoricPotion)); - RenderingRegistry.registerEntityRenderingHandler(EntityTeslaTowerLightning.class, new RenderPlasmaBolt()); RenderingRegistry.registerEntityRenderingHandler( EntityGiantChickenBase.class, new RenderGiantChicken(new ModelGiantChicken(), 1f)); diff --git a/src/main/java/gtPlusPlus/core/recipe/RECIPES_Machines.java b/src/main/java/gtPlusPlus/core/recipe/RECIPES_Machines.java index f8c673de6c..6a738158de 100644 --- a/src/main/java/gtPlusPlus/core/recipe/RECIPES_Machines.java +++ b/src/main/java/gtPlusPlus/core/recipe/RECIPES_Machines.java @@ -499,17 +499,6 @@ public class RECIPES_Machines { } } - private static void multiGeneratorArray() { - - GT_ModHandler.addCraftingRecipe( - GregtechItemList.Generator_Array_Controller.get(1L), - CI.bitsd, - new Object[] { "CTC", "FMF", "CBC", 'M', CI.getTieredGTPPMachineCasing(4, 1), 'B', - OrePrefixes.pipeHuge.get(Materials.StainlessSteel), 'C', - OrePrefixes.circuit.get(Materials.Data), 'F', ItemList.Electric_Pump_EV, 'T', - CI.getSensor(4, 1) }); - } - private static void multiForgeHammer() { CORE.RA.addSixSlotAssemblingRecipe( @@ -1227,54 +1216,6 @@ public class RECIPES_Machines { 20 * 60, 120); - if (CORE.ConfigSwitches.enableMultiblock_IronBlastFurnace) { - - RECIPE_IronBlastFurnace = GregtechItemList.Machine_Iron_BlastFurnace.get(1); - RECIPE_IronPlatedBricks = GregtechItemList.Casing_IronPlatedBricks.get(1); - - // Iron BF - RecipeUtils.addShapedGregtechRecipe( - "plateDoubleAnyIron", - "craftingFurnace", - "plateDoubleAnyIron", - boiler_Coal, - CI.machineCasing_ULV, - boiler_Coal, - "plateDoubleAnyIron", - "bucketLava", - "plateDoubleAnyIron", - RECIPE_IronBlastFurnace); - // Iron plated Bricks - RecipeUtils.addShapedGregtechRecipe( - "plateAnyIron", - RECIPES_Tools.craftingToolHardHammer, - "plateAnyIron", - "plateAnyIron", - blockBricks, - "plateAnyIron", - "plateAnyIron", - RECIPES_Tools.craftingToolWrench, - "plateAnyIron", - RECIPE_IronPlatedBricks); - - // Add recycle recipes for the Iron Plated Bricks - // GT_ModHandler.addPulverisationRecipe(RECIPE_IronPlatedBricks, - // ItemUtils.getItemStackOfAmountFromOreDictNoBroken("dustIron", 6), - // ItemUtils.getItemStackOfAmountFromOreDictNoBroken("dustClay", 2), true); - CORE.RA.addPulverisationRecipe( - RECIPE_IronPlatedBricks, - ItemUtils.getItemStackOfAmountFromOreDictNoBroken("dustIron", 6), - ItemUtils.getItemStackOfAmountFromOreDictNoBroken("dustClay", 2), - null); - GT_Values.RA.addArcFurnaceRecipe( - RECIPE_IronPlatedBricks, - new ItemStack[] { ItemUtils.getItemStackOfAmountFromOreDictNoBroken("ingotWroughtIron", 6), - ItemUtils.getItemStackOfAmountFromOreDictNoBroken("dustAsh", 2) }, - new int[] { 0 }, - 32 * 20, - 32); - } - if (CORE.ConfigSwitches.enableMultiblock_IndustrialCentrifuge) { // Industrial Centrifuge RECIPE_IndustrialCentrifugeController = GregtechItemList.Industrial_Centrifuge.get(1); diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java b/src/main/java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java index efddb59ffb..370b286957 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/HANDLER_GT.java @@ -22,11 +22,7 @@ import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import gregtech.common.items.behaviors.Behaviour_DataOrb; -import gtPlusPlus.api.helpers.GregtechPlusPlus_API.Multiblock_API; import gtPlusPlus.api.objects.Logger; -import gtPlusPlus.api.objects.minecraft.multi.NoEUBonusMultiBehaviour; -import gtPlusPlus.api.objects.minecraft.multi.NoOutputBonusMultiBehaviour; -import gtPlusPlus.api.objects.minecraft.multi.NoSpeedBonusMultiBehaviour; import gtPlusPlus.core.handler.COMPAT_HANDLER; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.recipe.common.CI; @@ -98,11 +94,6 @@ public class HANDLER_GT { // Register custom singles to the PA AddCustomMachineToPA.register(); - // Register the No-Bonus Special Behaviour. - Multiblock_API.registerSpecialMultiBehaviour(new NoOutputBonusMultiBehaviour()); - Multiblock_API.registerSpecialMultiBehaviour(new NoSpeedBonusMultiBehaviour()); - Multiblock_API.registerSpecialMultiBehaviour(new NoEUBonusMultiBehaviour()); - // Register some custom recipe maps for any enabled multiblocks. // MultiblockRecipeMapHandler.run(); diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java b/src/main/java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java index d1c8504e88..f7fc2712ce 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java @@ -209,11 +209,6 @@ public enum GregtechItemList implements GregtechItemContainer { Distillus_Upgrade_Chip, Maceration_Upgrade_Chip, - // Chips used to nerf my multis via custom behavioural attachments - Chip_MultiNerf_NoOutputBonus, - Chip_MultiNerf_NoSpeedBonus, - Chip_MultiNerf_NoEuBonus, - // Milling Balls Milling_Ball_Alumina, Milling_Ball_Soapstone, @@ -237,7 +232,6 @@ public enum GregtechItemList implements GregtechItemContainer { GTPP_Casing_MAX, // IronBlastFurnace Machine_Bronze_BlastFurnace - Machine_Iron_BlastFurnace, Casing_IronPlatedBricks, // Large Centrifuge @@ -363,17 +357,10 @@ public enum GregtechItemList implements GregtechItemContainer { Industrial_WashPlant, Casing_WashPlant, - // Generator Array - Generator_Array_Controller, - // Cutting Factory Controller Industrial_CuttingFactoryController, Casing_CuttingFactoryFrame, - // Tesla Tower - TelsaTower, - Casing_TeslaTower, - // Large Extruder Industrial_Extruder, Casing_Extruder, diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java index 9a2d6e7d81..f9af7d29a1 100644 --- a/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java +++ b/src/main/java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java @@ -7,7 +7,6 @@ import java.lang.reflect.Method; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; -import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map.Entry; @@ -27,7 +26,6 @@ import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumChatFormatting; -import net.minecraft.util.ResourceLocation; import net.minecraft.util.StatCollector; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; @@ -59,6 +57,7 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.interfaces.tileentity.IHasWorldObjectAndCoords; import gregtech.api.items.GT_MetaGenerated_Tool; +import gregtech.api.logic.ProcessingLogic; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_ExtendedPowerMultiBlockBase; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; @@ -73,8 +72,6 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Outpu import gregtech.api.objects.GT_ItemStack; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_OreDictUnificator; -import gregtech.api.util.GT_OverclockCalculator; -import gregtech.api.util.GT_ParallelHelper; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; @@ -82,13 +79,8 @@ import gregtech.api.util.IGT_HatchAdder; import gregtech.common.items.GT_MetaGenerated_Tool_01; import gtPlusPlus.GTplusplus; import gtPlusPlus.GTplusplus.INIT_PHASE; -import gtPlusPlus.api.helpers.GregtechPlusPlus_API.Multiblock_API; import gtPlusPlus.api.objects.Logger; -import gtPlusPlus.api.objects.data.AutoMap; import gtPlusPlus.api.objects.minecraft.BlockPos; -import gtPlusPlus.api.objects.minecraft.multi.SpecialMultiBehaviour; -import gtPlusPlus.core.recipe.common.CI; -import gtPlusPlus.core.util.math.MathUtils; import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.core.util.minecraft.PlayerUtils; import gtPlusPlus.core.util.reflect.ReflectionUtils; @@ -112,7 +104,6 @@ public abstract class GregtechMeta_MultiBlockBase mControlCoreBus = new ArrayList<>(); @@ -126,9 +117,6 @@ public abstract class GregtechMeta_MultiBlockBase mAllEnergyHatches = new ArrayList<>(); public ArrayList mAllDynamoHatches = new ArrayList<>(); - // Custom Behaviour Map - private static final HashMap mCustomBehviours = new HashMap<>(); - public GregtechMeta_MultiBlockBase(final int aID, final String aName, final String aNameRegional) { super(aID, aName, aNameRegional); } @@ -153,9 +141,6 @@ public abstract class GregtechMeta_MultiBlockBase tItems = getStoredInputs(); - ArrayList tFluids = getStoredFluids(); - ItemStack[] tItemInputs = tItems.toArray(new ItemStack[tItems.size()]); - FluidStack[] tFluidInputs = tFluids.toArray(new FluidStack[tFluids.size()]); - return checkRecipeGeneric( - tItemInputs, - tFluidInputs, - aMaxParallelRecipes, - aEUPercent, - aSpeedBonusPercent, - aOutputChanceRoll); - } - - public boolean checkRecipeGeneric(GT_Recipe aRecipe, int aMaxParallelRecipes, long aEUPercent, - int aSpeedBonusPercent, int aOutputChanceRoll) { - if (aRecipe == null) { - return false; - } - ArrayList tItems = getStoredInputs(); - ArrayList tFluids = getStoredFluids(); - ItemStack[] tItemInputs = tItems.toArray(new ItemStack[tItems.size()]); - FluidStack[] tFluidInputs = tFluids.toArray(new FluidStack[tFluids.size()]); - return checkRecipeGeneric( - tItemInputs, - tFluidInputs, - aMaxParallelRecipes, - aEUPercent, - aSpeedBonusPercent, - aOutputChanceRoll, - aRecipe); - } - - public boolean checkRecipeGeneric(ItemStack[] aItemInputs, FluidStack[] aFluidInputs, int aMaxParallelRecipes, - long aEUPercent, int aSpeedBonusPercent, int aOutputChanceRoll) { - return checkRecipeGeneric( - aItemInputs, - aFluidInputs, - aMaxParallelRecipes, - aEUPercent, - aSpeedBonusPercent, - aOutputChanceRoll, - null); + @Override + protected void setProcessingLogicPower(ProcessingLogic logic) { + logic.setAvailableVoltage(GT_Utility.roundDownVoltage(this.getMaxInputVoltage())); + logic.setAvailableAmperage(1L); } public long getMaxInputEnergy() { @@ -526,319 +434,6 @@ public abstract class GregtechMeta_MultiBlockBase aNewChances = new AutoMap<>(); - for (int chance : aRecipe.mChances) { - aNewChances.put(boostOutput(chance)); - } - GT_Recipe aClone = aRecipe.copy(); - int[] aTemp = new int[aNewChances.size()]; - int slot = 0; - for (int g : aNewChances) { - aTemp[slot] = g; - slot++; - } - aClone.mChances = aTemp; - return aClone; - } - - /** - * Processes recipes but provides a bonus to the output % of items if they are < 100%. - * - * @param aItemInputs - * @param aFluidInputs - * @param aMaxParallelRecipes - * @param aEUPercent - * @param aSpeedBonusPercent - * @param aOutputChanceRoll - * @param aRecipe - * @return - */ - public boolean checkRecipeBoostedOutputs(ItemStack[] aItemInputs, FluidStack[] aFluidInputs, - int aMaxParallelRecipes, long aEUPercent, int aSpeedBonusPercent, int aOutputChanceRoll, - GT_Recipe aRecipe) { - - long tVoltage = getMaxInputVoltage(); - byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); - long tEnergy = getMaxInputEnergy(); - log("Running checkRecipeGeneric(0)"); - - GT_Recipe tRecipe = aRecipe != null ? aRecipe - : findRecipe( - getBaseMetaTileEntity(), - mLastRecipe, - false, - gregtech.api.enums.GT_Values.V[tTier], - aFluidInputs, - aItemInputs); - - log("Running checkRecipeGeneric(1)"); - - // First we check whether or not we have an input cached for boosting. - // If not, we set it to the current recipe. - // If we do, we compare it against the current recipe, if thy are the same, we try return a boosted recipe, if - // not, we boost a new recipe. - boolean isRecipeInputTheSame = false; - - // No cached recipe inputs, assume first run. - if (mInputVerificationForBoosting == null) { - mInputVerificationForBoosting = tRecipe.mInputs; - is