diff options
Diffstat (limited to 'src/main/java/gregtech/common/tileentities')
| -rw-r--r-- | src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilDrillBase.java | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilDrillBase.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilDrillBase.java index 9be68e0e25..412fa19c89 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilDrillBase.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilDrillBase.java @@ -91,7 +91,7 @@ public abstract class GT_MetaTileEntity_OilDrillBase extends GT_MetaTileEntity_D } if (reachingVoidOrBedrock() && tryFillChunkList()) { - float speed = .5F+(GT_Utility.getTier(getMaxInputVoltage()) - getMinTier()) *.25F; + float speed = 10.0F+(GT_Utility.getTier(getMaxInputVoltage()) - getMinTier()) *1.5F; FluidStack tFluid = pumpOil(speed); if (tFluid != null && tFluid.amount > getTotalConfigValue()){ this.mOutputFluids = new FluidStack[]{tFluid}; @@ -128,14 +128,19 @@ public abstract class GT_MetaTileEntity_OilDrillBase extends GT_MetaTileEntity_D return true; } + private float csig(float input) { + return (float) ((float) 1 + Math.tanh((-1.0)*input/1100.0)); //20*(1 + tanh((-1)*x/1100)), x=0 to 600 + } + private FluidStack pumpOil(float speed){ if (mOilId <= 0) return null; FluidStack tFluid, tOil; tOil = new FluidStack(FluidRegistry.getFluid(mOilId), 0); for (Chunk tChunk : mOilFieldChunks) { - tFluid = undergroundOil(getBaseMetaTileEntity(),speed); + tFluid = undergroundOil(getBaseMetaTileEntity(),speed*csig(undergroundOilReadInformation(getBaseMetaTileEntity()).amount)); if (tFluid == null) mOilFieldChunks.remove(tChunk); if (tOil.isFluidEqual(tFluid)) tOil.amount += tFluid.amount; + } return tOil.amount == 0 ? null : tOil; } |
