diff --git a/build.gradle b/build.gradle index 0c6b85a..0b71259 100644 --- a/build.gradle +++ b/build.gradle @@ -14,7 +14,7 @@ dependencies implementation "net.fabricmc:fabric-loader:${project["fabric.loader_version"]}" runtimeOnly "net.fabricmc.fabric-api:fabric-api:${project["fabric.api_version"]}" - implementation("com.terraformersmc:modmenu:${project["modmenu.version"]}") { + compileOnly("com.terraformersmc:modmenu:${project["modmenu.version"]}") { exclude group: "net.fabricmc", module: "fabric-loader" //causes issues, exclude it exclude group: "net.fabricmc.fabric-api" //causes issues, exclude it } diff --git a/gradle.properties b/gradle.properties index 21f2c79..a818b6b 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,5 +1,5 @@ # Done to increase the memory available to Gradle. -org.gradle.jvmargs=-Xmx2G +org.gradle.jvmargs=-Xmx4G org.gradle.parallel=true org.gradle.warning.mode=all @@ -11,7 +11,7 @@ maven.group = com.thecsdev # Mod properties mod.id = betterstats -mod.version = 5.5.6 +mod.version = 5.6.0-beta.1 mod.name = Better Statistics Screen mod.description = A Minecraft mod that improves the statistics screen and makes it more useful. mod.author = TheCSDev @@ -26,17 +26,17 @@ mod.link.curseforge = https://thecsdev.com/fwd/betterstats-curseforge/ mod.link.modrinth = https://thecsdev.com/fwd/betterstats-modrinth/ # 'pack.mcmeta' properties -pack.format = 88 +pack.format = 97.1 # Minecraft properties -minecraft.version = 26.2 +minecraft.version = 26.3 # Third-party mod versions -modmenu.version = 20.0.0-beta.2 +modmenu.version = 21.0.0-beta.1 # Fabric properties -fabric.loader_version = 0.19.2 -fabric.api_version = 0.152.1+26.2 +fabric.loader_version = 0.19.5 +fabric.api_version = 0.160.5+26.3 # fabric.mod.json properties fabric.json.entrypoints.main = com.thecsdev.betterstats.fabric.BetterStatsFabric @@ -45,10 +45,10 @@ fabric.api_version = 0.152.1+26.2 fabric.json.entrypoints.modmenu = com.thecsdev.betterstats.fabric.client.BetterStatsModmenu fabric.json.depends.java = >=25 - fabric.json.depends.minecraft = ~26.2 - fabric.json.depends.fabricloader = >=0.18.5 + fabric.json.depends.minecraft = >=26.3- <26.4 + fabric.json.depends.fabricloader = >=0.19.5 fabric.json.depends.fabric-api = * - fabric.json.depends.tcdcommons = >=5.5.6 + fabric.json.depends.tcdcommons = >=5.6.0-beta.1 # Neo-Forge properties neoforge.version = 26.2.0.1-beta @@ -56,5 +56,5 @@ neoforge.version = 26.2.0.1-beta # neoforge.mods.toml properties net.toml.loaderVersion = [4,) neo.toml.dependencies.neoforge = [26.2.0.1-beta,) - neo.toml.dependencies.minecraft = [26.2, 26.3) - neo.toml.dependencies.tcdcommons = [5.5.6,) + neo.toml.dependencies.minecraft = [26.3-, 26.4) + neo.toml.dependencies.tcdcommons = [5.6.0-beta.1,) diff --git a/src/main/java/com/thecsdev/betterstats/api/mcbs/view/goal/McbsGoalGUI.java b/src/main/java/com/thecsdev/betterstats/api/mcbs/view/goal/McbsGoalGUI.java index df630ba..aee3053 100644 --- a/src/main/java/com/thecsdev/betterstats/api/mcbs/view/goal/McbsGoalGUI.java +++ b/src/main/java/com/thecsdev/betterstats/api/mcbs/view/goal/McbsGoalGUI.java @@ -12,6 +12,7 @@ import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.renderer.texture.MissingTextureAtlasSprite; import net.minecraft.client.renderer.texture.TextureManager; import net.minecraft.network.chat.Component; import net.minecraft.resources.Identifier; @@ -63,7 +64,7 @@ public McbsGoalGUI(@NotNull McbsGoalType type) throws NullPointerException { public @Virtual void initIcon(@Nullable T goal, @NotNull TElement onto, int preferredPadding) throws NullPointerException { - final var ico = new TTextureElement(TextureManager.INTENTIONAL_MISSING_TEXTURE); + final var ico = new TTextureElement(MissingTextureAtlasSprite.getLocation()); ico.setBounds(onto.getBounds().add( preferredPadding, preferredPadding, -preferredPadding * 2, -preferredPadding * 2)); diff --git a/src/main/java/com/thecsdev/betterstats/mcbs/view/menubar/MenubarItemAbout.java b/src/main/java/com/thecsdev/betterstats/mcbs/view/menubar/MenubarItemAbout.java index a730262..66aebbc 100644 --- a/src/main/java/com/thecsdev/betterstats/mcbs/view/menubar/MenubarItemAbout.java +++ b/src/main/java/com/thecsdev/betterstats/mcbs/view/menubar/MenubarItemAbout.java @@ -1,5 +1,6 @@ package com.thecsdev.betterstats.mcbs.view.menubar; +import com.mojang.blaze3d.Blaze3D; import com.thecsdev.betterstats.BetterStats; import com.thecsdev.betterstats.api.mcbs.controller.McbsEditor; import com.thecsdev.betterstats.api.mcbs.view.menubar.MenubarItem; @@ -12,10 +13,10 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.gui.screens.ConfirmLinkScreen; import net.minecraft.network.chat.Component; -import net.minecraft.util.Util; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.NotNull; +import java.net.URI; import java.util.Objects; import static com.thecsdev.commonmc.resource.TComponent.*; @@ -43,24 +44,24 @@ public final class MenubarItemAbout extends MenubarItem return new TContextMenu.Builder(Objects.requireNonNull(client)) .addButton( item("item/filled_map").append(" ").append(BLanguage.gui_menubar_about_sourceCode()), - __ -> showUriScreen(BetterStats.getProperty("mod.link.sources"), true)) + _ -> showUriScreen(BetterStats.getProperty("mod.link.sources"), true)) .addButton( head("MHF_Spider").append(" ").append(translatable("menu.reportBugs")), - __ -> showUriScreen(BetterStats.getProperty("mod.link.issues"), true)) + _ -> showUriScreen(BetterStats.getProperty("mod.link.issues"), true)) .addButton( item("item/paper").append(" ").append(BLanguage.gui_menubar_about_legalNotices()), - __ -> showUriScreen(BetterStats.getProperty("mod.link.legal"), true)) + _ -> showUriScreen(BetterStats.getProperty("mod.link.legal"), true)) .addSeparator() .addButton( gui(BSprites.gui_icon_faviconCf()).append(" ").append(literal("CurseForge")), - __ -> showUriScreen(BetterStats.getProperty("mod.link.curseforge"), true)) + _ -> showUriScreen(BetterStats.getProperty("mod.link.curseforge"), true)) .addButton( gui(BSprites.gui_icon_faviconMr()).append(" ").append(literal("Modrinth")), - __ -> showUriScreen(BetterStats.getProperty("mod.link.modrinth"), true)) + _ -> showUriScreen(BetterStats.getProperty("mod.link.modrinth"), true)) .addSeparator() .addButton( gui(BSprites.gui_icon_heart()).append(" ").append(BLanguage.gui_menubar_about_supportMe().withStyle(ChatFormatting.YELLOW)), - __ -> showUriScreen(BetterStats.getProperty("mod.link.support_me"), true)) + _ -> showUriScreen(BetterStats.getProperty("mod.link.support_me"), true)) .build(); } // ================================================== @@ -70,14 +71,16 @@ public final class MenubarItemAbout extends MenubarItem * @param uri The URI to show. * @param isTrusted Whether the URI is trusted. * @throws NullPointerException If the argument is {@code null}. + * @throws IllegalArgumentException If the URI string is not a valid {@link URI}. */ @ApiStatus.Internal @SuppressWarnings("SameParameterValue") public static final void showUriScreen(@NotNull String uri, boolean isTrusted) - throws NullPointerException + throws NullPointerException, IllegalArgumentException { //argument validity assertion Objects.requireNonNull(uri); + final var toUri = URI.create(uri); //obtain client variables stuff final var client = Objects.requireNonNull(Minecraft.getInstance()); @@ -85,9 +88,9 @@ public static final void showUriScreen(@NotNull String uri, boolean isTrusted) //create and set the confirmation screen final var screen = new ConfirmLinkScreen(accepted -> { - if(accepted) Util.getPlatform().openUri(uri); + if(accepted) Blaze3D.openUri(toUri); client.gui.setScreen(lastScreen); - }, uri, isTrusted); + }, toUri, isTrusted); client.gui.setScreen(screen); } // ================================================== diff --git a/src/main/java/com/thecsdev/betterstats/mcbs/view/statsview/StatsViewBlocks.java b/src/main/java/com/thecsdev/betterstats/mcbs/view/statsview/StatsViewBlocks.java index 7bc492f..2eee540 100644 --- a/src/main/java/com/thecsdev/betterstats/mcbs/view/statsview/StatsViewBlocks.java +++ b/src/main/java/com/thecsdev/betterstats/mcbs/view/statsview/StatsViewBlocks.java @@ -1,5 +1,6 @@ package com.thecsdev.betterstats.mcbs.view.statsview; +import com.mojang.blaze3d.Blaze3D; import com.thecsdev.betterstats.BetterStats; import com.thecsdev.betterstats.api.mcbs.model.goal.McbsSivGoal; import com.thecsdev.betterstats.api.mcbs.view.statsview.StatsView; @@ -24,13 +25,13 @@ import net.minecraft.resources.Identifier; import net.minecraft.server.permissions.Permissions; import net.minecraft.stats.StatType; -import net.minecraft.util.Util; import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Block; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.NotNull; +import java.net.URI; import java.util.*; import java.util.function.BiFunction; import java.util.function.Function; @@ -156,7 +157,7 @@ final var url_wiki = String.format("https://minecraft.wiki/w/%s", stats.getSubjectID().getPath()); builder.addButton( gui(BSprites.gui_icon_faviconWiki()).append(" ").append(BLanguage.gui_statsview_stats_ctxMenu_viewOnWiki()), - _ -> Util.getPlatform().openUri(url_wiki)); + _ -> Blaze3D.openUri(URI.create(url_wiki))); } //"Create goal" button diff --git a/src/main/java/com/thecsdev/betterstats/mcbs/view/statsview/StatsViewItems.java b/src/main/java/com/thecsdev/betterstats/mcbs/view/statsview/StatsViewItems.java index 607f64e..146c5ea 100644 --- a/src/main/java/com/thecsdev/betterstats/mcbs/view/statsview/StatsViewItems.java +++ b/src/main/java/com/thecsdev/betterstats/mcbs/view/statsview/StatsViewItems.java @@ -1,5 +1,6 @@ package com.thecsdev.betterstats.mcbs.view.statsview; +import com.mojang.blaze3d.Blaze3D; import com.thecsdev.betterstats.BetterStats; import com.thecsdev.betterstats.api.mcbs.model.goal.McbsSivGoal; import com.thecsdev.betterstats.api.mcbs.view.statsview.StatsView; @@ -24,12 +25,12 @@ import net.minecraft.resources.Identifier; import net.minecraft.server.permissions.Permissions; import net.minecraft.stats.StatType; -import net.minecraft.util.Util; import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.Item; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.NotNull; +import java.net.URI; import java.util.*; import java.util.function.BiFunction; import java.util.function.Function; @@ -149,7 +150,7 @@ protected StatsViewItems() {} final var url_wiki = String.format("https://minecraft.wiki/w/%s", stats.getSubjectID().getPath()); builder.addButton( gui(BSprites.gui_icon_faviconWiki()).append(" ").append(BLanguage.gui_statsview_stats_ctxMenu_viewOnWiki()), - _ -> Util.getPlatform().openUri(url_wiki)); + _ -> Blaze3D.openUri(URI.create(url_wiki))); } //"Create goal" button diff --git a/src/main/java/com/thecsdev/betterstats/mcbs/view/statsview/StatsViewMobs.java b/src/main/java/com/thecsdev/betterstats/mcbs/view/statsview/StatsViewMobs.java index 722ca52..aa1380f 100644 --- a/src/main/java/com/thecsdev/betterstats/mcbs/view/statsview/StatsViewMobs.java +++ b/src/main/java/com/thecsdev/betterstats/mcbs/view/statsview/StatsViewMobs.java @@ -1,5 +1,6 @@ package com.thecsdev.betterstats.mcbs.view.statsview; +import com.mojang.blaze3d.Blaze3D; import com.thecsdev.betterstats.BetterStats; import com.thecsdev.betterstats.api.mcbs.model.goal.McbsSivGoal; import com.thecsdev.betterstats.api.mcbs.view.statsview.StatsView; @@ -25,13 +26,13 @@ import net.minecraft.network.chat.Component; import net.minecraft.resources.Identifier; import net.minecraft.stats.StatType; -import net.minecraft.util.Util; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.MobCategory; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.net.URI; import java.util.*; import java.util.function.BiFunction; import java.util.function.Function; @@ -147,7 +148,7 @@ protected StatsViewMobs() {} final var url_wiki = String.format("https://minecraft.wiki/w/%s", stats.getSubjectID().getPath()); builder.addButton( gui(BSprites.gui_icon_faviconWiki()).append(" ").append(BLanguage.gui_statsview_stats_ctxMenu_viewOnWiki()), - _ -> Util.getPlatform().openUri(url_wiki)); + _ -> Blaze3D.openUri(URI.create(url_wiki))); } //"Create goal" button diff --git a/src/main/resources/META-INF/jarjar/tcdcommons-5.5.6+fn-26.2.jar b/src/main/resources/META-INF/jarjar/tcdcommons-5.6.0-beta.1+fn-26.3.jar similarity index 65% rename from src/main/resources/META-INF/jarjar/tcdcommons-5.5.6+fn-26.2.jar rename to src/main/resources/META-INF/jarjar/tcdcommons-5.6.0-beta.1+fn-26.3.jar index 214581e..9deb5ca 100644 Binary files a/src/main/resources/META-INF/jarjar/tcdcommons-5.5.6+fn-26.2.jar and b/src/main/resources/META-INF/jarjar/tcdcommons-5.6.0-beta.1+fn-26.3.jar differ