if (oldBlock != null) {
if (!worldObj.isRemote) {
oldBlock.breakBlock(worldObj, wX, y, wZ, oldId, oldMeta);
} else if (oldBlock.hasTileEntity(oldMeta)) {
TileEntity te = worldObj.getBlockTileEntity(wX, y, wZ);
if (te != null && te.shouldRefresh(oldId, id, oldMeta, meta, worldObj, wX, y, wZ)) {
worldObj.removeBlockTileEntity(wX, y, wZ);
}
}
}