aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/xmod/gregtech/api
diff options
context:
space:
mode:
authorAlkalus <3060479+draknyte1@users.noreply.github.com>2019-10-10 18:44:32 +0100
committerAlkalus <3060479+draknyte1@users.noreply.github.com>2019-10-10 18:44:32 +0100
commit9c71ae70fc2276b4c56baa26217be2d23dde63b6 (patch)
treea409249e197be63c75b4822038ba04897c59009d /src/Java/gtPlusPlus/xmod/gregtech/api
parentab84b1d95f8c4880891debc594a41f57941de78a (diff)
downloadGT5-Unofficial-9c71ae70fc2276b4c56baa26217be2d23dde63b6.tar.gz
GT5-Unofficial-9c71ae70fc2276b4c56baa26217be2d23dde63b6.tar.bz2
GT5-Unofficial-9c71ae70fc2276b4c56baa26217be2d23dde63b6.zip
+ Added OD tag 'rodBlaze' to blaze rods.
$ Corrected certain multiblocks not counting their casings during construction. Fixes #549. $ Stopped custom MTE's incorrectly handling getDrops(). Fixes #553. $ Stopped GT++ Multis trying to reduce the 'wait' time on themselves when placed or first loaded. Fixes #556.
Diffstat (limited to 'src/Java/gtPlusPlus/xmod/gregtech/api')
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/BaseCustomTileEntity.java38
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java4
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/api/objects/MultiblockRequirements.java114
3 files changed, 114 insertions, 42 deletions
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/BaseCustomTileEntity.java b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/BaseCustomTileEntity.java
index e637365c1e..f6bec1f402 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/BaseCustomTileEntity.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/BaseCustomTileEntity.java
@@ -11,6 +11,7 @@ import gregtech.api.util.GT_Log;
import gregtech.api.util.GT_Utility;
import gregtech.common.GT_Pollution;
import gtPlusPlus.api.objects.Logger;
+import gtPlusPlus.api.objects.data.AutoMap;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.util.minecraft.gregtech.PollutionUtils;
import gtPlusPlus.xmod.gregtech.common.Meta_GT_Proxy;
@@ -96,17 +97,36 @@ public class BaseCustomTileEntity extends BaseMetaTileEntity {
}
public ArrayList<ItemStack> getDrops() {
- ItemStack rStack = new ItemStack(Meta_GT_Proxy.sBlockMachines, 1, this.getMetaTileID());
- NBTTagCompound aSuperNBT = super.getDrops().get(0).getTagCompound();
- NBTTagCompound tNBT = aSuperNBT;
- if (this.hasValidMetaTileEntity()) {
- this.mMetaTileEntity.setItemNBT(tNBT);
+ ArrayList<ItemStack> aDrops = new ArrayList<ItemStack>();
+ ItemStack rStack = new ItemStack(GregTech_API.sBlockMachines, 1, this.getMetaTileID());
+ // Currently not using my custom block.
+ // ItemStack rStack = new ItemStack(Meta_GT_Proxy.sBlockMachines, 1,
+ // this.getMetaTileID());
+ boolean fail = true;
+
+ ArrayList<ItemStack> aSuperDrops = super.getDrops();
+ if (aSuperDrops != null && !aSuperDrops.isEmpty()) {
+ ItemStack aSuperStack = super.getDrops().get(0);
+ if (aSuperStack != null && aSuperStack.hasTagCompound()) {
+ NBTTagCompound aSuperNBT = aSuperStack.getTagCompound();
+ if (aSuperNBT != null && !aSuperNBT.hasNoTags()) {
+ NBTTagCompound tNBT = (NBTTagCompound) aSuperNBT.copy();
+ if (tNBT != null && !tNBT.hasNoTags()) {
+ if (this.hasValidMetaTileEntity()) {
+ this.mMetaTileEntity.setItemNBT(tNBT);
+ rStack.setTagCompound(tNBT);
+ fail = false;
+ aDrops.add(rStack);
+ }
+ }
+ }
+
+ }
}
- if (!tNBT.hasNoTags()) {
- rStack.setTagCompound(tNBT);
+ if (fail) {
+ aDrops.add(rStack);
}
-
- return new ArrayList<ItemStack>(Arrays.asList(new ItemStack[] { rStack }));
+ return aDrops;
}
public boolean isTeleporterCompatible(Direction aSide) {
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java
index b556dc10f9..c16f62866f 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java
@@ -2232,9 +2232,9 @@ GT_MetaTileEntity_MultiBlockBase {
}
private final void tryTickWaitTimerDown() {
- if (mStartUpCheck > 10) {
+ /*if (mStartUpCheck > 10) {
mStartUpCheck = 10;
- }
+ }*/
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/objects/MultiblockRequirements.java b/src/Java/gtPlusPlus/xmod/gregtech/api/objects/MultiblockRequirements.java
index afdf36f930..10909081d1 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/api/objects/MultiblockRequirements.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/api/objects/MultiblockRequirements.java
@@ -2,35 +2,22 @@ package gtPlusPlus.xmod.gregtech.api.objects;
public class MultiblockRequirements {
- public final int mInputBusMinimum;
- public final int mInputHatchMinimum;
+ public int mInputBusMinimum = 0;
+ public int mInputHatchMinimum = 0;
- public final int mOutputBusMinimum;
- public final int mOutputHatchMinimum;
+ public int mOutputBusMinimum = 0;
+ public int mOutputHatchMinimum = 0;
- public final int mMaintMinimum;
+ public int mMaintMinimum = 1;
- public final int mEnergyHatchMinimum;
- public final int mDynamoHatchMinimum;
+ public int mEnergyHatchMinimum = 1;
+ public int mDynamoHatchMinimum = 0;
- public final MultiblockBlueprint mBlueprint;
-
- public static final int mControlCoreMinimum = 1;
+ public final int mMinimumCasingCount;
- /**
- *
- * @param aInputBusses
- * @param aOutputBusses
- * @param aInputHatches
- * @param aOutputHatches
- * @param aEnergyHatches
- * @param aDynamoHatches
- * @param aBlueprint - A data object containing the structural data for this Multiblock
- */
- public MultiblockRequirements(final int aInputBusses, final int aOutputBusses, final int aInputHatches, final int aOutputHatches, final int aEnergyHatches, final int aDynamoHatches, final MultiblockBlueprint aBlueprint) {
- this(aInputBusses, aOutputBusses, aInputHatches, aOutputHatches, aEnergyHatches, aDynamoHatches, 1, aBlueprint);
- }
+ public final MultiblockBlueprint mBlueprint;
+ //public static final int mControlCoreMinimum = 1;
/**
*
* @param aInputBusses
@@ -42,15 +29,80 @@ public class MultiblockRequirements {
* @param aMaintHatches
* @param aBlueprint - A data object containing the structural data for this Multiblock
*/
- public MultiblockRequirements(final int aInputBusses, final int aOutputBusses, final int aInputHatches, final int aOutputHatches, final int aEnergyHatches, final int aDynamoHatches, final int aMaintHatches, final MultiblockBlueprint aBlueprint) {
- mInputBusMinimum = aInputBusses;
- mOutputBusMinimum = aOutputBusses;
- mInputHatchMinimum = aInputHatches;
- mOutputHatchMinimum = aOutputHatches;
- mEnergyHatchMinimum = aEnergyHatches;
- mDynamoHatchMinimum = aDynamoHatches;
- mMaintMinimum = aMaintHatches;
+ public MultiblockRequirements(int aCasingCount, MultiblockBlueprint aBlueprint) {
+ mMinimumCasingCount = aCasingCount;
mBlueprint = aBlueprint;
+ }
+
+ public final int getInputBusMinimum() {
+ return this.mInputBusMinimum;
+ }
+
+ public final MultiblockRequirements setInputBusMinimum(int mInputBusMinimum) {
+ this.mInputBusMinimum = mInputBusMinimum;
+ return this;
+ }
+
+ public final int getInputHatchMinimum() {
+ return this.mInputHatchMinimum;
+ }
+
+ public final MultiblockRequirements setInputHatchMinimum(int mInputHatchMinimum) {
+ this.mInputHatchMinimum = mInputHatchMinimum;
+ return this;
+ }
+
+ public final int getOutputBusMinimum() {
+ return this.mOutputBusMinimum;
+ }
+
+ public final MultiblockRequirements setOutputBusMinimum(int mOutputBusMinimum) {
+ this.mOutputBusMinimum = mOutputBusMinimum;
+ return this;
+ }
+
+ public final int getOutputHatchMinimum() {
+ return this.mOutputHatchMinimum;
+ }
+
+ public final MultiblockRequirements setOutputHatchMinimum(int mOutputHatchMinimum) {
+ this.mOutputHatchMinimum = mOutputHatchMinimum;
+ return this;
+ }
+
+ public final int getMaintMinimum() {
+ return this.mMaintMinimum;
+ }
+
+ public final MultiblockRequirements setMaintMinimum(int mMaintMinimum) {
+ this.mMaintMinimum = mMaintMinimum;
+ return this;
+ }
+
+ public final int getEnergyHatchMinimum() {
+ return this.mEnergyHatchMinimum;
+ }
+
+ public final MultiblockRequirements setEnergyHatchMinimum(int mEnergyHatchMinimum) {
+ this.mEnergyHatchMinimum = mEnergyHatchMinimum;
+ return this;
+ }
+
+ public final int getDynamoHatchMinimum() {
+ return this.mDynamoHatchMinimum;
+ }
+
+ public final MultiblockRequirements setDynamoHatchMinimum(int mDynamoHatchMinimum) {
+ this.mDynamoHatchMinimum = mDynamoHatchMinimum;
+ return this;
+ }
+
+ public final MultiblockBlueprint getBlueprint() {
+ return this.mBlueprint;
+ }
+
+ public final int getMinimumCasingCount() {
+ return this.mMinimumCasingCount;
}
}