From a0d827fa3bcce9229ed910dbe338ac39f03a16df Mon Sep 17 00:00:00 2001 From: Jose Date: Sun, 19 Dec 2021 01:54:47 +0100 Subject: [PATCH] TR ores fixes (#2654). Thanks to josilo * Remove deprecated breakByTool() function. Closes #2609 * Removed leftover unused imports * Set correct BlockSoundGroup for deepslate ores * Fix tin tool tag --- src/main/java/techreborn/init/TRContent.java | 65 +++++++++---------- .../tags/blocks/needs_iron_tool.json | 4 +- .../tags/blocks/needs_stone_tool.json | 7 ++ 3 files changed, 39 insertions(+), 37 deletions(-) create mode 100644 src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json diff --git a/src/main/java/techreborn/init/TRContent.java b/src/main/java/techreborn/init/TRContent.java index d9c0c61a4..cc08ebcf6 100644 --- a/src/main/java/techreborn/init/TRContent.java +++ b/src/main/java/techreborn/init/TRContent.java @@ -26,7 +26,6 @@ package techreborn.init; import com.google.common.base.Preconditions; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; -import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags; import net.minecraft.block.*; import net.minecraft.entity.EntityType; import net.minecraft.item.Item; @@ -80,7 +79,6 @@ import techreborn.entities.EntityNukePrimed; import techreborn.items.DynamicCellItem; import techreborn.items.UpgradeItem; import techreborn.items.armor.QuantumSuitItem; -import techreborn.items.tool.MiningLevel; import techreborn.utils.InitUtils; import techreborn.world.OreDistribution; @@ -376,45 +374,44 @@ public class TRContent { private final static Map deepslateMap = new HashMap<>(); public enum Ores implements ItemConvertible { - BAUXITE(MiningLevel.IRON, OreDistribution.BAUXITE), - CINNABAR(MiningLevel.IRON, OreDistribution.CINNABAR), - GALENA(MiningLevel.IRON, OreDistribution.GALENA), - IRIDIUM(MiningLevel.DIAMOND, OreDistribution.IRIDIUM), - LEAD(MiningLevel.IRON, OreDistribution.LEAD), - PERIDOT(MiningLevel.DIAMOND, OreDistribution.PERIDOT), - PYRITE(MiningLevel.DIAMOND, OreDistribution.PYRITE), - RUBY(MiningLevel.IRON, OreDistribution.RUBY), - SAPPHIRE(MiningLevel.IRON, OreDistribution.SAPPHIRE), - SHELDONITE(MiningLevel.DIAMOND, OreDistribution.SHELDONITE), - SILVER(MiningLevel.IRON, OreDistribution.SILVER), - SODALITE(MiningLevel.DIAMOND, OreDistribution.SODALITE), - SPHALERITE(MiningLevel.IRON, OreDistribution.SPHALERITE), - TIN(MiningLevel.STONE, OreDistribution.TIN), - TUNGSTEN(MiningLevel.DIAMOND, OreDistribution.TUNGSTEN), + BAUXITE(OreDistribution.BAUXITE), + CINNABAR(OreDistribution.CINNABAR), + GALENA(OreDistribution.GALENA), + IRIDIUM(OreDistribution.IRIDIUM), + LEAD(OreDistribution.LEAD), + PERIDOT(OreDistribution.PERIDOT), + PYRITE(OreDistribution.PYRITE), + RUBY(OreDistribution.RUBY), + SAPPHIRE(OreDistribution.SAPPHIRE), + SHELDONITE(OreDistribution.SHELDONITE), + SILVER(OreDistribution.SILVER), + SODALITE(OreDistribution.SODALITE), + SPHALERITE(OreDistribution.SPHALERITE), + TIN(OreDistribution.TIN), + TUNGSTEN(OreDistribution.TUNGSTEN), - DEEPSLATE_BAUXITE(BAUXITE, MiningLevel.IRON), - DEEPSLATE_GALENA(GALENA, MiningLevel.IRON), - DEEPSLATE_IRIDIUM(IRIDIUM, MiningLevel.DIAMOND), - DEEPSLATE_LEAD(LEAD, MiningLevel.IRON), - DEEPSLATE_PERIDOT(PERIDOT, MiningLevel.DIAMOND), - DEEPSLATE_RUBY(RUBY, MiningLevel.IRON), - DEEPSLATE_SAPPHIRE(SAPPHIRE, MiningLevel.IRON), - DEEPSLATE_SHELDONITE(SHELDONITE, MiningLevel.DIAMOND), - DEEPSLATE_SILVER(SILVER, MiningLevel.IRON), - DEEPSLATE_SODALITE(SODALITE, MiningLevel.DIAMOND), - DEEPSLATE_TIN(TIN, MiningLevel.STONE), - DEEPSLATE_TUNGSTEN(TUNGSTEN, MiningLevel.DIAMOND); + DEEPSLATE_BAUXITE(BAUXITE), + DEEPSLATE_GALENA(GALENA), + DEEPSLATE_IRIDIUM(IRIDIUM), + DEEPSLATE_LEAD(LEAD), + DEEPSLATE_PERIDOT(PERIDOT), + DEEPSLATE_RUBY(RUBY), + DEEPSLATE_SAPPHIRE(SAPPHIRE), + DEEPSLATE_SHELDONITE(SHELDONITE), + DEEPSLATE_SILVER(SILVER), + DEEPSLATE_SODALITE(SODALITE), + DEEPSLATE_TIN(TIN), + DEEPSLATE_TUNGSTEN(TUNGSTEN); public final String name; public final Block block; public final OreDistribution distribution; - Ores(MiningLevel miningLevel, OreDistribution distribution) { + Ores(OreDistribution distribution) { name = this.toString().toLowerCase(Locale.ROOT); block = new OreBlock(FabricBlockSettings.of(Material.STONE) - .breakByTool(FabricToolTags.PICKAXES, miningLevel.intLevel) .requiresTool() - .sounds(BlockSoundGroup.STONE) + .sounds(name.startsWith("deepslate") ? BlockSoundGroup.DEEPSLATE : BlockSoundGroup.STONE) .strength(2f, 2f) ); @@ -422,8 +419,8 @@ public class TRContent { this.distribution = distribution; } - Ores(TRContent.Ores stoneOre, MiningLevel miningLevel) { - this(miningLevel, null); + Ores(TRContent.Ores stoneOre) { + this((OreDistribution) null); deepslateMap.put(stoneOre, this); } diff --git a/src/main/resources/data/minecraft/tags/blocks/needs_iron_tool.json b/src/main/resources/data/minecraft/tags/blocks/needs_iron_tool.json index bccbb6311..ac2f5f3ad 100644 --- a/src/main/resources/data/minecraft/tags/blocks/needs_iron_tool.json +++ b/src/main/resources/data/minecraft/tags/blocks/needs_iron_tool.json @@ -17,8 +17,6 @@ "techreborn:deepslate_sapphire_ore", "techreborn:silver_ore", "techreborn:deepslate_silver_ore", - "techreborn:sphalerite_ore", - "techreborn:tin_ore", - "techreborn:deepslate_tin_ore" + "techreborn:sphalerite_ore" ] } \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json b/src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json new file mode 100644 index 000000000..18dc371e4 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json @@ -0,0 +1,7 @@ +{ + "replace": false, + "values": [ + "techreborn:tin_ore", + "techreborn:deepslate_tin_ore" + ] +} \ No newline at end of file