From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: 12emin34 Date: Thu, 29 Apr 2021 23:56:02 +0200 Subject: [PATCH] Config for changing the blocks that turn into dirt paths diff --git a/src/main/java/net/minecraft/world/item/ShovelItem.java b/src/main/java/net/minecraft/world/item/ShovelItem.java index 32995cb5efdad0bc34ecacacb78cccd21220ba8d..ee1ed9262e4f2a8f1889feb7b2d4f64a2efa63a5 100644 --- a/src/main/java/net/minecraft/world/item/ShovelItem.java +++ b/src/main/java/net/minecraft/world/item/ShovelItem.java @@ -34,7 +34,7 @@ public class ShovelItem extends DiggerItem { return InteractionResult.PASS; } else { Player player = context.getPlayer(); - BlockState blockState2 = FLATTENABLES.get(blockState.getBlock()); + BlockState blockState2 = level.purpurConfig.shovelTurnsBlockToGrassPath.contains(blockState.getBlock()) ? Blocks.DIRT_PATH.defaultBlockState() : null; // Purpur BlockState blockState3 = null; if (blockState2 != null && level.getBlockState(blockPos.above()).isAir()) { level.playSound(player, blockPos, SoundEvents.SHOVEL_FLATTEN, SoundSource.BLOCKS, 1.0F, 1.0F); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java index 6ba44b14b94bc9657ff960cce6cce9809d651cbd..df63de388fa4c7ea61617ac44d30892847ace264 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -441,6 +441,21 @@ public class PurpurWorldConfig { snowballDamage = getInt("gameplay-mechanics.projectile-damage.snowball", snowballDamage); } + public List shovelTurnsBlockToGrassPath = new ArrayList<>(); + private void shovelSettings() { + getList("gameplay-mechanics.shovel-turns-block-to-grass-path", new ArrayList(){{ + add("minecraft:coarse_dirt"); + add("minecraft:dirt"); + add("minecraft:grass_block"); + add("minecraft:mycelium"); + add("minecraft:podzol"); + add("minecraft:rooted_dirt"); + }}).forEach(key -> { + Block block = Registry.BLOCK.get(new ResourceLocation(key.toString())); + if (block != Blocks.AIR) shovelTurnsBlockToGrassPath.add(block); + }); + } + public boolean silkTouchEnabled = false; public String silkTouchSpawnerName = "Spawner"; public List silkTouchSpawnerLore = new ArrayList<>();