From ef3f46cf4db9bda97529de32a805c8015ad40452 Mon Sep 17 00:00:00 2001 From: Minepolz320 <42765118+Minepolz320@users.noreply.github.com> Date: Sun, 28 Jan 2024 01:45:22 +0500 Subject: GT Tool Fixes and ore balance config (#2453) * Fixes/balance config Fixes that the ax and saw do not break ladders - ability to toggle ore multipliers for ore Nether and End - sneaking with a scythe/plow allows you to break only 1 block * Fix copy paste typo * Revert "Allow tools to break stuff with a lower harvest level (#2435)" This reverts commit ba1a9b290a09e39b100ff8d9f1f5e70cdc3f0fab. --- .../loaders/oreprocessing/ProcessingOre.java | 22 +++++++++++++++++----- .../java/gregtech/loaders/preload/GT_PreLoad.java | 6 ++++++ 2 files changed, 23 insertions(+), 5 deletions(-) (limited to 'src/main/java/gregtech/loaders') diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java index 40bfc41223..945ffae386 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingOre.java @@ -11,6 +11,7 @@ import java.util.ArrayList; import net.minecraft.item.ItemStack; +import gregtech.GT_Mod; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; @@ -35,11 +36,22 @@ public class ProcessingOre implements gregtech.api.interfaces.IOreRecipeRegistra @Override public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) { - boolean tIsRich = (aPrefix == OrePrefixes.oreNetherrack) || (aPrefix == OrePrefixes.oreNether) - || (aPrefix == OrePrefixes.oreEndstone) - || (aPrefix == OrePrefixes.oreEnd) - || (aPrefix == OrePrefixes.oreRich) - || (aPrefix == OrePrefixes.oreDense); + boolean tIsRich = false; + + // For Sake of god of balance! + + // Dense ore + if (GT_Mod.gregtechproxy.mRichOreYieldMultiplier) { + tIsRich = (aPrefix == OrePrefixes.oreRich) || (aPrefix == OrePrefixes.oreDense); + } + // NetherOre + if (GT_Mod.gregtechproxy.mNetherOreYieldMultiplier && !tIsRich) { + tIsRich = (aPrefix == OrePrefixes.oreNetherrack) || (aPrefix == OrePrefixes.oreNether); + } + // EndOre + if (GT_Mod.gregtechproxy.mEndOreYieldMultiplier && !tIsRich) { + tIsRich = (aPrefix == OrePrefixes.oreEndstone) || (aPrefix == OrePrefixes.oreEnd); + } if (aMaterial == Materials.Oilsands) { GT_Values.RA.stdBuilder() diff --git a/src/main/java/gregtech/loaders/preload/GT_PreLoad.java b/src/main/java/gregtech/loaders/preload/GT_PreLoad.java index 823f1b9ef9..42bf79a102 100644 --- a/src/main/java/gregtech/loaders/preload/GT_PreLoad.java +++ b/src/main/java/gregtech/loaders/preload/GT_PreLoad.java @@ -707,6 +707,12 @@ public class GT_PreLoad { GT_Mod.gregtechproxy.mMixedOreOnlyYieldsTwoThirdsOfPureOre = tMainConfig .get("general", "MixedOreOnlyYieldsTwoThirdsOfPureOre", false) .getBoolean(false); + GT_Mod.gregtechproxy.mRichOreYieldMultiplier = tMainConfig.get("general", "RichOreYieldMultiplier", true) + .getBoolean(false); + GT_Mod.gregtechproxy.mNetherOreYieldMultiplier = tMainConfig.get("general", "NetherOreYieldMultiplier", true) + .getBoolean(false); + GT_Mod.gregtechproxy.mEndOreYieldMultiplier = tMainConfig.get("general", "EndOreYieldMultiplier", true) + .getBoolean(false); GT_Mod.gregtechproxy.enableBlackGraniteOres = GregTech_API.sWorldgenFile .get("general", "enableBlackGraniteOres", GT_Mod.gregtechproxy.enableBlackGraniteOres); GT_Mod.gregtechproxy.enableRedGraniteOres = GregTech_API.sWorldgenFile -- cgit