diff options
author | Technus <daniel112092@gmail.com> | 2017-08-28 07:59:47 +0200 |
---|---|---|
committer | Technus <daniel112092@gmail.com> | 2017-08-28 09:45:04 +0200 |
commit | 62932c45575cf6dfb3117dfb006f1f73e908dd55 (patch) | |
tree | c10c94eaab648daa09f671578a8854f1b1c50525 /src/main | |
parent | 552d77566a4d64ab6a46ea928cc16aa3715b47d4 (diff) | |
download | GT5-Unofficial-62932c45575cf6dfb3117dfb006f1f73e908dd55.tar.gz GT5-Unofficial-62932c45575cf6dfb3117dfb006f1f73e908dd55.tar.bz2 GT5-Unofficial-62932c45575cf6dfb3117dfb006f1f73e908dd55.zip |
small changes in multiblock core
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_MultiblockBase_EM.java | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_MultiblockBase_EM.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_MultiblockBase_EM.java index 787db57f37..f6b64f3361 100644 --- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_MultiblockBase_EM.java +++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_MultiblockBase_EM.java @@ -147,11 +147,6 @@ public abstract class GT_MetaTileEntity_MultiblockBase_EM extends GT_MetaTileEnt //default is once per 50s; mUpdate is decremented every tick } - //triggered if machine is not allowed to work after completing a recipe - protected void notAllowedToWork_stopMachine_EM(){ - stopMachine(); - } - @Override public int getPollutionPerTick(ItemStack itemStack) { return 0; @@ -161,6 +156,11 @@ public abstract class GT_MetaTileEntity_MultiblockBase_EM extends GT_MetaTileEnt return 0; } + //triggered if machine is not allowed to work after completing a recipe + protected void notAllowedToWork_stopMachine_EM(){ + stopMachine(); + } + //Override if needed but usually call super method at start! //On machine stop - NOT called when softhammered to offline state! - it SHOULD cause a full stop like power failure does @Override @@ -733,17 +733,14 @@ public abstract class GT_MetaTileEntity_MultiblockBase_EM extends GT_MetaTileEnt @Override public boolean onRunningTick(ItemStack aStack) { - if (eRequiredData > 0 && eRequiredData > eAvailableData) { + if (eRequiredData > eAvailableData || + (this.mEUt < 0 && !this.drainEnergyInput_EM((long) (-this.mEUt) * getMaxEfficiency(aStack) / (long) Math.max(1000, this.mEfficiency), eAmpereFlow))) { stopMachine(); return false; } - if (this.mEUt > 0) { + if (this.mEUt > 0) this.addEnergyOutput_EM((long) mEUt * (long) mEfficiency / getMaxEfficiency(aStack), eAmpereFlow); - return true; - } else if (this.mEUt < 0 && !this.drainEnergyInput_EM((long) (-this.mEUt) * getMaxEfficiency(aStack) / (long) Math.max(1000, this.mEfficiency), eAmpereFlow)) { - stopMachine(); - return false; - } else return true; + return true; } //region energy @@ -1027,10 +1024,14 @@ public abstract class GT_MetaTileEntity_MultiblockBase_EM extends GT_MetaTileEnt } @Override - public void explodeMultiblock() {//BEST METHOD EVER!!! + public final void explodeMultiblock() { if(explodedThisTick)return; + extraExplosions_EM(); + explodeMultiblock_EM(); explodedThisTick=true; + } + private void explodeMultiblock_EM(){ if (!TecTech.ModConfig.BOOM_ENABLE) { TecTech.proxy.broadcast("Multi Explode BOOM! " + getBaseMetaTileEntity().getXCoord() + " " + getBaseMetaTileEntity().getYCoord() + " " + getBaseMetaTileEntity().getZCoord()); StackTraceElement[] ste = Thread.currentThread().getStackTrace(); @@ -1056,7 +1057,6 @@ public abstract class GT_MetaTileEntity_MultiblockBase_EM extends GT_MetaTileEnt for (MetaTileEntity tTileEntity : eDynamoMulti) tTileEntity.getBaseMetaTileEntity().doExplosion(V[14]); for (MetaTileEntity tTileEntity : eInputData) tTileEntity.getBaseMetaTileEntity().doExplosion(V[9]); for (MetaTileEntity tTileEntity : eOutputData) tTileEntity.getBaseMetaTileEntity().doExplosion(V[9]); - extraExplosions_EM(); getBaseMetaTileEntity().doExplosion(V[15]); } |