From 247da848ef1728f1c76d004c7513704464363941 Mon Sep 17 00:00:00 2001 From: FireInstall Date: Wed, 26 Feb 2025 18:21:25 +0100 Subject: [PATCH] Add missed mace. allow degrees to be defined as float. --- .../backtools/BackToolFeatureRenderer.java | 4 ++-- .../daniking/backtools/BackToolsConfig.java | 8 +++++++- .../com/daniking/backtools/ConfigHandler.java | 19 ++++++++++++++----- 3 files changed, 23 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/daniking/backtools/BackToolFeatureRenderer.java b/src/main/java/com/daniking/backtools/BackToolFeatureRenderer.java index e54e32e..0724106 100644 --- a/src/main/java/com/daniking/backtools/BackToolFeatureRenderer.java +++ b/src/main/java/com/daniking/backtools/BackToolFeatureRenderer.java @@ -69,7 +69,7 @@ private void renderItem(float offset, MatrixStack matrices, VertexConsumerProvid } } if (!bl) { - final int i = ConfigHandler.getToolOrientation(this.mainStack.getItem()); + final float i = ConfigHandler.getToolOrientation(this.mainStack.getItem()); matrices.multiply(RotationAxis.POSITIVE_Z.rotationDegrees(i)); } if (ConfigHandler.isBeltTool(this.mainStack.getItem())) { @@ -107,7 +107,7 @@ private void renderItem(float offset, MatrixStack matrices, VertexConsumerProvid } } if (!isShield) { - final int i = ConfigHandler.getToolOrientation(this.mainStack.getItem()); + final float i = ConfigHandler.getToolOrientation(this.mainStack.getItem()); matrices.multiply(RotationAxis.POSITIVE_Z.rotationDegrees(i)); } if (age > 0) { diff --git a/src/main/java/com/daniking/backtools/BackToolsConfig.java b/src/main/java/com/daniking/backtools/BackToolsConfig.java index 3b50afc..5312cc3 100644 --- a/src/main/java/com/daniking/backtools/BackToolsConfig.java +++ b/src/main/java/com/daniking/backtools/BackToolsConfig.java @@ -22,7 +22,13 @@ public class BackToolsConfig implements ConfigData { @Comment(value = "Disabled tools, by their resource name. Eg: minecraft:diamond_hoe") public List disabledTools = new ArrayList<>(); @Comment(value = "Tool orientation, by class file and degrees. Separate with \":\" . See defaults for examples.") - public List toolOrientation = Arrays.asList("net.minecraft.item.ToolItem" + ":0", "net.minecraft.item.HoeItem" + ":0", "net.minecraft.item.FishingRodItem" + ":0", "net.minecraft.item.TridentItem" + ":0", "net.minecraft.item.RangedWeaponItem" + ":90"); + public List toolOrientation = Arrays.asList( + "net.minecraft.item.MiningToolItem" + ":0", + "net.minecraft.item.HoeItem" + ":0", + "net.minecraft.item.FishingRodItem" + ":0", + "net.minecraft.item.TridentItem" + ":0", + "net.minecraft.item.MaceItem" + ":-22.5", + "net.minecraft.item.RangedWeaponItem" + ":90"); @Comment(value = "Get in swimming position and your tools go \"Weeee\"") public boolean helicopterMode = false; @Comment(value = "If true, tools render with capes") diff --git a/src/main/java/com/daniking/backtools/ConfigHandler.java b/src/main/java/com/daniking/backtools/ConfigHandler.java index 7ee793c..9a48ba4 100644 --- a/src/main/java/com/daniking/backtools/ConfigHandler.java +++ b/src/main/java/com/daniking/backtools/ConfigHandler.java @@ -15,18 +15,18 @@ @Environment(EnvType.CLIENT) public class ConfigHandler { - private static final HashMap, Integer> TOOL_ORIENTATIONS = new HashMap<>(); + private static final HashMap, Float> TOOL_ORIENTATIONS = new HashMap<>(); private static final HashSet ENABLED_TOOLS = new HashSet<>(); private static final Set DISABLED_TOOLS = new HashSet<>(); private static boolean HELICOPTER_MODE = false; private static boolean RENDER_WITH_CAPES = true; public static final HashSet BELT_TOOLS = new HashSet<>(); - public static int getToolOrientation(@NotNull Item item) { + public static float getToolOrientation(@NotNull Item item) { return getToolOrientation(item.getClass()); } - public static int getToolOrientation(@NotNull Class object) { + public static float getToolOrientation(@NotNull Class object) { if (object.equals(Item.class)) { return 0; } @@ -47,7 +47,16 @@ public static boolean isItemEnabled(final Item item) { return false; } //else allow default items - return item instanceof MiningToolItem || item instanceof SwordItem || item instanceof ShieldItem || item instanceof TridentItem || item instanceof BowItem || item instanceof ShearsItem || item instanceof CrossbowItem || item instanceof FishingRodItem; + return item instanceof SwordItem || + item instanceof TridentItem || + item instanceof BowItem || + item instanceof CrossbowItem || + item instanceof MaceItem || + item instanceof ShieldItem || + item instanceof MiningToolItem || + item instanceof ShearsItem || + item instanceof FishingRodItem; + } public static boolean isBeltTool(final Item item) { @@ -101,7 +110,7 @@ private static void parseOrientation() { if (path != null) { try { if (Item.class.isAssignableFrom(path)) { - TOOL_ORIENTATIONS.put(path, Integer.parseInt(split[1])); + TOOL_ORIENTATIONS.put(path, Float.parseFloat(split[1])); } else { BackTools.LOGGER.error("[CONFIG_FILE]: Invalid Tool class file: {}", split[0]); }