From 992c688a2906cdc044bb80201d50bc802f4b3bad Mon Sep 17 00:00:00 2001 From: Drew Edwards Date: Sat, 28 Mar 2026 22:54:31 +0000 Subject: [PATCH] fix: bonemeal api in multiplayer --- .../stationapi/api/bonemeal/BonemealAPI.java | 10 +++++++--- .../stationapi/mixin/item/DyeItemMixin.java | 4 ++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/station-items-v0/src/main/java/net/modificationstation/stationapi/api/bonemeal/BonemealAPI.java b/station-items-v0/src/main/java/net/modificationstation/stationapi/api/bonemeal/BonemealAPI.java index e254920b8..108755d45 100644 --- a/station-items-v0/src/main/java/net/modificationstation/stationapi/api/bonemeal/BonemealAPI.java +++ b/station-items-v0/src/main/java/net/modificationstation/stationapi/api/bonemeal/BonemealAPI.java @@ -79,7 +79,9 @@ public boolean generate(World world, Random random, int x, int y, int z) { BlockState worldState = world.getBlockState(x, y, z); if (!worldState.isAir()) return false; if (state.getBlock().canPlaceAt(world, x, y, z)) { - world.setBlockState(x, y, z, state); + if (!world.isRemote) { + world.setBlockState(x, y, z, state); + } return true; } return false; @@ -94,8 +96,10 @@ public boolean generate(World world, Random random, int x, int y, int z) { BlockState worldState = world.getBlockState(x, y, z); if (!worldState.isAir()) return false; if (STATE.getBlock().canPlaceAt(world, x, y, z)) { - world.setBlockState(x, y, z, STATE); - world.setBlockMeta(x, y, z, 1); + if (!world.isRemote) { + world.setBlockState(x, y, z, STATE); + world.setBlockMeta(x, y, z, 1); + } return true; } return false; diff --git a/station-items-v0/src/main/java/net/modificationstation/stationapi/mixin/item/DyeItemMixin.java b/station-items-v0/src/main/java/net/modificationstation/stationapi/mixin/item/DyeItemMixin.java index 9613eafdc..e08ef1cea 100644 --- a/station-items-v0/src/main/java/net/modificationstation/stationapi/mixin/item/DyeItemMixin.java +++ b/station-items-v0/src/main/java/net/modificationstation/stationapi/mixin/item/DyeItemMixin.java @@ -27,13 +27,13 @@ private void stationapi_onBonemealUse(ItemStack item, PlayerEntity player, World if (state.getBlock().onBonemealUse(world, x, y, z, state)) { world.setBlocksDirty(x, y, z, x, y, z); info.setReturnValue(true); - item.count--; + if (!world.isRemote) item.count--; return; } if (BonemealAPI.generate(world, x, y, z, state, side)) { world.setBlocksDirty(x - 8, y - 8, z - 8, x + 8, y + 8, z + 8); info.setReturnValue(true); - item.count--; + if (!world.isRemote) item.count--; } } }