From eaf01c1ed1fb6bca80064ccedec4dd0742f52cd4 Mon Sep 17 00:00:00 2001 From: Frank Date: Sat, 17 Jun 2023 11:38:58 +0200 Subject: [PATCH] [Change] Output Blocks that are missing minable tags when runnig DataGen --- .../java/org/betterx/bclib/api/v2/PostInitAPI.java | 10 ++++++++++ .../betterx/bclib/interfaces/tools/AddMineableAxe.java | 2 +- .../bclib/interfaces/tools/AddMineableHammer.java | 2 +- .../betterx/bclib/interfaces/tools/AddMineableHoe.java | 2 +- .../bclib/interfaces/tools/AddMineablePickaxe.java | 2 +- .../bclib/interfaces/tools/AddMineableShears.java | 2 +- .../bclib/interfaces/tools/AddMineableShovel.java | 2 +- .../bclib/interfaces/tools/AddMineableSword.java | 2 +- .../bclib/interfaces/tools/HasMinableBehaviour.java | 8 ++++++++ 9 files changed, 25 insertions(+), 7 deletions(-) create mode 100644 src/main/java/org/betterx/bclib/interfaces/tools/HasMinableBehaviour.java diff --git a/src/main/java/org/betterx/bclib/api/v2/PostInitAPI.java b/src/main/java/org/betterx/bclib/api/v2/PostInitAPI.java index 6e075fdb..ec687d12 100644 --- a/src/main/java/org/betterx/bclib/api/v2/PostInitAPI.java +++ b/src/main/java/org/betterx/bclib/api/v2/PostInitAPI.java @@ -22,6 +22,7 @@ import org.betterx.worlds.together.tag.v3.*; import net.minecraft.client.renderer.RenderType; import net.minecraft.core.dispenser.ShearsDispenseItemBehavior; import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.BlockTags; import net.minecraft.tags.ItemTags; import net.minecraft.tags.TagKey; @@ -252,5 +253,14 @@ public class PostInitAPI { if (block instanceof Fuel fl) { FuelRegistry.INSTANCE.add(block, fl.getFuelTime()); } + + if (BCLib.isDatagen()) { + final ResourceLocation location = BuiltInRegistries.BLOCK.getKey(block); + if (!location.getNamespace().equals("minecraft")) { + if (!(block instanceof HasMinableBehaviour)) { + BCLib.LOGGER.warning("Block " + block + " has no minable behaviour!"); + } + } + } } } diff --git a/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableAxe.java b/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableAxe.java index 7a110d3d..6c978913 100644 --- a/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableAxe.java +++ b/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableAxe.java @@ -1,4 +1,4 @@ package org.betterx.bclib.interfaces.tools; -public interface AddMineableAxe { +public interface AddMineableAxe extends HasMinableBehaviour { } diff --git a/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableHammer.java b/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableHammer.java index 6826e308..8c3fd0b4 100644 --- a/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableHammer.java +++ b/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableHammer.java @@ -1,4 +1,4 @@ package org.betterx.bclib.interfaces.tools; -public interface AddMineableHammer { +public interface AddMineableHammer extends HasMinableBehaviour { } diff --git a/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableHoe.java b/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableHoe.java index 6db28739..784f0993 100644 --- a/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableHoe.java +++ b/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableHoe.java @@ -1,4 +1,4 @@ package org.betterx.bclib.interfaces.tools; -public interface AddMineableHoe { +public interface AddMineableHoe extends HasMinableBehaviour { } diff --git a/src/main/java/org/betterx/bclib/interfaces/tools/AddMineablePickaxe.java b/src/main/java/org/betterx/bclib/interfaces/tools/AddMineablePickaxe.java index 9a9017a9..2a789a65 100644 --- a/src/main/java/org/betterx/bclib/interfaces/tools/AddMineablePickaxe.java +++ b/src/main/java/org/betterx/bclib/interfaces/tools/AddMineablePickaxe.java @@ -1,4 +1,4 @@ package org.betterx.bclib.interfaces.tools; -public interface AddMineablePickaxe { +public interface AddMineablePickaxe extends HasMinableBehaviour { } diff --git a/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableShears.java b/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableShears.java index d26fba7b..09ff4290 100644 --- a/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableShears.java +++ b/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableShears.java @@ -1,4 +1,4 @@ package org.betterx.bclib.interfaces.tools; -public interface AddMineableShears { +public interface AddMineableShears extends HasMinableBehaviour { } diff --git a/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableShovel.java b/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableShovel.java index d9ae344d..3b848be5 100644 --- a/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableShovel.java +++ b/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableShovel.java @@ -1,4 +1,4 @@ package org.betterx.bclib.interfaces.tools; -public interface AddMineableShovel { +public interface AddMineableShovel extends HasMinableBehaviour { } diff --git a/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableSword.java b/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableSword.java index c38f3767..a71e0fca 100644 --- a/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableSword.java +++ b/src/main/java/org/betterx/bclib/interfaces/tools/AddMineableSword.java @@ -1,4 +1,4 @@ package org.betterx.bclib.interfaces.tools; -public interface AddMineableSword { +public interface AddMineableSword extends HasMinableBehaviour { } diff --git a/src/main/java/org/betterx/bclib/interfaces/tools/HasMinableBehaviour.java b/src/main/java/org/betterx/bclib/interfaces/tools/HasMinableBehaviour.java new file mode 100644 index 00000000..88b2bd4c --- /dev/null +++ b/src/main/java/org/betterx/bclib/interfaces/tools/HasMinableBehaviour.java @@ -0,0 +1,8 @@ +package org.betterx.bclib.interfaces.tools; + + +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public interface HasMinableBehaviour { +}