2025-03-26 03:05:00 +11:00

34 lines
1.6 KiB
Diff

--- a/net/minecraft/world/level/block/BlockCactus.java
+++ b/net/minecraft/world/level/block/BlockCactus.java
@@ -23,6 +23,8 @@
import net.minecraft.world.phys.shapes.VoxelShape;
import net.minecraft.world.phys.shapes.VoxelShapeCollision;
+import org.bukkit.craftbukkit.event.CraftEventFactory; // CraftBukkit
+
public class BlockCactus extends Block {
public static final MapCodec<BlockCactus> CODEC = simpleCodec(BlockCactus::new);
@@ -72,10 +74,10 @@
double d0 = i >= 3 ? 0.25D : 0.1D;
if (randomsource.nextDouble() <= d0) {
- worldserver.setBlockAndUpdate(blockposition1, Blocks.CACTUS_FLOWER.defaultBlockState());
+ CraftEventFactory.handleBlockGrowEvent(worldserver, blockposition1, Blocks.CACTUS_FLOWER.defaultBlockState()); // CraftBukkit
}
} else if (j == 15 && i < 3) {
- worldserver.setBlockAndUpdate(blockposition1, this.defaultBlockState());
+ CraftEventFactory.handleBlockGrowEvent(worldserver, blockposition1, this.defaultBlockState()); // CraftBukkit
IBlockData iblockdata1 = (IBlockData) iblockdata.setValue(BlockCactus.AGE, 0);
worldserver.setBlock(blockposition, iblockdata1, 260);
@@ -125,7 +127,7 @@
@Override
protected void entityInside(IBlockData iblockdata, World world, BlockPosition blockposition, Entity entity, InsideBlockEffectApplier insideblockeffectapplier) {
- entity.hurt(world.damageSources().cactus(), 1.0F);
+ entity.hurt(world.damageSources().cactus().directBlock(world, blockposition), 1.0F); // CraftBukkit
}
@Override