make stirling engines heat up again

This commit is contained in:
asiekierka 2015-09-19 13:58:37 +02:00
parent 5e13fc69ed
commit ed2e97044b
5 changed files with 26 additions and 61 deletions

View file

@ -31,16 +31,6 @@ public class TileEngineWood extends TileEngineBase implements IRedstoneEngine {
return super.getTrunkTexture(stage == EnergyStage.RED && progress < 0.5 ? EnergyStage.YELLOW : stage);
}
@Override
public int minEnergyReceived() {
return 0;
}
@Override
public int maxEnergyReceived() {
return 500;
}
@Override
protected EnergyStage computeEnergyStage() {
double energyLevel = getEnergyLevel();
@ -100,14 +90,14 @@ public class TileEngineWood extends TileEngineBase implements IRedstoneEngine {
}
@Override
public int calculateCurrentOutput() {
public int getIdealOutput() {
return 10;
}
@Override
public int maxEnergyExtracted() {
return 10;
}
@Override
public int calculateCurrentOutput() {
return 10;
}
@Override
public boolean canConnectEnergy(ForgeDirection from) {

View file

@ -482,7 +482,7 @@ public abstract class TileEngineBase extends TileBuildCraft implements IPipeConn
}
public int extractEnergy(int energyMax, boolean doExtract) {
int max = Math.min(energyMax, maxEnergyExtracted());
int max = Math.min(energyMax, calculateCurrentOutput());
int extracted;
@ -517,19 +517,19 @@ public abstract class TileEngineBase extends TileBuildCraft implements IPipeConn
public abstract int getMaxEnergy();
public int minEnergyReceived() {
return 20;
}
public abstract int maxEnergyReceived();
public abstract int maxEnergyExtracted();
public int getEnergyStored() {
return energy;
}
public abstract int calculateCurrentOutput();
public abstract int getIdealOutput();
public float getOutputMultiplier() {
return heat / IDEAL_HEAT;
}
public int calculateCurrentOutput() {
return (int) Math.floor((float) getIdealOutput() * getOutputMultiplier());
};
@Override
public ConnectOverride overridePipeConnection(IPipeTile.PipeType type, ForgeDirection with) {

View file

@ -106,7 +106,7 @@ public class TileEngineCreative extends TileEngineBase {
super.engineUpdate();
if (isRedstonePowered) {
addEnergy(calculateCurrentOutput());
addEnergy(getIdealOutput());
}
}
@ -115,23 +115,13 @@ public class TileEngineCreative extends TileEngineBase {
return isRedstonePowered;
}
@Override
public int maxEnergyReceived() {
return calculateCurrentOutput();
}
@Override
public int maxEnergyExtracted() {
return calculateCurrentOutput();
}
@Override
public int getMaxEnergy() {
return calculateCurrentOutput();
return getIdealOutput();
}
@Override
public int calculateCurrentOutput() {
public int getIdealOutput() {
return powerMode.maxPower;
}
}

View file

@ -114,6 +114,11 @@ public class TileEngineIron extends TileEngineWithInventory implements IFluidHan
}
}
@Override
public float getOutputMultiplier() {
return 4.0f;
}
private float getBiomeTempScalar() {
if (biomeCache == null) {
biomeCache = worldObj.getBiomeGenForCoords(xCoord, zCoord);
@ -426,23 +431,13 @@ public class TileEngineIron extends TileEngineWithInventory implements IFluidHan
return tankCoolant.getFluid();
}
@Override
public int maxEnergyReceived() {
return 20000;
}
@Override
public int maxEnergyExtracted() {
return 5000;
}
@Override
public int getMaxEnergy() {
return 100000;
}
@Override
public int calculateCurrentOutput() {
public int getIdealOutput() {
if (currentFuel == null) {
return 0;
} else {

View file

@ -72,7 +72,7 @@ public class TileEngineStone extends TileEngineWithInventory {
if (burnTime > 0) {
burnTime--;
if (isRedstonePowered) {
currentOutput = calculateCurrentOutput();
currentOutput = getIdealOutput();
addEnergy(currentOutput);
}
} else {
@ -138,23 +138,13 @@ public class TileEngineStone extends TileEngineWithInventory {
iCrafting.sendProgressBarUpdate(containerEngine, 16, totalBurnTime);
}
@Override
public int maxEnergyReceived() {
return 2000;
}
@Override
public int maxEnergyExtracted() {
return 1000;
}
@Override
public int getMaxEnergy() {
return 10000;
}
@Override
public int calculateCurrentOutput() {
public int getIdealOutput() {
if (burnItem != null && burnItem.getItem() == Items.paper) {
return 1;
}