mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-03 13:36:44 +01:00
Fixed bonemeal not being consumed on failed growth attempts. This fixes BUKKIT-337. Thanks to md-5 for the pull request!
This commit is contained in:
parent
246d07482b
commit
972b2087f2
7 changed files with 9 additions and 17 deletions
|
@ -108,10 +108,13 @@ public class BlockMushroom extends BlockFlower {
|
|||
event = new StructureGrowEvent(location, TreeType.RED_MUSHROOM, bonemeal, player, new ArrayList<BlockState>());
|
||||
worldgenhugemushroom = new WorldGenHugeMushroom(1);
|
||||
}
|
||||
if (worldgenhugemushroom != null && event != null){
|
||||
if (worldgenhugemushroom != null && event != null) {
|
||||
grown = worldgenhugemushroom.grow(world, random, i, j, k, event, itemstack, world.getWorld());
|
||||
if (event.isFromBonemeal() && itemstack != null) {
|
||||
--itemstack.count;
|
||||
}
|
||||
}
|
||||
if (!grown || event.isCancelled()){
|
||||
if (!grown || event.isCancelled()) {
|
||||
world.setRawTypeIdAndData(i, j, k, this.id, l);
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -70,6 +70,9 @@ public class BlockSapling extends BlockFlower {
|
|||
if (event == null) {
|
||||
return;
|
||||
}
|
||||
if (event.isFromBonemeal() && itemstack != null) {
|
||||
--itemstack.count;
|
||||
}
|
||||
if (!grownTree || event.isCancelled()) {
|
||||
world.setRawTypeIdAndData(i, j, k, this.id, l);
|
||||
}
|
||||
|
@ -82,6 +85,7 @@ public class BlockSapling extends BlockFlower {
|
|||
|
||||
// CraftBukkit start
|
||||
private class BlockChangeWithNotify implements BlockChangeDelegate {
|
||||
|
||||
World world;
|
||||
|
||||
BlockChangeWithNotify(World world) {
|
||||
|
|
|
@ -401,9 +401,6 @@ public class WorldGenBigTree extends WorldGenerator {
|
|||
for (BlockState state : event.getBlocks()) {
|
||||
state.update();
|
||||
}
|
||||
if (event.isFromBonemeal() && itemstack != null) {
|
||||
--itemstack.count;
|
||||
}
|
||||
}
|
||||
}
|
||||
// Craftbukkit end
|
||||
|
|
|
@ -126,9 +126,6 @@ public class WorldGenForest extends WorldGenerator {
|
|||
for (BlockState state : event.getBlocks()) {
|
||||
state.update(true);
|
||||
}
|
||||
if (event.isFromBonemeal() && itemstack != null) {
|
||||
--itemstack.count;
|
||||
}
|
||||
}
|
||||
}
|
||||
// Craftbukkit end
|
||||
|
|
|
@ -196,9 +196,6 @@ public class WorldGenHugeMushroom extends WorldGenerator {
|
|||
for (BlockState state : event.getBlocks()) {
|
||||
state.update(true);
|
||||
}
|
||||
if (event.isFromBonemeal() && itemstack != null) {
|
||||
--itemstack.count;
|
||||
}
|
||||
}
|
||||
}
|
||||
// Craftbukkit end
|
||||
|
|
|
@ -144,9 +144,6 @@ public class WorldGenTaiga2 extends WorldGenerator {
|
|||
for (BlockState state : event.getBlocks()) {
|
||||
state.update(true);
|
||||
}
|
||||
if (event.isFromBonemeal() && itemstack != null) {
|
||||
--itemstack.count;
|
||||
}
|
||||
}
|
||||
}
|
||||
// Craftbukkit end
|
||||
|
|
|
@ -124,9 +124,6 @@ public class WorldGenTrees extends WorldGenerator {
|
|||
for (BlockState state : event.getBlocks()) {
|
||||
state.update(true);
|
||||
}
|
||||
if (event.isFromBonemeal() && itemstack != null) {
|
||||
--itemstack.count;
|
||||
}
|
||||
}
|
||||
}
|
||||
// Craftbukkit end
|
||||
|
|
Loading…
Reference in a new issue