Skip to content

Commit

Permalink
3.5 Update
Browse files Browse the repository at this point in the history
- Added Copper, Amethyst and Netherite Exchangers

- Made Golden, Iron and Copper Exchangers to be the same tier and all 3 of them can be used to upgrade to the Diamond Exchanger

- Slightly nerfed Obsidian Exchanger

- Removed Netherite ingots from Obsidian Exchanger recipe

- Removed leftover code for Better With Mods integration as it is very unlikely to be ported for newer versions of MC

- Added translations for Traditional Chinese (Hong Kong and Taiwan)

- Updated textures for all of the Vanilla Exchangers
  • Loading branch information
JackyyTV committed Jul 17, 2023
1 parent 819eb67 commit 40e9548
Show file tree
Hide file tree
Showing 55 changed files with 916 additions and 93 deletions.
10 changes: 5 additions & 5 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -58,17 +58,17 @@ minecraft {
sourceSets.main.resources { srcDir 'src/generated/resources' }

repositories {
maven {
name = 'ModMaven'
url = 'https://modmaven.dev'
}
maven {
name = 'JEI Maven'
url = 'https://dvs1.progwml6.com/files/maven'
content {
includeGroup 'mezz.jei'
}
}
maven {
name = "ModMaven"
url = "https://modmaven.dev"
}
maven {
name = 'Curse Maven'
url = 'https://www.cursemaven.com'
Expand All @@ -87,7 +87,7 @@ dependencies {

implementation fg.deobf("curse.maven:gunpowderlib-356646:4573505") //1.20-2.2

runtimeOnly fg.deobf("curse.maven:ender_io-64578:4631517") //6.0.3-alpha
runtimeOnly fg.deobf("curse.maven:ender_io-64578:4637542") //6.0.5-alpha
//runtimeOnly fg.deobf("curse.maven:mekanism-268560:")
//runtimeOnly fg.deobf("curse.maven:immersive_engineering-231951:")
//runtimeOnly fg.deobf("curse.maven:cofh_core-69162:")
Expand Down
4 changes: 2 additions & 2 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ mod_name=Exchangers
mc_version=1.20.1
mc_version_range=[1.20,1.21)

forge_version=47.1.0
forge_version=47.1.28
forge_version_range=[46,)
loader_version_range=[46,)

mappings_channel=official
mappings_version=1.20.1

mod_version=3.4.1
mod_version=3.5
mod_license=Jacky's Minecraft Mods License
mod_authors=Jackyy, TurkeyDev
mod_description=Block Exchangers.
6 changes: 0 additions & 6 deletions src/main/java/jackyy/exchangers/Exchangers.java
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,6 @@ public Exchangers() {
}

private void commonSetup(final FMLCommonSetupEvent event) {
/*
TODO add Better With Mods integration back when possible
if (ModList.get().isLoaded(Reference.BWM)) {
MinecraftForge.EVENT_BUS.register(new BetterWithModsIntegration());
}
*/
MinecraftForge.EVENT_BUS.register(new CommonEventsHandler());
NetworkHandler.registerMessages();
}
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
package jackyy.exchangers.item.vanilla;

import jackyy.exchangers.item.ItemExchangerBase;
import jackyy.exchangers.registry.ModConfigs;
import jackyy.exchangers.util.DefaultValues;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Rarity;
import net.minecraftforge.common.Tags;

public class ItemAmethystExchanger extends ItemExchangerBase {

public ItemAmethystExchanger() {
super(new Properties().durability(DefaultValues.amethystMaxDmg).rarity(Rarity.EPIC));
}

@Override
public String getHarvestLevel() {
return ModConfigs.CONFIG.amethystMaxHarvestLevel.get();
}

@Override
public String getDefaultHarvestLevel() {
return DefaultValues.amethystMaxHarvestLevel;
}

@Override
public int getMaxRange() {
return ModConfigs.CONFIG.amethystMaxRange.get();
}

@Override
public int getTier() {
return 7;
}

@Override
public boolean checkLoaded() {
return ModConfigs.CONFIG.vanillaModule.get();
}

@Override
public boolean isValidRepairItem(ItemStack toRepair, ItemStack repair) {
return repair.is(Tags.Items.GEMS_AMETHYST);
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
package jackyy.exchangers.item.vanilla;

import jackyy.exchangers.item.ItemExchangerBase;
import jackyy.exchangers.registry.ModConfigs;
import jackyy.exchangers.util.DefaultValues;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Rarity;
import net.minecraftforge.common.Tags;

public class ItemCopperExchanger extends ItemExchangerBase {

public ItemCopperExchanger() {
super(new Properties().durability(DefaultValues.copperMaxDmg).rarity(Rarity.RARE));
}

@Override
public String getHarvestLevel() {
return ModConfigs.CONFIG.copperMaxHarvestLevel.get();
}

@Override
public String getDefaultHarvestLevel() {
return DefaultValues.copperMaxHarvestLevel;
}

@Override
public int getMaxRange() {
return ModConfigs.CONFIG.copperMaxRange.get();
}

@Override
public int getTier() {
return 3;
}

@Override
public boolean checkLoaded() {
return ModConfigs.CONFIG.vanillaModule.get();
}

@Override
public boolean isValidRepairItem(ItemStack toRepair, ItemStack repair) {
return repair.is(Tags.Items.INGOTS_COPPER);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ public int getMaxRange() {

@Override
public int getTier() {
return 5;
return 4;
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ public int getMaxRange() {

@Override
public int getTier() {
return 6;
return 5;
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ public int getMaxRange() {

@Override
public int getTier() {
return 8;
return 9;
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ public int getMaxRange() {

@Override
public int getTier() {
return 4;
return 3;
}

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
package jackyy.exchangers.item.vanilla;

import jackyy.exchangers.item.ItemExchangerBase;
import jackyy.exchangers.registry.ModConfigs;
import jackyy.exchangers.util.DefaultValues;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Rarity;
import net.minecraftforge.common.Tags;

public class ItemNetheriteExchanger extends ItemExchangerBase {

public ItemNetheriteExchanger() {
super(new Properties().durability(DefaultValues.netheriteMaxDmg).rarity(Rarity.EPIC));
}

@Override
public String getHarvestLevel() {
return ModConfigs.CONFIG.netheriteMaxHarvestLevel.get();
}

@Override
public String getDefaultHarvestLevel() {
return DefaultValues.netheriteMaxHarvestLevel;
}

@Override
public int getMaxRange() {
return ModConfigs.CONFIG.netheriteMaxRange.get();
}

@Override
public int getTier() {
return 8;
}

@Override
public boolean checkLoaded() {
return ModConfigs.CONFIG.vanillaModule.get();
}

@Override
public boolean isValidRepairItem(ItemStack toRepair, ItemStack repair) {
return repair.is(Tags.Items.INGOTS_NETHERITE);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ public int getMaxRange() {

@Override
public int getTier() {
return 7;
return 6;
}

@Override
Expand Down
42 changes: 42 additions & 0 deletions src/main/java/jackyy/exchangers/registry/ModConfigs.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,18 @@ public static class CommonConfig {
public final ForgeConfigSpec.IntValue goldenMaxRange;
public final ForgeConfigSpec.ConfigValue<? extends String> ironMaxHarvestLevel;
public final ForgeConfigSpec.IntValue ironMaxRange;
public final ForgeConfigSpec.ConfigValue<? extends String> copperMaxHarvestLevel;
public final ForgeConfigSpec.IntValue copperMaxRange;
public final ForgeConfigSpec.ConfigValue<? extends String> diamondMaxHarvestLevel;
public final ForgeConfigSpec.IntValue diamondMaxRange;
public final ForgeConfigSpec.ConfigValue<? extends String> emeraldMaxHarvestLevel;
public final ForgeConfigSpec.IntValue emeraldMaxRange;
public final ForgeConfigSpec.ConfigValue<? extends String> obsidianMaxHarvestLevel;
public final ForgeConfigSpec.IntValue obsidianMaxRange;
public final ForgeConfigSpec.ConfigValue<? extends String> amethystMaxHarvestLevel;
public final ForgeConfigSpec.IntValue amethystMaxRange;
public final ForgeConfigSpec.ConfigValue<? extends String> netheriteMaxHarvestLevel;
public final ForgeConfigSpec.IntValue netheriteMaxRange;
public final ForgeConfigSpec.ConfigValue<? extends String> endMaxHarvestLevel;
public final ForgeConfigSpec.IntValue endMaxRange;

Expand Down Expand Up @@ -229,6 +235,18 @@ public static class CommonConfig {
.comment("Set the max range for Iron Exchanger")
.defineInRange("ironExchangerMaxRange", DefaultValues.ironMaxRange, 0, 12);

copperMaxHarvestLevel = builder
.comment(
"Set the max harvest level for Copper Exchanger",
"Valid Vanilla values are: minecraft:wood, minecraft:stone, minecraft:iron, minecraft:diamond, minecraft:netherite",
"For modded values, please check the tool tiers for the mod that you want to use",
"Entering an incorrect value will result in the Exchanger using the default value to prevent crashes"
)
.define("copperExchangerMaxHarvestLevel", DefaultValues.copperMaxHarvestLevel);
copperMaxRange = builder
.comment("Set the max range for Copper Exchanger")
.defineInRange("copperExchangerMaxRange", DefaultValues.copperMaxRange, 0, 12);

diamondMaxHarvestLevel = builder
.comment(
"Set the max harvest level for Diamond Exchanger",
Expand Down Expand Up @@ -265,6 +283,30 @@ public static class CommonConfig {
.comment("Set the max range for Obsidian Exchanger")
.defineInRange("obsidianExchangerMaxRange", DefaultValues.obsidianMaxRange, 0, 12);

amethystMaxHarvestLevel = builder
.comment(
"Set the max harvest level for Amethyst Exchanger",
"Valid Vanilla values are: minecraft:wood, minecraft:stone, minecraft:iron, minecraft:diamond, minecraft:netherite",
"For modded values, please check the tool tiers for the mod that you want to use",
"Entering an incorrect value will result in the Exchanger using the default value to prevent crashes"
)
.define("amethystExchangerMaxHarvestLevel", DefaultValues.amethystMaxHarvestLevel);
amethystMaxRange = builder
.comment("Set the max range for Amethyst Exchanger")
.defineInRange("amethystExchangerMaxRange", DefaultValues.amethystMaxRange, 0, 12);

netheriteMaxHarvestLevel = builder
.comment(
"Set the max harvest level for Netherite Exchanger",
"Valid Vanilla values are: minecraft:wood, minecraft:stone, minecraft:iron, minecraft:diamond, minecraft:netherite",
"For modded values, please check the tool tiers for the mod that you want to use",
"Entering an incorrect value will result in the Exchanger using the default value to prevent crashes"
)
.define("netheriteExchangerMaxHarvestLevel", DefaultValues.netheriteMaxHarvestLevel);
netheriteMaxRange = builder
.comment("Set the max range for Netherite Exchanger")
.defineInRange("netheriteExchangerMaxRange", DefaultValues.netheriteMaxRange, 0, 12);

endMaxHarvestLevel = builder
.comment(
"Set the max harvest level for End Exchanger",
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/jackyy/exchangers/registry/ModItems.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,12 @@ public class ModItems {
public static final RegistryObject<Item> STONE_EXCHANGER = ITEMS.register("stone_exchanger", ItemStoneExchanger::new);
public static final RegistryObject<Item> GOLDEN_EXCHANGER = ITEMS.register("golden_exchanger", ItemGoldenExchanger::new);
public static final RegistryObject<Item> IRON_EXCHANGER = ITEMS.register("iron_exchanger", ItemIronExchanger::new);
public static final RegistryObject<Item> COPPER_EXCHANGER = ITEMS.register("copper_exchanger", ItemCopperExchanger::new);
public static final RegistryObject<Item> DIAMOND_EXCHANGER = ITEMS.register("diamond_exchanger", ItemDiamondExchanger::new);
public static final RegistryObject<Item> EMERALD_EXCHANGER = ITEMS.register("emerald_exchanger", ItemEmeraldExchanger::new);
public static final RegistryObject<Item> OBSIDIAN_EXCHANGER = ITEMS.register("obsidian_exchanger", ItemObsidianExchanger::new);
public static final RegistryObject<Item> AMETHYST_EXCHANGER = ITEMS.register("amethyst_exchanger", ItemAmethystExchanger::new);
public static final RegistryObject<Item> NETHERITE_EXCHANGER = ITEMS.register("netherite_exchanger", ItemNetheriteExchanger::new);
public static final RegistryObject<Item> END_EXCHANGER = ITEMS.register("end_exchanger", ItemEndExchanger::new);
public static final RegistryObject<Item> EXCHANGER_CORE_TIER1 = ITEMS.register("exchanger_core_tier1", ItemExchangerCoreT1::new);
public static final RegistryObject<Item> EXCHANGER_CORE_TIER2 = ITEMS.register("exchanger_core_tier2", ItemExchangerCoreT2::new);
Expand Down
13 changes: 11 additions & 2 deletions src/main/java/jackyy/exchangers/util/DefaultValues.java
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,24 @@ public final class DefaultValues {
public static int ironMaxDmg = 1024;
public static String ironMaxHarvestLevel = "minecraft:iron";
public static int ironMaxRange = 3;
public static int copperMaxDmg = 1024;
public static String copperMaxHarvestLevel = "minecraft:iron";
public static int copperMaxRange = 3;
public static int diamondMaxDmg = 4096;
public static String diamondMaxHarvestLevel = "minecraft:diamond";
public static int diamondMaxRange = 4;
public static int emeraldMaxDmg = 8192;
public static String emeraldMaxHarvestLevel = "minecraft:diamond";
public static int emeraldMaxRange = 5;
public static int obsidianMaxDmg = 16384;
public static String obsidianMaxHarvestLevel = "minecraft:netherite";
public static int obsidianMaxDmg = 10240;
public static String obsidianMaxHarvestLevel = "minecraft:diamond";
public static int obsidianMaxRange = 6;
public static int amethystMaxDmg = 12288;
public static String amethystMaxHarvestLevel = "minecraft:diamond";
public static int amethystMaxRange = 6;
public static int netheriteMaxDmg = 16384;
public static String netheriteMaxHarvestLevel = "minecraft:netherite";
public static int netheriteMaxRange = 7;
public static int endMaxDmg = 32768;
public static String endMaxHarvestLevel = "minecraft:netherite";
public static int endMaxRange = 7;
Expand Down
Loading

0 comments on commit 40e9548

Please sign in to comment.