A bit of work on resistive heaters

This commit is contained in:
aidancbrady 2016-02-26 09:28:19 -05:00
parent b3143d1abb
commit d6f6625d83

View file

@ -3,19 +3,46 @@ package mekanism.common.tile;
import mekanism.api.IHeatTransfer; import mekanism.api.IHeatTransfer;
import mekanism.common.block.BlockMachine.MachineType; import mekanism.common.block.BlockMachine.MachineType;
import mekanism.common.util.HeatUtils; import mekanism.common.util.HeatUtils;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.common.util.ForgeDirection;
public class TileEntityResistiveHeater extends TileEntityElectricBlock implements IHeatTransfer public class TileEntityResistiveHeater extends TileEntityElectricBlock implements IHeatTransfer
{ {
public double temperature;
public double heatToAbsorb = 0;
public TileEntityResistiveHeater() public TileEntityResistiveHeater()
{ {
super("ResistiveHeater", MachineType.RESISTIVE_HEATER.baseEnergy); super("ResistiveHeater", MachineType.RESISTIVE_HEATER.baseEnergy);
} }
@Override
public void onUpdate()
{
simulateHeat();
applyTemperatureChange();
}
@Override
public void readFromNBT(NBTTagCompound nbtTags)
{
super.readFromNBT(nbtTags);
temperature = nbtTags.getDouble("temperature");
}
@Override
public void writeToNBT(NBTTagCompound nbtTags)
{
super.writeToNBT(nbtTags);
nbtTags.setDouble("temperature", temperature);
}
@Override @Override
public double getTemp() public double getTemp()
{ {
return 0; return temperature;
} }
@Override @Override
@ -27,13 +54,13 @@ public class TileEntityResistiveHeater extends TileEntityElectricBlock implement
@Override @Override
public double getInsulationCoefficient(ForgeDirection side) public double getInsulationCoefficient(ForgeDirection side)
{ {
return 0; return 1000;
} }
@Override @Override
public void transferHeatTo(double heat) public void transferHeatTo(double heat)
{ {
heatToAbsorb += heat;
} }
@Override @Override
@ -45,7 +72,10 @@ public class TileEntityResistiveHeater extends TileEntityElectricBlock implement
@Override @Override
public double applyTemperatureChange() public double applyTemperatureChange()
{ {
return 0; temperature += heatToAbsorb;
heatToAbsorb = 0;
return temperature;
} }
@Override @Override