diff --git a/src/main/java/com/minelittlepony/unicopia/block/SlimePustuleBlock.java b/src/main/java/com/minelittlepony/unicopia/block/SlimePustuleBlock.java index a931844c..97406a32 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/SlimePustuleBlock.java +++ b/src/main/java/com/minelittlepony/unicopia/block/SlimePustuleBlock.java @@ -115,7 +115,7 @@ public class SlimePustuleBlock extends Block { @Override public void onBreak(World world, BlockPos pos, BlockState state, PlayerEntity player) { if (state.get(SHAPE) == Shape.POD) { - world.getOtherEntities(null, new Box(pos).expand(1)).forEach(entity -> { + world.getOtherEntities(player.canHarvest(state) ? player : null, new Box(pos).expand(1)).forEach(entity -> { entity.damage(entity.getDamageSources().inFire(), 2); entity.setFireTicks(3); }); diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/slime_pustule.json b/src/main/resources/data/unicopia/loot_tables/blocks/slime_pustule.json new file mode 100644 index 00000000..3945bf2f --- /dev/null +++ b/src/main/resources/data/unicopia/loot_tables/blocks/slime_pustule.json @@ -0,0 +1,55 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "unicopia:slime_pustule" + } + ], + "conditions": [ + { + "condition": "minecraft:all_of", + "terms": [ + { + "block": "unicopia:slime_pustule", + "condition": "minecraft:block_state_property", + "properties": { + "shape": "pod" + } + }, + { + "condition": "minecraft:any_of", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "items": [ + "minecraft:shears" + ] + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ] + } + ] + } + ] +} \ No newline at end of file