Fixed #514 - Mixer NPE

This commit is contained in:
Calclavia 2014-04-13 23:11:36 +08:00
parent 1b9f984afc
commit 714c3ec2a2

View file

@ -143,7 +143,7 @@ public class TileMixer extends TileMechanical implements IInventory
if (timeLeft <= 0)
{
if (this.doneWork(processingItem))
if (doneWork(processingItem))
{
if (--processingItem.getEntityItem().stackSize <= 0)
{
@ -190,20 +190,24 @@ public class TileMixer extends TileMechanical implements IInventory
if (mixPosition.getBlockID(world()) != blockID())
{
Block block = Block.blocksList[mixPosition.getBlockID(worldObj)];
Block blockFluidFinite = ResourceGenerator.getMixture(ResourceGenerator.getName(entity.getEntityItem()));
if (block instanceof BlockFluidMixture)
if (blockFluidFinite != null)
{
ItemStack itemStack = entity.getEntityItem().copy();
if (((BlockFluidMixture) block).mix(worldObj, mixPosition.intX(), mixPosition.intY(), mixPosition.intZ(), itemStack))
if (block instanceof BlockFluidMixture)
{
worldObj.notifyBlocksOfNeighborChange(mixPosition.intX(), mixPosition.intY(), mixPosition.intZ(), mixPosition.getBlockID(worldObj));
return true;
ItemStack itemStack = entity.getEntityItem().copy();
if (((BlockFluidMixture) block).mix(worldObj, mixPosition.intX(), mixPosition.intY(), mixPosition.intZ(), itemStack))
{
worldObj.notifyBlocksOfNeighborChange(mixPosition.intX(), mixPosition.intY(), mixPosition.intZ(), mixPosition.getBlockID(worldObj));
return true;
}
}
else if (block != null && (block.blockID == Block.waterStill.blockID || block.blockID == Block.waterMoving.blockID))
{
mixPosition.setBlock(worldObj, blockFluidFinite.blockID);
}
}
else if (block != null && (block.blockID == Block.waterStill.blockID || block.blockID == Block.waterMoving.blockID))
{
mixPosition.setBlock(worldObj, ResourceGenerator.getMixture(ResourceGenerator.getName(entity.getEntityItem())).blockID);
}
}