--- a/net/minecraft/world/level/block/CaveVinesPlantBlock.java
+++ b/net/minecraft/world/level/block/CaveVinesPlantBlock.java
@@ -18,19 +18,20 @@
 import net.minecraft.world.phys.BlockHitResult;
 
 public class CaveVinesPlantBlock extends GrowingPlantBodyBlock implements BonemealableBlock, CaveVines {
+
     public CaveVinesPlantBlock(BlockBehaviour.Properties settings) {
-        super(settings, Direction.DOWN, SHAPE, false);
-        this.registerDefaultState(this.stateDefinition.any().setValue(BERRIES, Boolean.valueOf(false)));
+        super(settings, Direction.DOWN, CaveVinesPlantBlock.SHAPE, false);
+        this.registerDefaultState((BlockState) ((BlockState) this.stateDefinition.any()).setValue(CaveVinesPlantBlock.BERRIES, false));
     }
 
     @Override
     protected GrowingPlantHeadBlock getHeadBlock() {
-        return (GrowingPlantHeadBlock)Blocks.CAVE_VINES;
+        return (GrowingPlantHeadBlock) Blocks.CAVE_VINES;
     }
 
     @Override
     protected BlockState updateHeadAfterConvertedFromBody(BlockState from, BlockState to) {
-        return to.setValue(BERRIES, from.getValue(BERRIES));
+        return (BlockState) to.setValue(CaveVinesPlantBlock.BERRIES, (Boolean) from.getValue(CaveVinesPlantBlock.BERRIES));
     }
 
     @Override
@@ -40,17 +41,17 @@
 
     @Override
     public InteractionResult use(BlockState state, Level world, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) {
-        return CaveVines.use(state, world, pos);
+        return CaveVines.use(state, world, pos, player); // CraftBukkit
     }
 
     @Override
     protected void createBlockStateDefinition(StateDefinition.Builder<Block, BlockState> builder) {
-        builder.add(BERRIES);
+        builder.add(CaveVinesPlantBlock.BERRIES);
     }
 
     @Override
     public boolean isValidBonemealTarget(LevelReader world, BlockPos pos, BlockState state, boolean isClient) {
-        return !state.getValue(BERRIES);
+        return !(Boolean) state.getValue(CaveVinesPlantBlock.BERRIES);
     }
 
     @Override
@@ -60,6 +61,6 @@
 
     @Override
     public void performBonemeal(ServerLevel world, RandomSource random, BlockPos pos, BlockState state) {
-        world.setBlock(pos, state.setValue(BERRIES, Boolean.valueOf(true)), 2);
+        world.setBlock(pos, (BlockState) state.setValue(CaveVinesPlantBlock.BERRIES, true), 2);
     }
 }
