aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMaxim <maxim235@gmx.de>2022-12-12 10:27:57 +0100
committerGitHub <noreply@github.com>2022-12-12 10:27:57 +0100
commit53499cda7c988f90a1bfe5aa10ba6aa312c897d6 (patch)
tree71641b29579c1cd7ab70af9dce282e014ebcb3e4 /src
parentcf6cfc0cb182b9904e36d5c87e1ae94eaa56da43 (diff)
downloadGT5-Unofficial-53499cda7c988f90a1bfe5aa10ba6aa312c897d6.tar.gz
GT5-Unofficial-53499cda7c988f90a1bfe5aa10ba6aa312c897d6.tar.bz2
GT5-Unofficial-53499cda7c988f90a1bfe5aa10ba6aa312c897d6.zip
Allow to toggle the seperation of busses (#453)
Diffstat (limited to 'src')
-rw-r--r--src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java71
1 files changed, 53 insertions, 18 deletions
diff --git a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java
index 2e687e1e25..27c525012a 100644
--- a/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java
+++ b/src/main/java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMixer.java
@@ -24,7 +24,10 @@ import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase;
import gtPlusPlus.xmod.gregtech.common.blocks.textures.TexturesGtBlock;
import java.util.ArrayList;
+import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.util.StatCollector;
import net.minecraftforge.fluids.FluidStack;
public class GregtechMetaTileEntity_IndustrialMixer
@@ -34,6 +37,7 @@ public class GregtechMetaTileEntity_IndustrialMixer
public static String mCasingName = "Multi-Use Casing";
public static String mCasingName2 = "Titanium Turbine Casing";
private int mCasing;
+ private boolean isBussesSeparate = true;
private static IStructureDefinition<GregtechMetaTileEntity_IndustrialMixer> STRUCTURE_DEFINITION = null;
public GregtechMetaTileEntity_IndustrialMixer(final int aID, final String aName, final String aNameRegional) {
@@ -47,6 +51,18 @@ public class GregtechMetaTileEntity_IndustrialMixer
}
@Override
+ public void saveNBTData(NBTTagCompound aNBT) {
+ super.saveNBTData(aNBT);
+ aNBT.setBoolean("isBussesSeparate", isBussesSeparate);
+ }
+
+ @Override
+ public void loadNBTData(final NBTTagCompound aNBT) {
+ super.loadNBTData(aNBT);
+ isBussesSeparate = aNBT.getBoolean("isBussesSeparate");
+ }
+
+ @Override
public IMetaTileEntity newMetaEntity(final IGregTechTileEntity aTileEntity) {
return new GregtechMetaTileEntity_IndustrialMixer(this.mName);
}
@@ -148,31 +164,41 @@ public class GregtechMetaTileEntity_IndustrialMixer
@Override
public boolean checkRecipe(final ItemStack aStack) {
- for (GT_MetaTileEntity_Hatch_InputBus tBus : mInputBusses) {
- ArrayList<ItemStack> rList = new ArrayList<>();
- for (int i = tBus.getBaseMetaTileEntity().getSizeInventory() - 1; i >= 0; i--) {
- if (tBus.getBaseMetaTileEntity().getStackInSlot(i) != null)
- rList.add(tBus.getBaseMetaTileEntity().getStackInSlot(i));
+ if (isBussesSeparate) {
+ for (GT_MetaTileEntity_Hatch_InputBus tBus : mInputBusses) {
+ ArrayList<ItemStack> rList = new ArrayList<>();
+ for (int i = tBus.getBaseMetaTileEntity().getSizeInventory() - 1; i >= 0; i--) {
+ if (tBus.getBaseMetaTileEntity().getStackInSlot(i) != null)
+ rList.add(tBus.getBaseMetaTileEntity().getStackInSlot(i));
+ }
+
+ if (checkRecipeGeneric(
+ rList.toArray(new ItemStack[0]),
+ getStoredFluids().toArray(new FluidStack[0]),
+ getMaxParallelRecipes(),
+ getEuDiscountForParallelism(),
+ 250,
+ 10000)) {
+ return true;
+ }
}
- if (checkRecipeGeneric(
- rList.toArray(new ItemStack[0]),
+ return checkRecipeGeneric(
+ new ItemStack[0],
getStoredFluids().toArray(new FluidStack[0]),
getMaxParallelRecipes(),
getEuDiscountForParallelism(),
250,
- 10000)) {
- return true;
- }
+ 10000);
+ } else {
+ return checkRecipeGeneric(
+ getStoredInputs().toArray(new ItemStack[0]),
+ getStoredFluids().toArray(new FluidStack[0]),
+ getMaxParallelRecipes(),
+ getEuDiscountForParallelism(),
+ 250,
+ 10000);
}
-
- return checkRecipeGeneric(
- new ItemStack[0],
- getStoredFluids().toArray(new FluidStack[0]),
- getMaxParallelRecipes(),
- getEuDiscountForParallelism(),
- 250,
- 10000);
}
@Override
@@ -201,6 +227,15 @@ public class GregtechMetaTileEntity_IndustrialMixer
}
@Override
+ public boolean onWireCutterRightClick(
+ byte aSide, byte aWrenchingSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ isBussesSeparate = !isBussesSeparate;
+ GT_Utility.sendChatToPlayer(
+ aPlayer, StatCollector.translateToLocal("GT5U.machines.separatebus") + " " + isBussesSeparate);
+ return true;
+ }
+
+ @Override
public int getAmountOfOutputs() {
return 1;
}