public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { if ((aBaseMetaTileEntity.isServerSide()) && (aTick > 20L)) { if (this.mTemperature <= 20) { this.mTemperature = 20; this.mLossTimer = 0; } if (++this.mLossTimer > 40) { this.mTemperature -= 1; this.mLossTimer = 0; } for (byte i = 1; (this.mSteam != null) && (i < 6); i = (byte) (i + 1)) { if (i != aBaseMetaTileEntity.getFrontFacing()) { IFluidHandler tTileEntity = aBaseMetaTileEntity.getITankContainerAtSide(i); if (tTileEntity != null) { FluidStack tDrained = aBaseMetaTileEntity.drain( ForgeDirection.getOrientation(i), Math.max(1, this.mSteam.amount / 2), false); if (tDrained != null) { int tFilledAmount = tTileEntity.fill(ForgeDirection.getOrientation(i).getOpposite(), tDrained, false); if (tFilledAmount > 0) { tTileEntity.fill( ForgeDirection.getOrientation(i).getOpposite(), aBaseMetaTileEntity.drain( ForgeDirection.getOrientation(i), tFilledAmount, true), true); } } } } } if (aTick % 10L == 0L) { if (this.mTemperature > 100) { if ((this.mFluid == null) || (!GT_ModHandler.isWater(this.mFluid)) || (this.mFluid.amount <= 0)) { this.mHadNoWater = true; } else { if (this.mHadNoWater) { aBaseMetaTileEntity.doExplosion(2048L); return; } this.mFluid.amount -= 1; if (this.mSteam == null) { this.mSteam = GT_ModHandler.getSteam(150L); } else if (GT_ModHandler.isSteam(this.mSteam)) { this.mSteam.amount += 150; } else { this.mSteam = GT_ModHandler.getSteam(150L); } } } else { this.mHadNoWater = false; } } if ((this.mSteam != null) && (this.mSteam.amount > 32000)) { sendSound((byte) 1); this.mSteam.amount = 24000; } if ((this.mProcessingEnergy <= 0) && (aBaseMetaTileEntity.isAllowedToWork()) && (this.mInventory[2] != null)) { if ((GT_OreDictUnificator.isItemStackInstanceOf( this.mInventory[2], OrePrefixes.gem.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf( this.mInventory[2], OrePrefixes.dust.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf( this.mInventory[2], OrePrefixes.dustImpure.get(Materials.Coal))) || (GT_OreDictUnificator.isItemStackInstanceOf( this.mInventory[2], OrePrefixes.crushed.get(Materials.Coal)))) { this.mProcessingEnergy += 160; aBaseMetaTileEntity.decrStackSize(2, 1); if (aBaseMetaTileEntity.getRandomNumber(3) == 0) { aBaseMetaTileEntity.addStackToSlot( 3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L)); } } else if ((GT_OreDictUnificator.isItemStackInstanceOf( this.mInventory[2], OrePrefixes.gem.get(Materials.Charcoal))) || (GT_OreDictUnificator.isItemStackInstanceOf( this.mInventory[2], OrePrefixes.dust.get(Materials.Charcoal))) || (GT_OreDictUnificator.isItemStackInstanceOf( this.mInventory[2], OrePrefixes.dustImpure.get(Materials.Charcoal))) || (GT_OreDictUnificator.isItemStackInstanceOf( this.mInventory[2], OrePrefixes.crushed.get(Materials.Charcoal)))) { this.mProcessingEnergy += 160; aBaseMetaTileEntity.decrStackSize(2, 1); if (aBaseMetaTileEntity.getRandomNumber(3) == 0) { aBaseMetaTileEntity.addStackToSlot( 3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 1L)); } } else if (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[2], "fuelCoke")) { this.mProcessingEnergy += 640; aBaseMetaTileEntity.decrStackSize(2, 1); if (aBaseMetaTileEntity.getRandomNumber(2) == 0) { aBaseMetaTileEntity.addStackToSlot( 3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 1L)); } } else if ((GT_OreDictUnificator.isItemStackInstanceOf( this.mInventory[2], OrePrefixes.gem.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf( this.mInventory[2], OrePrefixes.dust.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf( this.mInventory[2], OrePrefixes.dustImpure.get(Materials.Lignite))) || (GT_OreDictUnificator.isItemStackInstanceOf( this.mInventory[2], OrePrefixes.crushed.get(Materials.Lignite)))) { this.mProcessingEnergy += 40; aBaseMetaTileEntity.decrStackSize(2, 1); if (aBaseMetaTileEntity.getRandomNumber(8) == 0) { aBaseMetaTileEntity.addStackToSlot( 3, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L)); } } } if ((this.mTemperature < 1000) && (this.mProcessingEnergy > 0) && (aTick % 12L == 0L)) { this.mProcessingEnergy -= 2; this.mTemperature += 1; } aBaseMetaTileEntity.setActive(this.mProcessingEnergy > 0); } }