aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gtPlusPlus/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gtPlusPlus/core')
-rw-r--r--src/main/java/gtPlusPlus/core/common/CommonProxy.java3
-rw-r--r--src/main/java/gtPlusPlus/core/config/Configuration.java171
-rw-r--r--src/main/java/gtPlusPlus/core/tileentities/base/TileEntityBase.java4
-rw-r--r--src/main/java/gtPlusPlus/core/util/minecraft/gregtech/PollutionUtils.java157
4 files changed, 35 insertions, 300 deletions
diff --git a/src/main/java/gtPlusPlus/core/common/CommonProxy.java b/src/main/java/gtPlusPlus/core/common/CommonProxy.java
index a53e088afc..10edeeb32f 100644
--- a/src/main/java/gtPlusPlus/core/common/CommonProxy.java
+++ b/src/main/java/gtPlusPlus/core/common/CommonProxy.java
@@ -82,7 +82,8 @@ public class CommonProxy implements IFuelHandler {
public void init(final FMLInitializationEvent e) {
CI.init();
- if (Mods.AdvancedSolarPanel.isModLoaded()) {
+ if (e.getSide()
+ .isClient() && Mods.AdvancedSolarPanel.isModLoaded()) {
MinecraftForge.EVENT_BUS.register(new MolecularTransformerTooltipNotice());
}
// Handles Sleep Benefits
diff --git a/src/main/java/gtPlusPlus/core/config/Configuration.java b/src/main/java/gtPlusPlus/core/config/Configuration.java
index e2cd0463f1..45ba7df8a3 100644
--- a/src/main/java/gtPlusPlus/core/config/Configuration.java
+++ b/src/main/java/gtPlusPlus/core/config/Configuration.java
@@ -13,7 +13,6 @@ public class Configuration {
public static final Debug debug = new Debug();
public static final Machines machines = new Machines();
public static final Gregtech gregtech = new Gregtech();
- public static final Pollution pollution = new Pollution();
public static final Features features = new Features();
public static final Visual visual = new Visual();
public static final Worldgen worldgen = new Worldgen();
@@ -58,176 +57,6 @@ public class Configuration {
public int turbineCutoffBase;
}
- @Config.Comment("Pollution section")
- public static class Pollution {
-
- @Config.Comment("pollution rate in gibbl/s for the Amazon warehousing depot")
- @Config.DefaultInt(40)
- public int pollutionPerSecondMultiPackager;
- @Config.Comment("pollution rate in gibbl/s for the Alloy blast smelter")
- @Config.DefaultInt(300)
- public int pollutionPerSecondMultiIndustrialAlloySmelter;
- @Config.Comment("pollution rate in gibbl/s for the High current arc furnace")
- @Config.DefaultInt(2_400)
- public int pollutionPerSecondMultiIndustrialArcFurnace;
- @Config.Comment("pollution rate in gibbl/s for the Industrial centrifuge")
- @Config.DefaultInt(300)
- public int pollutionPerSecondMultiIndustrialCentrifuge;
- @Config.Comment("pollution rate in gibbl/s for the Industrial coke oven")
- @Config.DefaultInt(80)
- public int pollutionPerSecondMultiIndustrialCokeOven;
- @Config.Comment("pollution rate in gibbl/s for the Cutting factory")
- @Config.DefaultInt(160)
- public int pollutionPerSecondMultiIndustrialCuttingMachine;
- @Config.Comment("pollution rate in gibbl/s for the Utupu-Tanuri")
- @Config.DefaultInt(500)
- public int pollutionPerSecondMultiIndustrialDehydrator;
- @Config.Comment("pollution rate in gibbl/s for the Industrial electrolyzer")
- @Config.DefaultInt(300)
- public int pollutionPerSecondMultiIndustrialElectrolyzer;
- @Config.Comment("pollution rate in gibbl/s for the Industrial extrusion machine")
- @Config.DefaultInt(1_000)
- public int pollutionPerSecondMultiIndustrialExtruder;
- @Config.Comment("pollution rate in gibbl/s for the Maceration stack")
- @Config.DefaultInt(400)
- public int pollutionPerSecondMultiIndustrialMacerator;
- @Config.Comment("pollution rate in gibbl/s for the Industrial mixing machine")
- @Config.DefaultInt(800)
- public int pollutionPerSecondMultiIndustrialMixer;
- @Config.Comment("pollution rate in gibbl/s for the Large processing factory in metal mode")
- @Config.DefaultInt(400)
- public int pollutionPerSecondMultiIndustrialMultiMachine_ModeMetal;
- @Config.Comment("pollution rate in gibbl/s for the Large processing factory in fluid mode")
- @Config.DefaultInt(400)
- public int pollutionPerSecondMultiIndustrialMultiMachine_ModeFluid;
- @Config.Comment("pollution rate in gibbl/s for the Large processing factory in misc mode")
- @Config.DefaultInt(600)
- public int pollutionPerSecondMultiIndustrialMultiMachine_ModeMisc;
- @Config.Comment("pollution rate in gibbl/s for the Industrial material press in forming mode")
- @Config.DefaultInt(240)
- public int pollutionPerSecondMultiIndustrialPlatePress_ModeForming;
- @Config.Comment("pollution rate in gibbl/s for the Industrial material press in bending mode")
- @Config.DefaultInt(480)
- public int pollutionPerSecondMultiIndustrialPlatePress_ModeBending;
- @Config.Comment("pollution rate in gibbl/s for the Industrial Forge Hammer")
- @Config.DefaultInt(250)
- public int pollutionPerSecondMultiIndustrialForgeHammer;
- @Config.Comment("pollution rate in gibbl/s for the Large Sifter")
- @Config.DefaultInt(40)
- public int pollutionPerSecondMultiIndustrialSifter;
- @Config.Comment("pollution rate in gibbl/s for the Large thermal refinery")
- @Config.DefaultInt(1_000)
- public int pollutionPerSecondMultiIndustrialThermalCentrifuge;
- @Config.Comment("pollution rate in gibbl/s for the Industrial fluid heater")
- @Config.DefaultInt(1_000)
- public int pollutionPerSecondMultiIndustrialFluidHeater;
- @Config.Comment("pollution rate in gibbl/s for the Cryogenic freezer")
- @Config.DefaultInt(500)
- public int pollutionPerSecondMultiIndustrialVacuumFreezer;
- @Config.Comment("pollution rate in gibbl/s for the Ore washing plant in chemical bath mode")
- @Config.DefaultInt(400)
- public int pollutionPerSecondMultiIndustrialWashPlant_ModeChemBath;
- @Config.Comment("pollution rate in gibbl/s for the Ore washing plant in ore washer mode")
- @Config.DefaultInt(100)
- public int pollutionPerSecondMultiIndustrialWashPlant_ModeWasher;
- @Config.Comment("pollution rate in gibbl/s for the Wire factory")
- @Config.DefaultInt(100)
- public int pollutionPerSecondMultiIndustrialWireMill;
- @Config.Comment("pollution rate in gibbl/s for the IsaMill grinding machine")
- @Config.DefaultInt(1_280)
- public int pollutionPerSecondMultiIsaMill;
- @Config.Comment("pollution rate in gibbl/s for the Dangote distillus in distillery mode")
- @Config.DefaultInt(240)
- public int pollutionPerSecondMultiAdvDistillationTower_ModeDistillery;
- @Config.Comment("pollution rate in gibbl/s for the Dangote distillus in distillation tower mode")
- @Config.DefaultInt(480)
- public int pollutionPerSecondMultiAdvDistillationTower_ModeDT;
- @Config.Comment("pollution rate in gibbl/s for the Volcanus")
- @Config.DefaultInt(500)
- public int pollutionPerSecondMultiAdvEBF;
- @Config.Comment("pollution rate in gibbl/s for the Density^2")
- @Config.DefaultInt(5_000)
- public int pollutionPerSecondMultiAdvImplosion;
- @Config.Comment("pollution rate in gibbl/s for the Alloy blast furnace")
- @Config.DefaultInt(200)
- public int pollutionPerSecondMultiABS;
- @Config.Comment("pollution rate in gibbl/s for the Cyclotron")
- @Config.DefaultInt(200)
- public int pollutionPerSecondMultiCyclotron;
- @Config.Comment("pollution rate in gibbl/s for the Zuhai - fishing port")
- @Config.DefaultInt(20)
- public int pollutionPerSecondMultiIndustrialFishingPond;
- // pollutionPerSecondMultiLargeRocketEngine;
- @Config.Comment("pollution rate in gibbl/s for the Large semifluid burner")
- @Config.DefaultInt(1_280)
- public int pollutionPerSecondMultiLargeSemiFluidGenerator;
- @Config.Comment("pollution rate in gibbl/s for the Matter fabrication CPU")
- @Config.DefaultInt(40)
- public int pollutionPerSecondMultiMassFabricator;
- @Config.Comment("pollution rate in gibbl/s for the Reactor fuel processing plant")
- @Config.DefaultInt(4_000)
- public int pollutionPerSecondMultiRefinery;
- @Config.Comment("pollution rate in gibbl/s for the Industrial Rock Breaker")
- @Config.DefaultInt(100)
- public int pollutionPerSecondMultiIndustrialRockBreaker;
- @Config.Comment("pollution rate in gibbl/s for the Industrial Chisel")
- @Config.DefaultInt(50)
- public int pollutionPerSecondMultiIndustrialChisel;
- @Config.Comment("pollution rate in gibbl/s for the Tree growth simulator")
- @Config.DefaultInt(100)
- public int pollutionPerSecondMultiTreeFarm;
- @Config.Comment("pollution rate in gibbl/s for the Flotation cell regulator")
- @Config.DefaultInt(0)
- public int pollutionPerSecondMultiFrothFlotationCell;
- @Config.Comment("pollution rate in gibbl/s for the Large-Scale auto assembler v1.01")
- @Config.DefaultInt(500)
- public int pollutionPerSecondMultiAutoCrafter;
- @Config.Comment("pollution rate in gibbl/s for the Nuclear salt processing plant")
- @Config.DefaultInt(500)
- public int pollutionPerSecondNuclearSaltProcessingPlant;
- @Config.Comment("pollution rate in gibbl/s for the Multiblock Molecular Transformer")
- @Config.DefaultInt(1_000)
- public int pollutionPerSecondMultiMolecularTransformer;
-
- @Config.Comment("pollution rate in gibbl/s for the Elemental Duplicator")
- @Config.DefaultInt(1_000)
- public int pollutionPerSecondElementalDuplicator;
-
- @Config.Comment("pollution rate in gibbl/s for the Thermal boiler")
- @Config.DefaultInt(700)
- public int pollutionPerSecondMultiThermalBoiler;
- @Config.Comment("pollution rate in gibbl/s for the Algae farm")
- @Config.DefaultInt(0)
- public int pollutionPerSecondMultiAlgaePond;
- @Config.Comment("base pollution rate in gibbl/s for the single block semi fluid generators")
- @Config.DefaultInt(40)
- public int basePollutionPerSecondSemiFluidGenerator;
- @Config.Comment("coefficient applied to the base rate of the single block semi fluid generators based on its tier (first is tier 0 aka ULV)")
- @Config.DefaultDoubleList({ 0.0, 2.0, 4.0, 8.0, 12.0, 16.0 })
- public double[] pollutionReleasedByTierSemiFluidGenerator;
- @Config.Comment("base pollution rate in gibbl/s for the single block boilers")
- @Config.DefaultInt(35)
- public int basePollutionPerSecondBoiler;
- @Config.Comment("coefficient applied to the base rate of the single block boilers based on its tier (first is tier 0 aka ULV)")
- @Config.DefaultDoubleList({ 0.0, 1.0, 1.43, 1.86 })
- public double[] pollutionReleasedByTierBoiler;
- @Config.Comment("minimum base pollution rate in gibbl/s for the single block rocket engines")
- @Config.DefaultInt(250)
- public int baseMinPollutionPerSecondRocketFuelGenerator;
- @Config.Comment("maximum base pollution rate in gibbl/s for the single block rocket engines")
- @Config.DefaultInt(2_000)
- public int baseMaxPollutionPerSecondRocketFuelGenerator;
- @Config.Comment("coefficient applied to the base rate of the single block rocket engines based on its tier (first is tier 0 aka ULV)")
- @Config.DefaultDoubleList({ 0.0, 0.0, 0.0, 0.0, 1.0, 2.0, 3.0 })
- public double[] pollutionReleasedByTierRocketFuelGenerator;
- @Config.Comment("base pollution rate in gibbl/s for the geothermal engines")
- @Config.DefaultInt(100)
- public int basePollutionPerSecondGeothermalGenerator;
- @Config.Comment("coefficient applied to the base rate of the single block geothermal engines based on its tier (first is tier 0 aka ULV)")
- @Config.DefaultDoubleList({ 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0 })
- public double[] pollutionReleasedByTierGeothermalGenerator;
- }
-
@Config.Comment("Features section")
public static class Features {
diff --git a/src/main/java/gtPlusPlus/core/tileentities/base/TileEntityBase.java b/src/main/java/gtPlusPlus/core/tileentities/base/TileEntityBase.java
index 35a569578f..811fb0cab1 100644
--- a/src/main/java/gtPlusPlus/core/tileentities/base/TileEntityBase.java
+++ b/src/main/java/gtPlusPlus/core/tileentities/base/TileEntityBase.java
@@ -28,10 +28,10 @@ import gregtech.api.util.GTOreDictUnificator;
import gregtech.api.util.GTUtility;
import gregtech.api.util.ISerializableObject;
import gregtech.common.covers.CoverInfo;
+import gregtech.common.pollution.Pollution;
import gtPlusPlus.api.interfaces.ILazyCoverable;
import gtPlusPlus.api.objects.Logger;
import gtPlusPlus.api.objects.minecraft.BTF_Inventory;
-import gtPlusPlus.core.util.minecraft.gregtech.PollutionUtils;
import ic2.api.Direction;
public class TileEntityBase extends TileEntity implements ILazyCoverable, IGregTechDeviceInformation, IDescribable {
@@ -1316,7 +1316,7 @@ public class TileEntityBase extends TileEntity implements ILazyCoverable, IGregT
}
this.mReleaseEnergy = false;
this.onExplosion();
- PollutionUtils.addPollution(this, 100000);
+ Pollution.addPollution(this, 100000);
this.mMetaTileEntity.doExplosion(aAmount);
}
}
diff --git a/src/main/java/gtPlusPlus/core/util/minecraft/gregtech/PollutionUtils.java b/src/main/java/gtPlusPlus/core/util/minecraft/gregtech/PollutionUtils.java
index f753561d71..1914a5a39d 100644
--- a/src/main/java/gtPlusPlus/core/util/minecraft/gregtech/PollutionUtils.java
+++ b/src/main/java/gtPlusPlus/core/util/minecraft/gregtech/PollutionUtils.java
@@ -1,18 +1,9 @@
package gtPlusPlus.core.util.minecraft.gregtech;
-import java.util.ArrayList;
-
import net.minecraft.item.ItemStack;
-import net.minecraft.world.chunk.Chunk;
import net.minecraftforge.fluids.FluidStack;
-import org.apache.commons.lang3.ArrayUtils;
-
-import gregtech.GTMod;
import gregtech.api.enums.OrePrefixes;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.interfaces.tileentity.IHasWorldObjectAndCoords;
-import gregtech.common.Pollution;
import gtPlusPlus.api.objects.Logger;
import gtPlusPlus.core.item.base.cell.BaseItemCell;
import gtPlusPlus.core.material.MaterialGenerator;
@@ -22,127 +13,41 @@ import gtPlusPlus.core.util.minecraft.ItemUtils;
public class PollutionUtils {
- public static ArrayList<FluidStack> mPollutionFluidStacks = new ArrayList<>();
-
- public static boolean isPollutionEnabled() {
- return GTMod.gregtechproxy.mPollution;
- }
-
- public static boolean addPollution(IGregTechTileEntity te, int pollutionValue) {
- if (GTMod.gregtechproxy.mPollution) {
- Pollution.addPollution(te, pollutionValue);
- return true;
- }
- return false;
- }
-
- public static void addPollution(IHasWorldObjectAndCoords aTileOfSomeSort, int pollutionValue) {
- if (GTMod.gregtechproxy.mPollution) {
- Chunk c = aTileOfSomeSort.getWorld()
- .getChunkFromBlockCoords(aTileOfSomeSort.getXCoord(), aTileOfSomeSort.getZCoord());
- addPollution(c, pollutionValue);
- }
- }
-
- public static void addPollution(Chunk aChunk, int pollutionValue) {
- if (GTMod.gregtechproxy.mPollution) {
- Pollution.addPollution(aChunk, pollutionValue);
- }
- }
-
- public static void removePollution(IGregTechTileEntity te, int pollutionValue) {
- addPollution(te, -pollutionValue);
- }
-
- public static void removePollution(Chunk aChunk, int pollutionValue) {
- addPollution(aChunk, -pollutionValue);
- }
-
- public static void nullifyPollution(IGregTechTileEntity te) {
- if (te == null) {
- return;
- }
- nullifyPollution((IHasWorldObjectAndCoords) te);
- }
-
- public static void nullifyPollution(IHasWorldObjectAndCoords aTileOfSomeSort) {
- if (aTileOfSomeSort == null) {
- return;
- }
- Chunk c = aTileOfSomeSort.getWorld()
- .getChunkFromBlockCoords(aTileOfSomeSort.getXCoord(), aTileOfSomeSort.getZCoord());
- nullifyPollution(c);
- }
-
- public static void nullifyPollution(Chunk aChunk) {
- if (GTMod.gregtechproxy.mPollution) {
- if (aChunk == null) {
- return;
- }
- int getCurrentPollution = getPollution(aChunk);
- if (getCurrentPollution > 0) {
- removePollution(aChunk, getCurrentPollution);
- }
- }
- }
-
- public static int getPollution(IGregTechTileEntity te) {
- return Pollution.getPollution(te);
- }
-
- public static int getPollution(Chunk te) {
- return Pollution.getPollution(te);
- }
-
public static void setPollutionFluids() {
- if (mPollutionFluidStacks.isEmpty()) {
- FluidStack CD, CM, SD;
- CD = FluidUtils.getFluidStack("carbondioxide", 1000);
- CM = FluidUtils.getFluidStack("carbonmonoxide", 1000);
- SD = FluidUtils.getFluidStack("sulfurdioxide", 1000);
- if (PollutionUtils.mPollutionFluidStacks.isEmpty()) {
- if (CD != null) {
- Logger.INFO("[PollutionCompat] Found carbon dioxide fluid, registering it.");
- PollutionUtils.mPollutionFluidStacks.add(CD);
- MaterialMisc.CARBON_DIOXIDE.registerComponentForMaterial(CD);
- ItemStack cellCD = ItemUtils.getItemStackOfAmountFromOreDict("cellCarbonDioxide", 1);
- if (ItemUtils.checkForInvalidItems(cellCD)) {
- Logger.INFO("[PollutionCompat] Found carbon dioxide cell, registering component.");
- MaterialMisc.CARBON_DIOXIDE.registerComponentForMaterial(OrePrefixes.cell, cellCD);
- } else {
- Logger.INFO("[PollutionCompat] Did not find carbon dioxide cell, registering new component.");
- new BaseItemCell(MaterialMisc.CARBON_DIOXIDE);
- }
- } else {
- MaterialGenerator.generate(MaterialMisc.CARBON_DIOXIDE, false, false);
- }
-
- if (CM != null) {
- Logger.INFO("[PollutionCompat] Found carbon monoxide fluid, registering it.");
- PollutionUtils.mPollutionFluidStacks.add(CM);
- MaterialMisc.CARBON_MONOXIDE.registerComponentForMaterial(CM);
- ItemStack cellCD = ItemUtils.getItemStackOfAmountFromOreDict("cellCarbonMonoxide", 1);
- if (ItemUtils.checkForInvalidItems(cellCD)) {
- Logger.INFO("[PollutionCompat] Found carbon monoxide cell, registering component.");
- MaterialMisc.CARBON_MONOXIDE.registerComponentForMaterial(OrePrefixes.cell, cellCD);
- } else {
- Logger.INFO("[PollutionCompat] Did not find carbon monoxide cell, registering new component.");
- new BaseItemCell(MaterialMisc.CARBON_MONOXIDE);
- }
- } else {
- MaterialGenerator.generate(MaterialMisc.CARBON_MONOXIDE, false, false);
- }
-
- if (SD != null) {
- Logger.INFO("[PollutionCompat] Found sulfur dioxide fluid, registering it.");
- PollutionUtils.mPollutionFluidStacks.add(SD);
- }
+ FluidStack CD, CM, SD;
+ CD = FluidUtils.getFluidStack("carbondioxide", 1000);
+ CM = FluidUtils.getFluidStack("carbonmonoxide", 1000);
+ SD = FluidUtils.getFluidStack("sulfurdioxide", 1000);
+ if (CD != null) {
+ Logger.INFO("[PollutionCompat] Found carbon dioxide fluid, registering it.");
+ MaterialMisc.CARBON_DIOXIDE.registerComponentForMaterial(CD);
+ ItemStack cellCD = ItemUtils.getItemStackOfAmountFromOreDict("cellCarbonDioxide", 1);
+ if (ItemUtils.checkForInvalidItems(cellCD)) {
+ Logger.INFO("[PollutionCompat] Found carbon dioxide cell, registering component.");
+ MaterialMisc.CARBON_DIOXIDE.registerComponentForMaterial(OrePrefixes.cell, cellCD);
+ } else {
+ Logger.INFO("[PollutionCompat] Did not find carbon dioxide cell, registering new component.");
+ new BaseItemCell(MaterialMisc.CARBON_DIOXIDE);
}
} else {
- if (mPollutionFluidStacks.size() != 3) {
- Logger.INFO("Unable to detect all 3 pollution fluids. Found: ");
- Logger.INFO(ArrayUtils.toString(mPollutionFluidStacks));
+ MaterialGenerator.generate(MaterialMisc.CARBON_DIOXIDE, false, false);
+ }
+ if (CM != null) {
+ Logger.INFO("[PollutionCompat] Found carbon monoxide fluid, registering it.");
+ MaterialMisc.CARBON_MONOXIDE.registerComponentForMaterial(CM);
+ ItemStack cellCD = ItemUtils.getItemStackOfAmountFromOreDict("cellCarbonMonoxide", 1);
+ if (ItemUtils.checkForInvalidItems(cellCD)) {
+ Logger.INFO("[PollutionCompat] Found carbon monoxide cell, registering component.");
+ MaterialMisc.CARBON_MONOXIDE.registerComponentForMaterial(OrePrefixes.cell, cellCD);
+ } else {
+ Logger.INFO("[PollutionCompat] Did not find carbon monoxide cell, registering new component.");
+ new BaseItemCell(MaterialMisc.CARBON_MONOXIDE);
}
+ } else {
+ MaterialGenerator.generate(MaterialMisc.CARBON_MONOXIDE, false, false);
+ }
+ if (SD != null) {
+ Logger.INFO("[PollutionCompat] Found sulfur dioxide fluid, registering it.");
}
}
}