From 4d6dd17d60bc1e892fa8d2ca3bd562fb05049558 Mon Sep 17 00:00:00 2001 From: boubou_19 Date: Tue, 23 Nov 2021 23:25:14 +0100 Subject: centralized pollution for GT multies --- .../multi/GT_MetaTileEntity_Charcoal_Pit.java | 9 ++++++--- .../multi/GT_MetaTileEntity_DieselEngine.java | 3 ++- .../GT_MetaTileEntity_ElectricBlastFurnace.java | 6 ++++++ .../GT_MetaTileEntity_ExtremeDieselEngine.java | 3 ++- .../GT_MetaTileEntity_ImplosionCompressor.java | 3 ++- .../multi/GT_MetaTileEntity_LargeBoiler.java | 10 ++++------ .../GT_MetaTileEntity_LargeBoiler_Bronze.java | 22 +++++++++++++++++++++ .../multi/GT_MetaTileEntity_LargeBoiler_Steel.java | 23 +++++++++++++++++++++- .../GT_MetaTileEntity_LargeBoiler_Titanium.java | 23 +++++++++++++++++++++- ...T_MetaTileEntity_LargeBoiler_TungstenSteel.java | 22 +++++++++++++++++++++ .../multi/GT_MetaTileEntity_LargeTurbine_Gas.java | 3 ++- .../multi/GT_MetaTileEntity_MultiFurnace.java | 6 ++++++ .../GT_MetaTileEntity_PrimitiveBlastFurnace.java | 2 +- .../multi/GT_MetaTileEntity_PyrolyseOven.java | 3 ++- 14 files changed, 121 insertions(+), 17 deletions(-) (limited to 'src/main/java/gregtech/common/tileentities/machines') diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java index 058d5f3487..9fbcccbeda 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java @@ -1,5 +1,6 @@ package gregtech.common.tileentities.machines.multi; +import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.OrePrefixes; import gregtech.api.interfaces.ITexture; @@ -69,7 +70,9 @@ public class GT_MetaTileEntity_Charcoal_Pit extends GT_MetaTileEntity_MultiBlock mEfficiency = 10000; mEfficiencyIncrease = 10000; mMaxProgresstime = Math.max(1, mMaxProgresstime); - GT_Pollution.addPollution(getBaseMetaTileEntity(), mMaxProgresstime * 10); + + //adds all the pollution at once when the recipe starts + GT_Pollution.addPollution(getBaseMetaTileEntity(), mMaxProgresstime * getPollutionPerTick(null)); return true; } else { mEfficiency = 0; @@ -200,7 +203,7 @@ public class GT_MetaTileEntity_Charcoal_Pit extends GT_MetaTileEntity_MultiBlock @Override public int getPollutionPerTick(ItemStack aStack) { - return 0; + return GT_Mod.gregtechproxy.mPollutionCharcoalPit; } @Override @@ -230,7 +233,7 @@ public class GT_MetaTileEntity_Charcoal_Pit extends GT_MetaTileEntity_MultiBlock .addInfo("Controller for the Charcoal Pit") .addInfo("Converts Logs into Brittle Charcoal blocks") .addInfo("Will automatically start when valid") - .addPollutionAmount(100) + .addPollutionAmount(20*getPollutionPerTick(null)) .addSeparator() .beginVariableStructureBlock(3, 11, 3, 6, 3, 11, false) .addStructureInfo("Can be up to 11x6x11 in size, shape doesn't matter") diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java index c6a30ad085..8fce561034 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java @@ -2,6 +2,7 @@ package gregtech.common.tileentities.machines.multi; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import com.gtnewhorizon.structurelib.structure.StructureDefinition; +import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.Materials; import gregtech.api.gui.GT_GUIContainer_MultiMachine; @@ -265,7 +266,7 @@ public class GT_MetaTileEntity_DieselEngine extends GT_MetaTileEntity_EnhancedMu @Override public int getPollutionPerTick(ItemStack aStack) { - return 24; + return GT_Mod.gregtechproxy.mPollutionLargeCombustionEngine; } @Override diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java index 43498a59fe..4df827b5bc 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java @@ -3,6 +3,7 @@ package gregtech.common.tileentities.machines.multi; import com.gtnewhorizon.structurelib.alignment.constructable.IConstructable; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import com.gtnewhorizon.structurelib.structure.StructureDefinition; +import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.HeatingCoilLevel; import gregtech.api.enums.Materials; @@ -128,6 +129,11 @@ public class GT_MetaTileEntity_ElectricBlastFurnace extends GT_MetaTileEntity_Ab return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "ElectricBlastFurnace.png"); } + @Override + public int getPollutionPerTick(ItemStack aStack){ + return GT_Mod.gregtechproxy.mPollutionEBF; + } + @Override public GT_Recipe.GT_Recipe_Map getRecipeMap() { return GT_Recipe.GT_Recipe_Map.sBlastRecipes; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ExtremeDieselEngine.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ExtremeDieselEngine.java index 8c3d474b8b..b1028f5bcd 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ExtremeDieselEngine.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ExtremeDieselEngine.java @@ -1,5 +1,6 @@ package gregtech.common.tileentities.machines.multi; +import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.Materials; import gregtech.api.gui.GT_GUIContainer_MultiMachine; @@ -159,7 +160,7 @@ public class GT_MetaTileEntity_ExtremeDieselEngine extends GT_MetaTileEntity_Die @Override public int getPollutionPerTick(ItemStack aStack) { - return super.getPollutionPerTick(aStack) * 8; + return GT_Mod.gregtechproxy.mPollutionExtremeCombustionEngine; } @Override diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java index b71d01ec07..5765d9a2b4 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java @@ -1,6 +1,7 @@ package gregtech.common.tileentities.machines.multi; import com.gtnewhorizon.structurelib.structure.IStructureElement; +import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.Textures; import gregtech.api.enums.Textures.BlockIcons; @@ -164,7 +165,7 @@ public class GT_MetaTileEntity_ImplosionCompressor extends GT_MetaTileEntity_Cub @Override public int getPollutionPerTick(ItemStack aStack) { - return 500; + return GT_Mod.gregtechproxy.mPollutionImplosionCompressor; } @Override diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java index 2599d238a9..d5701d61a0 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java @@ -132,6 +132,10 @@ public abstract class GT_MetaTileEntity_LargeBoiler extends GT_MetaTileEntity_En public abstract int getEfficiencyIncrease(); + public int getIntegratedCircuitConfig(){ + return integratedCircuitConfig; + } + @Override public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) { if (aSide == aFacing) { @@ -300,12 +304,6 @@ public abstract class GT_MetaTileEntity_LargeBoiler extends GT_MetaTileEntity_En return 10000; } - @Override - public int getPollutionPerTick(ItemStack aStack) { - int adjustedEUOutput = Math.max(25, getEUt() - 25 * integratedCircuitConfig); - return Math.max(1, 12 * adjustedEUOutput / getEUt()); - } - @Override public int getDamageToComponent(ItemStack aStack) { return 0; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Bronze.java index 9aeff9b3d0..4277f306c6 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Bronze.java @@ -1,9 +1,11 @@ package gregtech.common.tileentities.machines.multi; +import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import net.minecraft.block.Block; +import net.minecraft.item.ItemStack; public class GT_MetaTileEntity_LargeBoiler_Bronze extends GT_MetaTileEntity_LargeBoiler { public GT_MetaTileEntity_LargeBoiler_Bronze(int aID, String aName, String aNameRegional) { @@ -18,6 +20,26 @@ public class GT_MetaTileEntity_LargeBoiler_Bronze extends GT_MetaTileEntity_Larg public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_LargeBoiler_Bronze(this.mName); } + + @Override + public int getPollutionPerTick(ItemStack aStack) { + + int integratedCircuitConfig = getIntegratedCircuitConfig(); + + /** + * This is the coefficient reducing the pollution based on the throttle applied via the circuit. + * 25 is the equivalent of EU/t removed by a throttle of -1000L/s (25 EU/t * 2 L/EU * 20 ticks = 1000 L/s) + * so 25/getEUt() is the normalized quantity removed by each increment in the throttle + */ + + int integratedCircuitReduction = (1-integratedCircuitConfig*25/getEUt()); + /** + * max here to clamp it to one in case the integratedCircuitReduction goes negative to ensure 1 gibbl/t + * of pollution. + */ + return Math.max(1, GT_Mod.gregtechproxy.mPollutionLargeBronzeBoiler*integratedCircuitReduction); + + } @Override public String getCasingMaterial(){ diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Steel.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Steel.java index d1188955f4..637cdaa32d 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Steel.java @@ -1,9 +1,11 @@ package gregtech.common.tileentities.machines.multi; +import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import net.minecraft.block.Block; +import net.minecraft.item.ItemStack; public class GT_MetaTileEntity_LargeBoiler_Steel extends GT_MetaTileEntity_LargeBoiler { public GT_MetaTileEntity_LargeBoiler_Steel(int aID, String aName, String aNameRegional) { @@ -18,7 +20,26 @@ public class GT_MetaTileEntity_LargeBoiler_Steel extends GT_MetaTileEntity_Large public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_LargeBoiler_Steel(this.mName); } - + + @Override + public int getPollutionPerTick(ItemStack aStack) { + + int integratedCircuitConfig = getIntegratedCircuitConfig(); + + /** + * This is the coefficient reducing the pollution based on the throttle applied via the circuit. + * 25 is the equivalent of EU/t removed by a throttle of -1000L/s (25 EU/t * 2 L/EU * 20 ticks = 1000 L/s) + * so 25/getEUt() is the normalized quantity removed by each increment in the throttle + */ + + int integratedCircuitReduction = (1-integratedCircuitConfig*25/getEUt()); + /** + * max here to clamp it to one in case the integratedCircuitReduction goes negative to ensure 1 gibbl/t + * of pollution. + */ + return Math.max(1, GT_Mod.gregtechproxy.mPollutionLargeSteelBoiler*integratedCircuitReduction); + + } @Override public String getCasingMaterial(){ return "Steel"; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Titanium.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Titanium.java index e67cf64723..45542acd9a 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Titanium.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Titanium.java @@ -1,9 +1,11 @@ package gregtech.common.tileentities.machines.multi; +import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import net.minecraft.block.Block; +import net.minecraft.item.ItemStack; public class GT_MetaTileEntity_LargeBoiler_Titanium extends GT_MetaTileEntity_LargeBoiler { public GT_MetaTileEntity_LargeBoiler_Titanium(int aID, String aName, String aNameRegional) { @@ -18,7 +20,26 @@ public class GT_MetaTileEntity_LargeBoiler_Titanium extends GT_MetaTileEntity_La public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_LargeBoiler_Titanium(this.mName); } - + + @Override + public int getPollutionPerTick(ItemStack aStack) { + + int integratedCircuitConfig = getIntegratedCircuitConfig(); + + /** + * This is the coefficient reducing the pollution based on the throttle applied via the circuit. + * 25 is the equivalent of EU/t removed by a throttle of -1000L/s (25 EU/t * 2 L/EU * 20 ticks = 1000 L/s) + * so 25/getEUt() is the normalized quantity removed by each increment in the throttle + */ + + int integratedCircuitReduction = (1-integratedCircuitConfig*25/getEUt()); + /** + * max here to clamp it to one in case the integratedCircuitReduction goes negative to ensure 1 gibbl/t + * of pollution. + */ + return Math.max(1, GT_Mod.gregtechproxy.mPollutionLargeTitaniumBoiler*integratedCircuitReduction); + } + @Override public String getCasingMaterial(){ return "Titanium"; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_TungstenSteel.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_TungstenSteel.java index 78e7d25752..2006ba9d99 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_TungstenSteel.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_TungstenSteel.java @@ -1,9 +1,11 @@ package gregtech.common.tileentities.machines.multi; +import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import net.minecraft.block.Block; +import net.minecraft.item.ItemStack; public class GT_MetaTileEntity_LargeBoiler_TungstenSteel extends GT_MetaTileEntity_LargeBoiler { public GT_MetaTileEntity_LargeBoiler_TungstenSteel(int aID, String aName, String aNameRegional) { @@ -18,6 +20,26 @@ public class GT_MetaTileEntity_LargeBoiler_TungstenSteel extends GT_MetaTileEnti public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { return new GT_MetaTileEntity_LargeBoiler_TungstenSteel(this.mName); } + + @Override + public int getPollutionPerTick(ItemStack aStack) { + + int integratedCircuitConfig = getIntegratedCircuitConfig(); + + /** + * This is the coefficient reducing the pollution based on the throttle applied via the circuit. + * 25 is the equivalent of EU/t removed by a throttle of -1000L/s (25 EU/t * 2 L/EU * 20 ticks = 1000 L/s) + * so 25/getEUt() is the normalized quantity removed by each increment in the throttle + */ + + int integratedCircuitReduction = (1-integratedCircuitConfig*25/getEUt()); + /** + * max here to clamp it to one in case the integratedCircuitReduction goes negative to ensure 1 gibbl/t + * of pollution. + */ + return Math.max(1, GT_Mod.gregtechproxy.mPollutionLargeTungstenSteelBoiler*integratedCircuitReduction); + + } @Override public String getCasingMaterial(){ diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java index 20f795572e..696abf19d4 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java @@ -1,5 +1,6 @@ package gregtech.common.tileentities.machines.multi; +import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; @@ -83,7 +84,7 @@ public class GT_MetaTileEntity_LargeTurbine_Gas extends GT_MetaTileEntity_LargeT @Override public int getPollutionPerTick(ItemStack aStack) { - return 15; + return GT_Mod.gregtechproxy.mPollutionLargeGasTurbine; } @Override diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java index 37f56deef5..d93c6dfa65 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java @@ -3,6 +3,7 @@ package gregtech.common.tileentities.machines.multi; import com.gtnewhorizon.structurelib.alignment.constructable.IConstructable; import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import com.gtnewhorizon.structurelib.structure.StructureDefinition; +import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.HeatingCoilLevel; import gregtech.api.gui.GT_GUIContainer_MultiMachine; @@ -112,6 +113,11 @@ public class GT_MetaTileEntity_MultiFurnace extends GT_MetaTileEntity_AbstractMu return GT_Recipe.GT_Recipe_Map.sFurnaceRecipes; } + @Override + public int getPollutionPerTick(ItemStack aStack){ + return GT_Mod.gregtechproxy.mPollutionMultiSmelter; + } + @Override public boolean checkRecipe(ItemStack aStack) { ArrayList tInputList = getStoredInputs(); diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java index 61fb394841..3089fc69e1 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java @@ -234,7 +234,7 @@ public abstract class GT_MetaTileEntity_PrimitiveBlastFurnace extends MetaTileEn GT_Pollution.addPollution(this.getBaseMetaTileEntity().getWorld(), new ChunkPosition(this.getBaseMetaTileEntity().getXCoord(), this.getBaseMetaTileEntity().getYCoord(), this.getBaseMetaTileEntity().getZCoord()), - 200); + 20*GT_Mod.gregtechproxy.mPollutionPrimitveBlastFurnace); } aBaseMetaTileEntity.setActive((this.mMaxProgresstime > 0) && (this.mMachine)); diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java index 9542c54ce0..6540d77582 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java @@ -4,6 +4,7 @@ import com.gtnewhorizon.structurelib.structure.IStructureDefinition; import com.gtnewhorizon.structurelib.structure.IStructureElement; import com.gtnewhorizon.structurelib.structure.StructureDefinition; import cpw.mods.fml.common.Loader; +import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.HeatingCoilLevel; import gregtech.api.enums.Textures; @@ -226,7 +227,7 @@ public class GT_MetaTileEntity_PyrolyseOven extends GT_MetaTileEntity_EnhancedMu @Override public int getPollutionPerTick(ItemStack aStack) { - return 30; + return GT_Mod.gregtechproxy.mPollutionPyrolyseOven; } @Override -- cgit From 81ee095c16fcb19bc0c2155057c34325f3b4488d Mon Sep 17 00:00:00 2001 From: boubou_19 Date: Wed, 24 Nov 2021 01:15:42 +0100 Subject: fixed bricked blast furnace tooltip --- .../machines/multi/GT_MetaTileEntity_BrickedBlastFurnace.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/main/java/gregtech/common/tileentities/machines') diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BrickedBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BrickedBlastFurnace.java index 446965f3b6..7edde2d499 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BrickedBlastFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BrickedBlastFurnace.java @@ -1,5 +1,6 @@ package gregtech.common.tileentities.machines.multi; +import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.Textures; import gregtech.api.enums.Textures.BlockIcons; @@ -34,7 +35,7 @@ public class GT_MetaTileEntity_BrickedBlastFurnace extends GT_MetaTileEntity_Pri .addInfo("Controller Block for the Bricked Blast Furnace") .addInfo("Usable for Steel and general Pyrometallurgy") .addInfo("Has a useful interface, unlike other gregtech multis") - .addPollutionAmount(200) + .addPollutionAmount(20 * GT_Mod.gregtechproxy.mPollutionPrimitveBlastFurnace) .addSeparator() .beginStructureBlock(3, 4, 3, true) .addController("Front center") -- cgit From edfa66b41faa598b3d0219df4534839e7ed88e74 Mon Sep 17 00:00:00 2001 From: boubou_19 Date: Thu, 25 Nov 2021 01:34:56 +0100 Subject: changed large boilers to use per second for more precision --- .../multi/GT_MetaTileEntity_LargeBoiler.java | 2 +- .../GT_MetaTileEntity_LargeBoiler_Bronze.java | 23 +++++++--------------- .../multi/GT_MetaTileEntity_LargeBoiler_Steel.java | 22 +++++++-------------- .../GT_MetaTileEntity_LargeBoiler_Titanium.java | 20 ++++++------------- ...T_MetaTileEntity_LargeBoiler_TungstenSteel.java | 23 +++++++--------------- 5 files changed, 28 insertions(+), 62 deletions(-) (limited to 'src/main/java/gregtech/common/tileentities/machines') diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java index d5701d61a0..a73fb68962 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java @@ -90,7 +90,7 @@ public abstract class GT_MetaTileEntity_LargeBoiler extends GT_MetaTileEntity_En .addInfo("Produces " + (getEUt() * 40) * (runtimeBoost(20) / 20f) + "L of Steam with 1 Coal at " + getEUt() * 40 + "L/s")//? .addInfo("A programmed circuit in the main block throttles the boiler (-1000L/s per config)") .addInfo(String.format("Diesel fuels have 1/4 efficiency - Takes %.2f seconds to heat up", 500.0 / getEfficiencyIncrease()))//? check semifluid again - .addPollutionAmount(20 * getPollutionPerTick(null)) + .addPollutionAmount(getPollutionPerSecond(null)) .addSeparator() .beginStructureBlock(3, 5, 3, false) .addController("Front bottom") diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Bronze.java index 4277f306c6..1e89258ae4 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Bronze.java @@ -22,25 +22,16 @@ public class GT_MetaTileEntity_LargeBoiler_Bronze extends GT_MetaTileEntity_Larg } @Override - public int getPollutionPerTick(ItemStack aStack) { - + public int getPollutionPerSecond(ItemStack aStack) { int integratedCircuitConfig = getIntegratedCircuitConfig(); + return Math.max(1, (int) (GT_Mod.gregtechproxy.mPollutionLargeBronzeBoilerPerSecond/(GT_Mod.gregtechproxy.mPollutionReleasedByThrottle * integratedCircuitConfig))); + } - /** - * This is the coefficient reducing the pollution based on the throttle applied via the circuit. - * 25 is the equivalent of EU/t removed by a throttle of -1000L/s (25 EU/t * 2 L/EU * 20 ticks = 1000 L/s) - * so 25/getEUt() is the normalized quantity removed by each increment in the throttle - */ - - int integratedCircuitReduction = (1-integratedCircuitConfig*25/getEUt()); - /** - * max here to clamp it to one in case the integratedCircuitReduction goes negative to ensure 1 gibbl/t - * of pollution. - */ - return Math.max(1, GT_Mod.gregtechproxy.mPollutionLargeBronzeBoiler*integratedCircuitReduction); - + @Override + public int getPollutionPerTick(ItemStack aStack){ + return getPollutionPerSecond(aStack)/20; } - + @Override public String getCasingMaterial(){ return "Bronze"; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Steel.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Steel.java index 637cdaa32d..4c08b1fff1 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Steel.java @@ -22,24 +22,16 @@ public class GT_MetaTileEntity_LargeBoiler_Steel extends GT_MetaTileEntity_Large } @Override - public int getPollutionPerTick(ItemStack aStack) { - + public int getPollutionPerSecond(ItemStack aStack) { int integratedCircuitConfig = getIntegratedCircuitConfig(); + return Math.max(1, (int) (GT_Mod.gregtechproxy.mPollutionLargeSteelBoilerPerSecond/(GT_Mod.gregtechproxy.mPollutionReleasedByThrottle * integratedCircuitConfig))); + } - /** - * This is the coefficient reducing the pollution based on the throttle applied via the circuit. - * 25 is the equivalent of EU/t removed by a throttle of -1000L/s (25 EU/t * 2 L/EU * 20 ticks = 1000 L/s) - * so 25/getEUt() is the normalized quantity removed by each increment in the throttle - */ - - int integratedCircuitReduction = (1-integratedCircuitConfig*25/getEUt()); - /** - * max here to clamp it to one in case the integratedCircuitReduction goes negative to ensure 1 gibbl/t - * of pollution. - */ - return Math.max(1, GT_Mod.gregtechproxy.mPollutionLargeSteelBoiler*integratedCircuitReduction); - + @Override + public int getPollutionPerTick(ItemStack aStack){ + return getPollutionPerSecond(aStack)/20; } + @Override public String getCasingMaterial(){ return "Steel"; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Titanium.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Titanium.java index 45542acd9a..3a2566c82e 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Titanium.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Titanium.java @@ -22,22 +22,14 @@ public class GT_MetaTileEntity_LargeBoiler_Titanium extends GT_MetaTileEntity_La } @Override - public int getPollutionPerTick(ItemStack aStack) { - + public int getPollutionPerSecond(ItemStack aStack) { int integratedCircuitConfig = getIntegratedCircuitConfig(); + return Math.max(1, (int) (GT_Mod.gregtechproxy.mPollutionLargeTitaniumBoilerPerSecond/(GT_Mod.gregtechproxy.mPollutionReleasedByThrottle * integratedCircuitConfig))); + } - /** - * This is the coefficient reducing the pollution based on the throttle applied via the circuit. - * 25 is the equivalent of EU/t removed by a throttle of -1000L/s (25 EU/t * 2 L/EU * 20 ticks = 1000 L/s) - * so 25/getEUt() is the normalized quantity removed by each increment in the throttle - */ - - int integratedCircuitReduction = (1-integratedCircuitConfig*25/getEUt()); - /** - * max here to clamp it to one in case the integratedCircuitReduction goes negative to ensure 1 gibbl/t - * of pollution. - */ - return Math.max(1, GT_Mod.gregtechproxy.mPollutionLargeTitaniumBoiler*integratedCircuitReduction); + @Override + public int getPollutionPerTick(ItemStack aStack){ + return getPollutionPerSecond(aStack)/20; } @Override diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_TungstenSteel.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_TungstenSteel.java index 2006ba9d99..4a1fa4d931 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_TungstenSteel.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_TungstenSteel.java @@ -22,25 +22,16 @@ public class GT_MetaTileEntity_LargeBoiler_TungstenSteel extends GT_MetaTileEnti } @Override - public int getPollutionPerTick(ItemStack aStack) { - + public int getPollutionPerSecond(ItemStack aStack) { int integratedCircuitConfig = getIntegratedCircuitConfig(); + return Math.max(1, (int) (GT_Mod.gregtechproxy.mPollutionLargeTungstenSteelBoilerPerSecond/(GT_Mod.gregtechproxy.mPollutionReleasedByThrottle * integratedCircuitConfig))); + } - /** - * This is the coefficient reducing the pollution based on the throttle applied via the circuit. - * 25 is the equivalent of EU/t removed by a throttle of -1000L/s (25 EU/t * 2 L/EU * 20 ticks = 1000 L/s) - * so 25/getEUt() is the normalized quantity removed by each increment in the throttle - */ - - int integratedCircuitReduction = (1-integratedCircuitConfig*25/getEUt()); - /** - * max here to clamp it to one in case the integratedCircuitReduction goes negative to ensure 1 gibbl/t - * of pollution. - */ - return Math.max(1, GT_Mod.gregtechproxy.mPollutionLargeTungstenSteelBoiler*integratedCircuitReduction); - + @Override + public int getPollutionPerTick(ItemStack aStack){ + return getPollutionPerSecond(aStack)/20; } - + @Override public String getCasingMaterial(){ return "TungstenSteel"; -- cgit From 9dc605d3d9825f02c209b58bc52bb1b3f9673228 Mon Sep 17 00:00:00 2001 From: boubou_19 Date: Thu, 25 Nov 2021 01:39:49 +0100 Subject: changed implosion compressor to user per second for more precision --- .../machines/multi/GT_MetaTileEntity_ImplosionCompressor.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/main/java/gregtech/common/tileentities/machines') diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java index 5765d9a2b4..a28dfc343e 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java @@ -46,7 +46,7 @@ public class GT_MetaTileEntity_ImplosionCompressor extends GT_MetaTileEntity_Cub tt.addMachineType("Implosion Compressor") .addInfo("Explosions are fun") .addInfo("Controller block for the Implosion Compressor") - .addPollutionAmount(20 * getPollutionPerTick(null)) + .addPollutionAmount(getPollutionPerSecond(null)) .addSeparator() .beginStructureBlock(3, 3, 3, true) .addController("Front center") @@ -165,9 +165,13 @@ public class GT_MetaTileEntity_ImplosionCompressor extends GT_MetaTileEntity_Cub @Override public int getPollutionPerTick(ItemStack aStack) { - return GT_Mod.gregtechproxy.mPollutionImplosionCompressor; + return getPollutionPerSecond(aStack)/20; } + @Override + public int getPollutionPerSecond(ItemStack aStack){ + return GT_Mod.gregtechproxy.mPollutionImplosionCompressorPerSecond; + } @Override public int getDamageToComponent(ItemStack aStack) { return 0; -- cgit From 234b55ee8331afc47be1235948d116d184f1c9c3 Mon Sep 17 00:00:00 2001 From: boubou_19 Date: Thu, 25 Nov 2021 01:42:55 +0100 Subject: changed the BBF to use per second for more precision --- .../machines/multi/GT_MetaTileEntity_BrickedBlastFurnace.java | 2 +- .../machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'src/main/java/gregtech/common/tileentities/machines') diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BrickedBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BrickedBlastFurnace.java index 7edde2d499..617c191562 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BrickedBlastFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BrickedBlastFurnace.java @@ -35,7 +35,7 @@ public class GT_MetaTileEntity_BrickedBlastFurnace extends GT_MetaTileEntity_Pri .addInfo("Controller Block for the Bricked Blast Furnace") .addInfo("Usable for Steel and general Pyrometallurgy") .addInfo("Has a useful interface, unlike other gregtech multis") - .addPollutionAmount(20 * GT_Mod.gregtechproxy.mPollutionPrimitveBlastFurnace) + .addPollutionAmount(GT_Mod.gregtechproxy.mPollutionPrimitveBlastFurnacePerSecond) .addSeparator() .beginStructureBlock(3, 4, 3, true) .addController("Front center") diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java index 3089fc69e1..84d200d4f9 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java @@ -234,7 +234,7 @@ public abstract class GT_MetaTileEntity_PrimitiveBlastFurnace extends MetaTileEn GT_Pollution.addPollution(this.getBaseMetaTileEntity().getWorld(), new ChunkPosition(this.getBaseMetaTileEntity().getXCoord(), this.getBaseMetaTileEntity().getYCoord(), this.getBaseMetaTileEntity().getZCoord()), - 20*GT_Mod.gregtechproxy.mPollutionPrimitveBlastFurnace); + GT_Mod.gregtechproxy.mPollutionPrimitveBlastFurnacePerSecond); } aBaseMetaTileEntity.setActive((this.mMaxProgresstime > 0) && (this.mMachine)); -- cgit From 245c1b3e8c2107d0e82355ee7dfaad7b5c1736e1 Mon Sep 17 00:00:00 2001 From: boubou_19 Date: Thu, 25 Nov 2021 01:46:05 +0100 Subject: changed the Combustion Generator to use epr second for more precision --- .../machines/multi/GT_MetaTileEntity_DieselEngine.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'src/main/java/gregtech/common/tileentities/machines') diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java index 8fce561034..fbe547f4f9 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DieselEngine.java @@ -79,7 +79,7 @@ public class GT_MetaTileEntity_DieselEngine extends GT_MetaTileEntity_EnhancedMu .addInfo("Default: Produces 2048EU/t at 100% fuel efficiency") .addInfo("Boosted: Produces 6144EU/t at 150% fuel efficiency") .addInfo("You need to wait for it to reach 300% to output full power") - .addPollutionAmount(20 * getPollutionPerTick(null)) + .addPollutionAmount(getPollutionPerSecond(null)) .addSeparator() .beginStructureBlock(3, 3, 4, false) .addController("Front center") @@ -264,9 +264,14 @@ public class GT_MetaTileEntity_DieselEngine extends GT_MetaTileEntity_EnhancedMu return boostEu ? 30000 : 10000; } + @Override + public int getPollutionPerSecond(ItemStack aStack) { + return GT_Mod.gregtechproxy.mPollutionLargeCombustionEnginePerSecond; + } + @Override public int getPollutionPerTick(ItemStack aStack) { - return GT_Mod.gregtechproxy.mPollutionLargeCombustionEngine; + return getPollutionPerSecond(aStack)/20; } @Override -- cgit From 91e6127a4bcceabf9edb8dbaad916228953d85ca Mon Sep 17 00:00:00 2001 From: boubou_19 Date: Thu, 25 Nov 2021 01:48:20 +0100 Subject: changed the Extreme Combustion Generator to use per second for more precision --- .../machines/multi/GT_MetaTileEntity_ExtremeDieselEngine.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src/main/java/gregtech/common/tileentities/machines') diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ExtremeDieselEngine.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ExtremeDieselEngine.java index b1028f5bcd..b96391e7ec 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ExtremeDieselEngine.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ExtremeDieselEngine.java @@ -45,7 +45,7 @@ public class GT_MetaTileEntity_ExtremeDieselEngine extends GT_MetaTileEntity_Die .addInfo("Default: Produces 8192EU/t at 100% fuel efficiency") .addInfo("Boosted: Produces 32768EU/t at 400% fuel efficiency") .addInfo("You need to wait for it to reach 400% to output full power") - .addPollutionAmount(20 * getPollutionPerTick(null)) + .addPollutionAmount(getPollutionPerSecond(null)) .addSeparator() .beginStructureBlock(3, 3, 4, false) .addController("Front center") @@ -159,8 +159,13 @@ public class GT_MetaTileEntity_ExtremeDieselEngine extends GT_MetaTileEntity_Die } @Override - public int getPollutionPerTick(ItemStack aStack) { - return GT_Mod.gregtechproxy.mPollutionExtremeCombustionEngine; + public int getPollutionPerSecond(ItemStack aStack) { + return GT_Mod.gregtechproxy.mPollutionExtremeCombustionEnginePerSecond; + } + + @Override + public int getPollutionPerTick(ItemStack aStack){ + return getPollutionPerSecond(aStack)/20; } @Override -- cgit From a02ad36015d395a34a3f5d5b3ee6fc8c7e494e34 Mon Sep 17 00:00:00 2001 From: boubou_19 Date: Thu, 25 Nov 2021 01:52:47 +0100 Subject: changed the gas turbine to use per second for more precision --- .../machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src/main/java/gregtech/common/tileentities/machines') diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java index 696abf19d4..6b58f8a44d 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Gas.java @@ -42,7 +42,7 @@ public class GT_MetaTileEntity_LargeTurbine_Gas extends GT_MetaTileEntity_LargeT tt.addMachineType("Gas Turbine") .addInfo("Controller block for the Large Gas Turbine") .addInfo("Needs a Turbine, place inside controller") - .addPollutionAmount(20 * getPollutionPerTick(null)) + .addPollutionAmount(getPollutionPerSecond(null)) .addSeparator() .beginStructureBlock(3, 3, 4, true) .addController("Front center") @@ -83,8 +83,13 @@ public class GT_MetaTileEntity_LargeTurbine_Gas extends GT_MetaTileEntity_LargeT } @Override - public int getPollutionPerTick(ItemStack aStack) { - return GT_Mod.gregtechproxy.mPollutionLargeGasTurbine; + public int getPollutionPerSecond(ItemStack aStack) { + return GT_Mod.gregtechproxy.mPollutionLargeGasTurbinePerSecond; + } + + @Override + public int getPollutionPerTick(ItemStack aStack){ + return getPollutionPerSecond(aStack)/20; } @Override -- cgit From eb9ff33839299923ced6373dece17e338cddccdd Mon Sep 17 00:00:00 2001 From: boubou_19 Date: Thu, 25 Nov 2021 01:55:05 +0100 Subject: changed multismelter to use per second for more precision --- .../machines/multi/GT_MetaTileEntity_MultiFurnace.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'src/main/java/gregtech/common/tileentities/machines') diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java index d93c6dfa65..ca334e5bd6 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java @@ -75,7 +75,7 @@ public class GT_MetaTileEntity_MultiFurnace extends GT_MetaTileEntity_AbstractMu .addInfo("Controller Block for the Multi Smelter") .addInfo("Smelts up to 8-128 items at once") .addInfo("Items smelted increases with coil tier") - .addPollutionAmount(20 * getPollutionPerTick(null)) + .addPollutionAmount(getPollutionPerSecond(null)) .addSeparator() .beginStructureBlock(3, 3, 3, true) .addController("Front bottom") @@ -113,9 +113,14 @@ public class GT_MetaTileEntity_MultiFurnace extends GT_MetaTileEntity_AbstractMu return GT_Recipe.GT_Recipe_Map.sFurnaceRecipes; } + @Override + public int getPollutionPerSecond(ItemStack aStack){ + return GT_Mod.gregtechproxy.mPollutionMultiSmelterPerSecond; + } + @Override public int getPollutionPerTick(ItemStack aStack){ - return GT_Mod.gregtechproxy.mPollutionMultiSmelter; + return getPollutionPerSecond(aStack)/20; } @Override -- cgit From 42f146187eb2443332167e5efe5578daf95a69f9 Mon Sep 17 00:00:00 2001 From: boubou_19 Date: Thu, 25 Nov 2021 01:57:20 +0100 Subject: changed pyrolyse oven to use per second for more precision --- .../machines/multi/GT_MetaTileEntity_PyrolyseOven.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src/main/java/gregtech/common/tileentities/machines') diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java index 6540d77582..d60f38fdc9 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java @@ -92,7 +92,7 @@ public class GT_MetaTileEntity_PyrolyseOven extends GT_MetaTileEntity_EnhancedMu .addInfo("Processing speed scales linearly with Coil tier:") .addInfo("CuNi: 50%, FeAlCr: 100%, Ni4Cr: 150%, Fe50CW: 200%, etc.") .addInfo("EU/t is not affected by Coil tier") - .addPollutionAmount(20 * getPollutionPerTick(null)) + .addPollutionAmount(getPollutionPerSecond(null)) .addSeparator() .beginStructureBlock(5, 4, 5, true) .addController("Front center") @@ -226,8 +226,13 @@ public class GT_MetaTileEntity_PyrolyseOven extends GT_MetaTileEntity_EnhancedMu } @Override - public int getPollutionPerTick(ItemStack aStack) { - return GT_Mod.gregtechproxy.mPollutionPyrolyseOven; + public int getPollutionPerSecond(ItemStack aStack) { + return GT_Mod.gregtechproxy.mPollutionPyrolyseOvenPerSecond; + } + + @Override + public int getPollutionPerTick(ItemStack aStack){ + return getPollutionPerSecond(aStack)/20; } @Override -- cgit From e53a0edcbf35f130f7770a2084ea79e87a377d97 Mon Sep 17 00:00:00 2001 From: boubou_19 Date: Thu, 25 Nov 2021 01:58:26 +0100 Subject: changed EBF to use per second for more precision --- .../machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'src/main/java/gregtech/common/tileentities/machines') diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java index 4df827b5bc..f975dd3abe 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java @@ -19,7 +19,6 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Outpu import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_Multiblock_Tooltip_Builder; import gregtech.api.util.GT_Recipe; -import gregtech.api.util.GT_StructureUtility; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.InventoryPlayer; @@ -89,7 +88,7 @@ public class GT_MetaTileEntity_ElectricBlastFurnace extends GT_MetaTileEntity_Ab .addInfo("Each 1800K over the min. Heat required allows for one upgraded overclock instead of normal") .addInfo("Upgraded overclocks reduce recipe time to 25% (instead of 50%) and increase EU/t to 400%") .addInfo("Additionally gives +100K for every tier past MV") - .addPollutionAmount(20 * getPollutionPerTick(null)) + .addPollutionAmount(getPollutionPerSecond(null)) .addSeparator() .beginStructureBlock(3, 4, 3, true) .addController("Front bottom") @@ -129,9 +128,14 @@ public class GT_MetaTileEntity_ElectricBlastFurnace extends GT_MetaTileEntity_Ab return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, getLocalName(), "ElectricBlastFurnace.png"); } + @Override + public int getPollutionPerSecond(ItemStack aStack){ + return GT_Mod.gregtechproxy.mPollutionEBFPerSecond; + } + @Override public int getPollutionPerTick(ItemStack aStack){ - return GT_Mod.gregtechproxy.mPollutionEBF; + return getPollutionPerSecond(aStack)/20; } @Override -- cgit From 448d418411560f209f56a2ed778058e06d56c3fd Mon Sep 17 00:00:00 2001 From: boubou_19 Date: Thu, 25 Nov 2021 02:00:29 +0100 Subject: changed the charcoal pit to use per second for more precision --- .../machines/multi/GT_MetaTileEntity_Charcoal_Pit.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src/main/java/gregtech/common/tileentities/machines') diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java index 9fbcccbeda..ef31a072ed 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_Charcoal_Pit.java @@ -202,8 +202,13 @@ public class GT_MetaTileEntity_Charcoal_Pit extends GT_MetaTileEntity_MultiBlock } @Override - public int getPollutionPerTick(ItemStack aStack) { - return GT_Mod.gregtechproxy.mPollutionCharcoalPit; + public int getPollutionPerSecond(ItemStack aStack) { + return GT_Mod.gregtechproxy.mPollutionCharcoalPitPerSecond; + } + + @Override + public int getPollutionPerTick(ItemStack aStack){ + return getPollutionPerSecond(aStack)/20; } @Override @@ -233,7 +238,7 @@ public class GT_MetaTileEntity_Charcoal_Pit extends GT_MetaTileEntity_MultiBlock .addInfo("Controller for the Charcoal Pit") .addInfo("Converts Logs into Brittle Charcoal blocks") .addInfo("Will automatically start when valid") - .addPollutionAmount(20*getPollutionPerTick(null)) + .addPollutionAmount(getPollutionPerSecond(null)) .addSeparator() .beginVariableStructureBlock(3, 11, 3, 6, 3, 11, false) .addStructureInfo("Can be up to 11x6x11 in size, shape doesn't matter") -- cgit From 38d2c580503b34dd41f326c17e89257860a13849 Mon Sep 17 00:00:00 2001 From: boubou_19 Date: Thu, 25 Nov 2021 14:53:21 +0100 Subject: rework large boilers for more clarity --- .../machines/multi/GT_MetaTileEntity_LargeBoiler.java | 12 ++++++++++++ .../multi/GT_MetaTileEntity_LargeBoiler_Bronze.java | 14 +++----------- .../multi/GT_MetaTileEntity_LargeBoiler_Steel.java | 13 ++----------- .../multi/GT_MetaTileEntity_LargeBoiler_Titanium.java | 13 ++----------- .../multi/GT_MetaTileEntity_LargeBoiler_TungstenSteel.java | 13 ++----------- 5 files changed, 21 insertions(+), 44 deletions(-) (limited to 'src/main/java/gregtech/common/tileentities/machines') diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java index a73fb68962..c46d732935 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java @@ -73,6 +73,7 @@ public abstract class GT_MetaTileEntity_LargeBoiler extends GT_MetaTileEntity_En private int excessProjectedEU = 0; //Eliminate rounding errors from throttling the boiler private int mCasingAmount; private int mFireboxAmount; + protected int pollutionPerSecond = 1; //placeholder for the child classes public GT_MetaTileEntity_LargeBoiler(int aID, String aName, String aNameRegional) { super(aID, aName, aNameRegional); @@ -136,6 +137,17 @@ public abstract class GT_MetaTileEntity_LargeBoiler extends GT_MetaTileEntity_En return integratedCircuitConfig; } + @Override + public int getPollutionPerSecond(ItemStack aStack) { + //allows for 0 pollution if circuit throttle is too high + return Math.max(0, (int) (pollutionPerSecond * (1-GT_Mod.gregtechproxy.mPollutionReleasedByThrottle*getIntegratedCircuitConfig()))); + } + + @Override + public int getPollutionPerTick(ItemStack aStack){ + return getPollutionPerSecond(aStack)/20; + } + @Override public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) { if (aSide == aFacing) { diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Bronze.java index 1e89258ae4..fda98a431f 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Bronze.java @@ -8,12 +8,15 @@ import net.minecraft.block.Block; import net.minecraft.item.ItemStack; public class GT_MetaTileEntity_LargeBoiler_Bronze extends GT_MetaTileEntity_LargeBoiler { + public GT_MetaTileEntity_LargeBoiler_Bronze(int aID, String aName, String aNameRegional) { super(aID, aName, aNameRegional); + pollutionPerSecond = GT_Mod.gregtechproxy.mPollutionLargeBronzeBoilerPerSecond; } public GT_MetaTileEntity_LargeBoiler_Bronze(String aName) { super(aName); + pollutionPerSecond = GT_Mod.gregtechproxy.mPollutionLargeBronzeBoilerPerSecond; } @Override @@ -21,17 +24,6 @@ public class GT_MetaTileEntity_LargeBoiler_Bronze extends GT_MetaTileEntity_Larg return new GT_MetaTileEntity_LargeBoiler_Bronze(this.mName); } - @Override - public int getPollutionPerSecond(ItemStack aStack) { - int integratedCircuitConfig = getIntegratedCircuitConfig(); - return Math.max(1, (int) (GT_Mod.gregtechproxy.mPollutionLargeBronzeBoilerPerSecond/(GT_Mod.gregtechproxy.mPollutionReleasedByThrottle * integratedCircuitConfig))); - } - - @Override - public int getPollutionPerTick(ItemStack aStack){ - return getPollutionPerSecond(aStack)/20; - } - @Override public String getCasingMaterial(){ return "Bronze"; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Steel.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Steel.java index 4c08b1fff1..583f26082c 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Steel.java @@ -10,10 +10,12 @@ import net.minecraft.item.ItemStack; public class GT_MetaTileEntity_LargeBoiler_Steel extends GT_MetaTileEntity_LargeBoiler { public GT_MetaTileEntity_LargeBoiler_Steel(int aID, String aName, String aNameRegional) { super(aID, aName, aNameRegional); + pollutionPerSecond = GT_Mod.gregtechproxy.mPollutionLargeSteelBoilerPerSecond; } public GT_MetaTileEntity_LargeBoiler_Steel(String aName) { super(aName); + pollutionPerSecond = GT_Mod.gregtechproxy.mPollutionLargeSteelBoilerPerSecond; } @Override @@ -21,17 +23,6 @@ public class GT_MetaTileEntity_LargeBoiler_Steel extends GT_MetaTileEntity_Large return new GT_MetaTileEntity_LargeBoiler_Steel(this.mName); } - @Override - public int getPollutionPerSecond(ItemStack aStack) { - int integratedCircuitConfig = getIntegratedCircuitConfig(); - return Math.max(1, (int) (GT_Mod.gregtechproxy.mPollutionLargeSteelBoilerPerSecond/(GT_Mod.gregtechproxy.mPollutionReleasedByThrottle * integratedCircuitConfig))); - } - - @Override - public int getPollutionPerTick(ItemStack aStack){ - return getPollutionPerSecond(aStack)/20; - } - @Override public String getCasingMaterial(){ return "Steel"; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Titanium.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Titanium.java index 3a2566c82e..01f59d1f99 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Titanium.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_Titanium.java @@ -10,10 +10,12 @@ import net.minecraft.item.ItemStack; public class GT_MetaTileEntity_LargeBoiler_Titanium extends GT_MetaTileEntity_LargeBoiler { public GT_MetaTileEntity_LargeBoiler_Titanium(int aID, String aName, String aNameRegional) { super(aID, aName, aNameRegional); + pollutionPerSecond = GT_Mod.gregtechproxy.mPollutionLargeTitaniumBoilerPerSecond; } public GT_MetaTileEntity_LargeBoiler_Titanium(String aName) { super(aName); + pollutionPerSecond = GT_Mod.gregtechproxy.mPollutionLargeTitaniumBoilerPerSecond; } @Override @@ -21,17 +23,6 @@ public class GT_MetaTileEntity_LargeBoiler_Titanium extends GT_MetaTileEntity_La return new GT_MetaTileEntity_LargeBoiler_Titanium(this.mName); } - @Override - public int getPollutionPerSecond(ItemStack aStack) { - int integratedCircuitConfig = getIntegratedCircuitConfig(); - return Math.max(1, (int) (GT_Mod.gregtechproxy.mPollutionLargeTitaniumBoilerPerSecond/(GT_Mod.gregtechproxy.mPollutionReleasedByThrottle * integratedCircuitConfig))); - } - - @Override - public int getPollutionPerTick(ItemStack aStack){ - return getPollutionPerSecond(aStack)/20; - } - @Override public String getCasingMaterial(){ return "Titanium"; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_TungstenSteel.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_TungstenSteel.java index 4a1fa4d931..b14ce3e5f0 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_TungstenSteel.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler_TungstenSteel.java @@ -10,10 +10,12 @@ import net.minecraft.item.ItemStack; public class GT_MetaTileEntity_LargeBoiler_TungstenSteel extends GT_MetaTileEntity_LargeBoiler { public GT_MetaTileEntity_LargeBoiler_TungstenSteel(int aID, String aName, String aNameRegional) { super(aID, aName, aNameRegional); + pollutionPerSecond = GT_Mod.gregtechproxy.mPollutionLargeTungstenSteelBoilerPerSecond; } public GT_MetaTileEntity_LargeBoiler_TungstenSteel(String aName) { super(aName); + pollutionPerSecond = GT_Mod.gregtechproxy.mPollutionLargeTungstenSteelBoilerPerSecond; } @Override @@ -21,17 +23,6 @@ public class GT_MetaTileEntity_LargeBoiler_TungstenSteel extends GT_MetaTileEnti return new GT_MetaTileEntity_LargeBoiler_TungstenSteel(this.mName); } - @Override - public int getPollutionPerSecond(ItemStack aStack) { - int integratedCircuitConfig = getIntegratedCircuitConfig(); - return Math.max(1, (int) (GT_Mod.gregtechproxy.mPollutionLargeTungstenSteelBoilerPerSecond/(GT_Mod.gregtechproxy.mPollutionReleasedByThrottle * integratedCircuitConfig))); - } - - @Override - public int getPollutionPerTick(ItemStack aStack){ - return getPollutionPerSecond(aStack)/20; - } - @Override public String getCasingMaterial(){ return "TungstenSteel"; -- cgit