From 1b7336e8667f6a4a4b8212c898516e4b330af09d Mon Sep 17 00:00:00 2001 From: Jottyfan Date: Fri, 2 Jan 2026 23:41:09 +0100 Subject: [PATCH] common axe class for all rangeable axes --- .../jottyfan/minecraft/item/QuicklyItems.java | 11 ++++++-- .../minecraft/item/ToolQuickiepowderAxe.java | 26 ------------------- .../minecraft/item/ToolRangeableAxe.java | 10 ++++--- .../minecraft/item/ToolSpeedpowderAxe.java | 26 ------------------- .../quickly/recipe/shaped_blockstacker.json | 2 +- 5 files changed, 16 insertions(+), 59 deletions(-) delete mode 100644 src/main/java/de/jottyfan/minecraft/item/ToolQuickiepowderAxe.java delete mode 100644 src/main/java/de/jottyfan/minecraft/item/ToolSpeedpowderAxe.java diff --git a/src/main/java/de/jottyfan/minecraft/item/QuicklyItems.java b/src/main/java/de/jottyfan/minecraft/item/QuicklyItems.java index b7e2650..ce463c4 100644 --- a/src/main/java/de/jottyfan/minecraft/item/QuicklyItems.java +++ b/src/main/java/de/jottyfan/minecraft/item/QuicklyItems.java @@ -10,7 +10,10 @@ import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; import net.minecraft.resources.Identifier; import net.minecraft.resources.ResourceKey; +import net.minecraft.tags.BlockTags; +import net.minecraft.tags.ItemTags; import net.minecraft.world.item.Item; +import net.minecraft.world.item.ToolMaterial; import net.minecraft.world.item.Item.Properties; import net.minecraft.world.item.equipment.ArmorType; @@ -52,7 +55,9 @@ public class QuicklyItems { // TODO: rename tools to speedaxe and quickaxe instead of the powder version public static final Item TOOL_SPEEDPOWDERAXE = registerItem("speedpowderaxe", - properties -> new ToolSpeedpowderAxe(properties)); + properties -> new ToolRangeableAxe( + new ToolMaterial(BlockTags.INCORRECT_FOR_DIAMOND_TOOL, 800, 7f, 1f, 15, ItemTags.DIAMOND_TOOL_MATERIALS), 7f, + -3.1f, properties, new HarvestRange(32, 64, 32))); public static final Item TOOL_SPEEDPOWDERHOE = registerItem("speedpowderhoe", properties -> new ToolSpeedpowderHoe(properties)); public static final Item TOOL_SPEEDPOWDERPICKAXE = registerItem("speedpowderpickaxe", @@ -64,7 +69,9 @@ public class QuicklyItems { public static final Item TOOL_SPEEDPOWDERWATERHOE = registerItem("speedpowderwaterhoe", properties -> new ToolSpeedpowderWaterHoe(properties, QuicklyItems.TOOL_SPEEDPOWDERHOE)); public static final Item TOOL_QUICKIEPOWDERAXE = registerItem("quickiepowderaxe", - properties -> new ToolQuickiepowderAxe(properties)); + properties -> new ToolRangeableAxe( + new ToolMaterial(BlockTags.INCORRECT_FOR_DIAMOND_TOOL, 2400, 7f, 1f, 15, ItemTags.DIAMOND_TOOL_MATERIALS), 7F, + -3.1F, properties, new HarvestRange(64, 128, 64))); public static final Item TOOL_QUICKIEPOWDERHOE = registerItem("quickiepowderhoe", properties -> new ToolQuickiepowderHoe(properties)); public static final Item TOOL_QUICKIEPOWDERPICKAXE = registerItem("quickiepowderpickaxe", diff --git a/src/main/java/de/jottyfan/minecraft/item/ToolQuickiepowderAxe.java b/src/main/java/de/jottyfan/minecraft/item/ToolQuickiepowderAxe.java deleted file mode 100644 index 00a4463..0000000 --- a/src/main/java/de/jottyfan/minecraft/item/ToolQuickiepowderAxe.java +++ /dev/null @@ -1,26 +0,0 @@ -package de.jottyfan.minecraft.item; - -import net.minecraft.tags.BlockTags; -import net.minecraft.tags.ItemTags; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.ToolMaterial; - -/** - * - * @author jotty - * - */ -public class ToolQuickiepowderAxe extends ToolRangeableAxe { - - private final static ToolMaterial MATERIAL = new ToolMaterial(BlockTags.INCORRECT_FOR_DIAMOND_TOOL, 2400, 7f, 1f, 15, ItemTags.DIAMOND_TOOL_MATERIALS); - - public ToolQuickiepowderAxe(Properties properties) { - super(MATERIAL, 7F, -3.1F, properties); - } - - @Override - public HarvestRange getRange(ItemStack stack) { - // TODO: get the range from the stack - return new HarvestRange(64, 128, 64); // trees bigger than that are too heavy for one small axe... - } -} diff --git a/src/main/java/de/jottyfan/minecraft/item/ToolRangeableAxe.java b/src/main/java/de/jottyfan/minecraft/item/ToolRangeableAxe.java index 353c748..321452f 100644 --- a/src/main/java/de/jottyfan/minecraft/item/ToolRangeableAxe.java +++ b/src/main/java/de/jottyfan/minecraft/item/ToolRangeableAxe.java @@ -18,16 +18,18 @@ import net.minecraft.world.level.block.state.BlockState; * @author jotty * */ -public abstract class ToolRangeableAxe extends AxeItem implements ToolRangeable { +public class ToolRangeableAxe extends AxeItem implements ToolRangeable { - protected ToolRangeableAxe(ToolMaterial material, float attackDamage, float attackSpeed, Properties properties) { + private final HarvestRange range; + + public ToolRangeableAxe(ToolMaterial material, float attackDamage, float attackSpeed, Properties properties, HarvestRange range) { super(material, attackDamage, attackSpeed, properties); + this.range = range; } @Override public HarvestRange getRange(ItemStack stack) { - // TODO: get the range from the stack - return new HarvestRange(16, 32, 16); + return range; } /** diff --git a/src/main/java/de/jottyfan/minecraft/item/ToolSpeedpowderAxe.java b/src/main/java/de/jottyfan/minecraft/item/ToolSpeedpowderAxe.java deleted file mode 100644 index d32db79..0000000 --- a/src/main/java/de/jottyfan/minecraft/item/ToolSpeedpowderAxe.java +++ /dev/null @@ -1,26 +0,0 @@ -package de.jottyfan.minecraft.item; - -import net.minecraft.tags.BlockTags; -import net.minecraft.tags.ItemTags; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.ToolMaterial; - -/** - * - * @author jotty - * - */ -public class ToolSpeedpowderAxe extends ToolRangeableAxe { - - private final static ToolMaterial MATERIAL = new ToolMaterial(BlockTags.INCORRECT_FOR_DIAMOND_TOOL, 800, 7f, 1f, 15, ItemTags.DIAMOND_TOOL_MATERIALS); - - public ToolSpeedpowderAxe(Properties properties) { - super(MATERIAL, 7f, -3.1f, properties); - } - - @Override - public HarvestRange getRange(ItemStack stack) { - // TODO: get the range from the stack - return new HarvestRange(32, 64, 32); - } -} diff --git a/src/main/resources/data/quickly/recipe/shaped_blockstacker.json b/src/main/resources/data/quickly/recipe/shaped_blockstacker.json index 7f6ff4d..86a0988 100644 --- a/src/main/resources/data/quickly/recipe/shaped_blockstacker.json +++ b/src/main/resources/data/quickly/recipe/shaped_blockstacker.json @@ -6,7 +6,7 @@ " s " ], "key": { - "s": "quickky:speedingot", + "s": "quickly:speedingot", "c": [ "minecraft:chest", "minecraft:barrel"