From fa63d6e5309d7ce6f44bf501b0b571c4ba97d0e5 Mon Sep 17 00:00:00 2001 From: Matthew Czyr Date: Sun, 17 Nov 2024 14:36:28 -0500 Subject: [PATCH] Update to Forge 1.21.3 --- CHANGELOG.md | 15 +++++++++++++++ gradle.properties | 10 +++++----- .../naturescompass/gui/BiomeSearchList.java | 2 +- .../naturescompass/items/NaturesCompassItem.java | 11 +++++++---- .../naturescompass/util/BiomeSearchWorker.java | 2 +- .../naturescompass/util/BiomeUtils.java | 12 ++++++------ src/main/resources/META-INF/mods.toml | 8 ++++---- .../naturescompass/recipe/natures_compass.json | 12 +++--------- 8 files changed, 42 insertions(+), 30 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3e9ef26..4aaecaa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,18 @@ +## Version 3.0.4 +#### NeoForge 1.21.3 +- Updated to NeoForge 1.21.3 +- Fixed compass also performing offhand item action after opening GUI + +## Version 2.2.8 +#### Fabric 1.21.3 +- Updated to Fabric 1.21.3 +- Fixed compass also performing offhand item action after opening GUI + +## Version 1.11.8 +#### Forge 1.21.3 +- Updated to Forge 1.21.3 +- Fixed compass also performing offhand item action after opening GUI + ## Version 2.2.7 #### Fabric 1.21.1 - Fixed uncraftable Nature's Compass recipe diff --git a/gradle.properties b/gradle.properties index 8775c2d..9edd3e8 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,13 +7,13 @@ org.gradle.daemon=false ## Environment Properties # The Minecraft version must agree with the Forge version to get a valid artifact -minecraft_version=1.21.1 +minecraft_version=1.21.3 # The Minecraft version range can use any release version of Minecraft as bounds. # Snapshots, pre-releases, and release candidates are not guaranteed to sort properly # as they do not follow standard versioning conventions. -minecraft_version_range=[1.21.1,1.22) +minecraft_version_range=[1.21.3,1.22) # The Forge version must agree with the Minecraft version to get a valid artifact -forge_version=52.0.4 +forge_version=53.0.19 # The Forge version range can use any version of Forge as bounds or match the loader version range forge_version_range=[0,) # The loader version range can only use the major version of Forge/FML as bounds @@ -35,7 +35,7 @@ loader_version_range=[0,) mapping_channel=official # The mapping version to query from the mapping channel. # This must match the format required by the mapping channel. -mapping_version=1.21.1 +mapping_version=1.21.3 ## Mod Properties @@ -48,7 +48,7 @@ mod_name=Nature's Compass # The license of the mod. Review your options at https://choosealicense.com/. All Rights Reserved is the default. mod_license=CC BY-NC-SA 4.0 # The mod version. See https://semver.org/ -mod_version=1.21.1-1.11.7-forge +mod_version=1.21.3-1.11.8-forge # The group ID for the mod. It is only important when publishing as an artifact to a Maven repository. # This should match the base package used for the mod sources. # See https://maven.apache.org/guides/mini/guide-naming-conventions.html diff --git a/src/main/java/com/chaosthedude/naturescompass/gui/BiomeSearchList.java b/src/main/java/com/chaosthedude/naturescompass/gui/BiomeSearchList.java index 7c84b04..cb0fb21 100644 --- a/src/main/java/com/chaosthedude/naturescompass/gui/BiomeSearchList.java +++ b/src/main/java/com/chaosthedude/naturescompass/gui/BiomeSearchList.java @@ -81,7 +81,7 @@ protected void enableScissor(GuiGraphics guiGraphics) { } @Override - protected int getRowBottom(int itemIndex) { + public int getRowBottom(int itemIndex) { return getRowTop(itemIndex) + itemHeight; } diff --git a/src/main/java/com/chaosthedude/naturescompass/items/NaturesCompassItem.java b/src/main/java/com/chaosthedude/naturescompass/items/NaturesCompassItem.java index 4faf9ba..3eee764 100644 --- a/src/main/java/com/chaosthedude/naturescompass/items/NaturesCompassItem.java +++ b/src/main/java/com/chaosthedude/naturescompass/items/NaturesCompassItem.java @@ -14,12 +14,13 @@ import com.chaosthedude.naturescompass.util.PlayerUtils; import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; -import net.minecraft.world.InteractionResultHolder; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; @@ -31,14 +32,16 @@ public class NaturesCompassItem extends Item { public static final String NAME = "naturescompass"; + public static final ResourceKey KEY = ResourceKey.create(BuiltInRegistries.ITEM.key(), ResourceLocation.fromNamespaceAndPath(NaturesCompass.MODID, NAME)); + private BiomeSearchWorker worker; public NaturesCompassItem() { - super(new Properties().stacksTo(1)); + super(new Properties().setId(KEY).stacksTo(1)); } @Override - public InteractionResultHolder use(Level level, Player player, InteractionHand hand) { + public InteractionResult use(Level level, Player player, InteractionHand hand) { if (!player.isCrouching()) { if (level.isClientSide()) { final ItemStack stack = ItemUtils.getHeldNatureCompass(player); @@ -58,7 +61,7 @@ public InteractionResultHolder use(Level level, Player player, Intera setState(player.getItemInHand(hand), null, CompassState.INACTIVE, player); } - return new InteractionResultHolder(InteractionResult.PASS, player.getItemInHand(hand)); + return InteractionResult.CONSUME; } @Override diff --git a/src/main/java/com/chaosthedude/naturescompass/util/BiomeSearchWorker.java b/src/main/java/com/chaosthedude/naturescompass/util/BiomeSearchWorker.java index abcd8d7..efa2add 100644 --- a/src/main/java/com/chaosthedude/naturescompass/util/BiomeSearchWorker.java +++ b/src/main/java/com/chaosthedude/naturescompass/util/BiomeSearchWorker.java @@ -44,7 +44,7 @@ public BiomeSearchWorker(ServerLevel level, Player player, ItemStack stack, Biom this.startPos = startPos; x = startPos.getX(); z = startPos.getZ(); - yValues = Mth.outFromOrigin(startPos.getY(), level.getMinBuildHeight() + 1, level.getMaxBuildHeight(), 64).toArray(); + yValues = Mth.outFromOrigin(startPos.getY(), level.getMinY() + 1, level.getMaxY(), 64).toArray(); sampleSpace = ConfigHandler.GENERAL.sampleSpaceModifier.get() * BiomeUtils.getBiomeSize(level); maxSamples = ConfigHandler.GENERAL.maxSamples.get(); maxRadius = ConfigHandler.GENERAL.radiusModifier.get() * BiomeUtils.getBiomeSize(level); diff --git a/src/main/java/com/chaosthedude/naturescompass/util/BiomeUtils.java b/src/main/java/com/chaosthedude/naturescompass/util/BiomeUtils.java index f1de827..03b8540 100644 --- a/src/main/java/com/chaosthedude/naturescompass/util/BiomeUtils.java +++ b/src/main/java/com/chaosthedude/naturescompass/util/BiomeUtils.java @@ -37,7 +37,7 @@ public class BiomeUtils { public static Optional> getBiomeRegistry(Level level) { - return level.registryAccess().registry(ForgeRegistries.Keys.BIOMES); + return level.registryAccess().lookup(ForgeRegistries.Keys.BIOMES); } public static Optional getKeyForBiome(Level level, Biome biome) { @@ -70,7 +70,7 @@ public static List getGeneratingDimensionKeys(ServerLevel serv final Registry biomeRegistry = getBiomeRegistry(serverLevel).get(); for (ServerLevel level : serverLevel.getServer().getAllLevels()) { Set> biomeSet = level.getChunkSource().getGenerator().getBiomeSource().possibleBiomes(); - Holder biomeHolder = biomeRegistry.getHolder(biomeRegistry.getResourceKey(biome).get()).get(); + Holder biomeHolder = biomeRegistry.wrapAsHolder(biome); if (biomeSet.contains(biomeHolder)) { dimensions.add(level.dimension().location()); } @@ -111,8 +111,8 @@ public static String getBiomeTags(Level level, Biome biome) { Set biomeCategories = new TreeSet(); if (getBiomeRegistry(level).isPresent()) { Registry biomeRegistry = getBiomeRegistry(level).get(); - if (biomeRegistry.getResourceKey(biome).isPresent() && biomeRegistry.getHolder(biomeRegistry.getResourceKey(biome).get()).isPresent()) { - Holder biomeHolder = biomeRegistry.getHolder(biomeRegistry.getResourceKey(biome).get()).get(); + if (biomeRegistry.wrapAsHolder(biome) != null) { + Holder biomeHolder = biomeRegistry.wrapAsHolder(biome); // Extremely hacky way of extracting a biome's categories from its tags List> categoryTags = biomeHolder.getTagKeys().filter(tag -> tag.location().getPath().startsWith("is_")).collect(Collectors.toList()); for (TagKey tag : categoryTags) { @@ -238,8 +238,8 @@ public static boolean biomeKeyIsHidden(Level level, ResourceLocation biomeKey) { if (getBiomeRegistry(level).isPresent() && getBiomeForKey(level, biomeKey).isPresent()) { final Registry biomeRegistry = getBiomeRegistry(level).get(); final Biome biome = getBiomeForKey(level, biomeKey).get(); - if (biomeRegistry.getResourceKey(biome).isPresent() && biomeRegistry.getHolder(biomeRegistry.getResourceKey(biome).get()).isPresent()) { - final Holder biomeHolder = biomeRegistry.getHolder(biomeRegistry.getResourceKey(biome).get()).get(); + if (biomeRegistry.wrapAsHolder(biome) != null) { + final Holder biomeHolder = biomeRegistry.wrapAsHolder(biome); return biomeHolder.tags().anyMatch(tag -> tag.location().getPath().equals("c:hidden_from_locator_selection")); } } diff --git a/src/main/resources/META-INF/mods.toml b/src/main/resources/META-INF/mods.toml index 85b26dc..9c077ae 100644 --- a/src/main/resources/META-INF/mods.toml +++ b/src/main/resources/META-INF/mods.toml @@ -1,11 +1,11 @@ modLoader="javafml" -loaderVersion="[52,)" +loaderVersion="[53,)" issueTrackerURL="https://github.com/MattCzyr/NaturesCompass/issues" license="CC BY-NC-SA 4.0" [[mods]] modId="naturescompass" - version="1.21.1-1.11.7-forge" + version="1.21.3-1.11.8-forge" displayName="Nature's Compass" displayURL="https://github.com/MattCzyr/NaturesCompass" authors="ChaosTheDude" @@ -16,12 +16,12 @@ license="CC BY-NC-SA 4.0" [[dependencies.naturescompass]] modId="forge" mandatory=true - versionRange="[52,)" + versionRange="[53,)" ordering="NONE" side="BOTH" [[dependencies.naturescompass]] modId="minecraft" mandatory=true - versionRange="[1.21.1,)" + versionRange="[1.21.3,)" ordering="NONE" side="BOTH" diff --git a/src/main/resources/data/naturescompass/recipe/natures_compass.json b/src/main/resources/data/naturescompass/recipe/natures_compass.json index 08681f5..f934a5e 100644 --- a/src/main/resources/data/naturescompass/recipe/natures_compass.json +++ b/src/main/resources/data/naturescompass/recipe/natures_compass.json @@ -7,15 +7,9 @@ "SLS" ], "key": { - "S": { - "tag": "saplings" - }, - "L":{ - "tag": "logs" - }, - "C":{ - "item": "minecraft:compass" - } + "S": "#saplings", + "L": "#logs", + "C": "minecraft:compass" }, "result": { "id": "naturescompass:naturescompass"