--- a/net/minecraft/world/level/block/BambooSaplingBlock.java
+++ b/net/minecraft/world/level/block/BambooSaplingBlock.java
@@ -21,6 +21,7 @@
 import net.minecraft.world.phys.shapes.VoxelShape;
 
 public class BambooSaplingBlock extends Block implements BonemealableBlock {
+
     protected static final float SAPLING_AABB_OFFSET = 4.0F;
     protected static final VoxelShape SAPLING_SHAPE = Block.box(4.0D, 0.0D, 4.0D, 12.0D, 12.0D, 12.0D);
 
@@ -30,8 +31,9 @@
 
     @Override
     public VoxelShape getShape(BlockState state, BlockGetter world, BlockPos pos, CollisionContext context) {
-        Vec3 vec3 = state.getOffset(world, pos);
-        return SAPLING_SHAPE.move(vec3.x, vec3.y, vec3.z);
+        Vec3 vec3d = state.getOffset(world, pos);
+
+        return BambooSaplingBlock.SAPLING_SHAPE.move(vec3d.x, vec3d.y, vec3d.z);
     }
 
     @Override
@@ -86,6 +88,6 @@
     }
 
     protected void growBamboo(Level world, BlockPos pos) {
-        world.setBlock(pos.above(), Blocks.BAMBOO.defaultBlockState().setValue(BambooBlock.LEAVES, BambooLeaves.SMALL), 3);
+        org.bukkit.craftbukkit.v1_19_R1.event.CraftEventFactory.handleBlockSpreadEvent(world, pos, pos.above(), (BlockState) Blocks.BAMBOO.defaultBlockState().setValue(BambooBlock.LEAVES, BambooLeaves.SMALL), 3); // CraftBukkit - BlockSpreadEvent
     }
 }
