aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlkalus <draknyte1@hotmail.com>2017-09-09 18:45:53 +1000
committerAlkalus <draknyte1@hotmail.com>2017-09-09 18:45:53 +1000
commit39d0855113cb088777f7a7b0f736dffae61936c4 (patch)
tree618678720fa8b88ec807f5cef9cb3e8f5b71e923 /src
parent8878fb71f930a3535b7fc32eb68836db643ca6d0 (diff)
downloadGT5-Unofficial-39d0855113cb088777f7a7b0f736dffae61936c4.tar.gz
GT5-Unofficial-39d0855113cb088777f7a7b0f736dffae61936c4.tar.bz2
GT5-Unofficial-39d0855113cb088777f7a7b0f736dffae61936c4.zip
+ Added ability for High-Amp Transformers to swap between 2A:8A and 4A:16A modes.
Diffstat (limited to 'src')
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMetaTransformerHiAmp.java39
1 files changed, 38 insertions, 1 deletions
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMetaTransformerHiAmp.java b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMetaTransformerHiAmp.java
index f6f2fb4602..cffedac712 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMetaTransformerHiAmp.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMetaTransformerHiAmp.java
@@ -6,9 +6,16 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gtPlusPlus.core.lib.CORE;
+import gtPlusPlus.core.util.Utils;
+import gtPlusPlus.core.util.player.PlayerUtils;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Transformer;
public class GregtechMetaTransformerHiAmp extends GT_MetaTileEntity_Transformer {
+
+ private boolean mHalfMode = false;
+
public GregtechMetaTransformerHiAmp(int aID, String aName, String aNameRegional, int aTier, String aDescription) {
super(aID, aName, aNameRegional, aTier, aDescription);
}
@@ -19,16 +26,22 @@ public class GregtechMetaTransformerHiAmp extends GT_MetaTileEntity_Transformer
@Override
public long maxEUStore() {
- return ((512L + gregtech.api.enums.GT_Values.V[(this.mTier + 1)] * 2L)*4);
+ return ((512L + gregtech.api.enums.GT_Values.V[(this.mTier + 1)] * 2L)*8);
}
@Override
public long maxAmperesOut() {
+ if (this.mHalfMode){
+ return ((getBaseMetaTileEntity().isAllowedToWork()) ? 8L : 2L);
+ }
return ((getBaseMetaTileEntity().isAllowedToWork()) ? 16L : 4L);
}
@Override
public long maxAmperesIn() {
+ if (this.mHalfMode){
+ return ((getBaseMetaTileEntity().isAllowedToWork()) ? 2L : 8L);
+ }
return ((getBaseMetaTileEntity().isAllowedToWork()) ? 4L : 16L);
}
@Override
@@ -60,4 +73,28 @@ public class GregtechMetaTransformerHiAmp extends GT_MetaTileEntity_Transformer
public String[] getDescription() {
return new String[] {this.mDescription, "Accepts 4A and outputs 16A", CORE.GT_Tooltip};
}
+
+ @Override
+ public void saveNBTData(NBTTagCompound aNBT) {
+ aNBT.setBoolean("mHalfMode", this.mHalfMode);
+ super.saveNBTData(aNBT);
+ }
+
+ @Override
+ public void loadNBTData(NBTTagCompound aNBT) {
+ this.mHalfMode = aNBT.getBoolean("mHalfMode");
+ super.loadNBTData(aNBT);
+ }
+
+ @Override
+ public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ this.mHalfMode = Utils.invertBoolean(mHalfMode);
+ if (this.mHalfMode){
+ PlayerUtils.messagePlayer(aPlayer, "Transformer is now running at 2A:8A in/out Ratio.");
+ }
+ else {
+
+ PlayerUtils.messagePlayer(aPlayer, "Transformer is now running at 4A:16A in/out Ratio.");
+ }
+ }
} \ No newline at end of file