aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common/tileentities
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/common/tileentities')
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilDrillBase.java9
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;
}