From 9cee2b9ec5344f55f28dd4781c710e58f2b592a3 Mon Sep 17 00:00:00 2001 From: jottyfan Date: Sun, 16 Aug 2020 15:25:07 +0200 Subject: [PATCH] added support for byg and terrestial on speed powder shovel --- gradle.properties | 2 +- .../quickiefabric/tools/ToolRangeable.java | 3 ++- .../tools/ToolSpeedpowderShovel.java | 20 +++++++++++++------ 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/gradle.properties b/gradle.properties index bce08db..7c4e091 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,7 +8,7 @@ org.gradle.jvmargs=-Xmx1G loader_version=0.8.8+build.202 # Mod Properties - mod_version = 1.16.1.4 + mod_version = 1.16.1.5 maven_group = de.jottyfan.minecraft archives_base_name = quickiefabric diff --git a/src/main/java/de/jottyfan/minecraft/quickiefabric/tools/ToolRangeable.java b/src/main/java/de/jottyfan/minecraft/quickiefabric/tools/ToolRangeable.java index 1b0562a..0760a82 100644 --- a/src/main/java/de/jottyfan/minecraft/quickiefabric/tools/ToolRangeable.java +++ b/src/main/java/de/jottyfan/minecraft/quickiefabric/tools/ToolRangeable.java @@ -21,7 +21,8 @@ public interface ToolRangeable { .newHashSet(new Block[] { Blocks.GRAVEL, Blocks.SAND, Blocks.GRASS_BLOCK, Blocks.DIRT, Blocks.CLAY, Blocks.FARMLAND, Blocks.GRASS_PATH, Blocks.RED_SAND, Blocks.SOUL_SAND }); - public static final Set SHOVEL_EXTERNAL_EFFECTIVE_ON = Sets.newHashSet("byg:black_sand", "byg:white_sand"); + public static final Set SHOVEL_EXTERNAL_EFFECTIVE_ON = Sets.newHashSet("byg:black_sand", "byg:white_sand", + "byg:peat", "byg:meadow_dirt", "byg:mud_block", "byg:blue_sand", "byg:purple_sand", "terrestria:basalt_sand"); public static final List> AXE_EFFECTIVE_ON = Lists.newArrayList( Arrays.asList(Blocks.ACACIA_LOG, Blocks.STRIPPED_ACACIA_LOG, Blocks.ACACIA_WOOD, Blocks.STRIPPED_ACACIA_WOOD), diff --git a/src/main/java/de/jottyfan/minecraft/quickiefabric/tools/ToolSpeedpowderShovel.java b/src/main/java/de/jottyfan/minecraft/quickiefabric/tools/ToolSpeedpowderShovel.java index afb84a5..e301719 100644 --- a/src/main/java/de/jottyfan/minecraft/quickiefabric/tools/ToolSpeedpowderShovel.java +++ b/src/main/java/de/jottyfan/minecraft/quickiefabric/tools/ToolSpeedpowderShovel.java @@ -2,6 +2,9 @@ package de.jottyfan.minecraft.quickiefabric.tools; import java.util.List; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + import com.google.common.collect.Lists; import de.jottyfan.minecraft.quickiefabric.init.RegistryManager; @@ -19,7 +22,7 @@ import net.minecraft.util.registry.Registry; * */ public class ToolSpeedpowderShovel extends ShovelItem implements ToolRangeable { - + private static final Logger LOGGER = LogManager.getLogger(ToolSpeedpowderShovel.class); public HarvestRange range; public ToolSpeedpowderShovel() { @@ -33,17 +36,22 @@ public class ToolSpeedpowderShovel extends ShovelItem implements ToolRangeable { } @Override - public boolean canBreakNeigbbors(BlockState blockIn) { - return SHOVEL_EFFECTIVE_ON.contains(blockIn.getBlock()) || checkExternalBlock(blockIn.getBlock()); + public boolean canBreakNeigbbors(BlockState blockState) { + boolean result = SHOVEL_EFFECTIVE_ON.contains(blockState.getBlock()) || checkExternalBlock(blockState.getBlock()); + if (!result) { + LOGGER.info("cannot break block {} with that speedpoweder shovel", Registry.BLOCK.getId(blockState.getBlock())); + } + return result; } - + private boolean checkExternalBlock(Block block) { + boolean result = false; for (String externalBlockName : SHOVEL_EXTERNAL_EFFECTIVE_ON) { Identifier id = new Identifier(externalBlockName); Block registeredBlock = Registry.BLOCK.get(id); // may be null if mods are not available - return registeredBlock != null && registeredBlock.equals(block); + result = result || (registeredBlock != null && registeredBlock.equals(block)); } - return false; + return result; } @Override