return super.canPlaceBlockAt(worldIn, pos) &&
!(state.getBlock() instanceof BlockGenericDugSoil && state.getValue(BlockGenericDugSoil.DECAYED)) &&
!(state.getBlock() instanceof BlockGenericCrop && state.getValue(AGE) < 15);
}
@Override
<BUG>protected boolean canGrowUp(World world, BlockPos pos, IBlockState state, int height) {
return !state.getValue(DECAYED) && super.canGrowUp(world, pos, state, height);
}</BUG>
@Override
protected void growUp(World world, BlockPos pos) {

return super.canPlaceBlockAt(worldIn, pos) &&
!(state.getBlock() instanceof BlockGenericDugSoil && state.getValue(BlockGenericDugSoil.DECAYED)) &&
!(state.getBlock() instanceof BlockGenericCrop && state.getValue(AGE) < 15);
}
@Override
protected boolean canGrow(World world, BlockPos pos, IBlockState state) {
return !state.getValue(DECAYED);
}
@Override
protected void growUp(World world, BlockPos pos) {
