diff --git a/CHANGELOG.md b/CHANGELOG.md index bb7137a..85090de 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1 +1 @@ -Add 1.21.10 support. +Add 1.21.11 support. diff --git a/build.gradle b/build.gradle index a1134fc..789bc46 100644 --- a/build.gradle +++ b/build.gradle @@ -1,6 +1,6 @@ plugins { id "architectury-plugin" version "3.4-SNAPSHOT" - id "dev.architectury.loom" version "1.11-SNAPSHOT" apply false + id "dev.architectury.loom" version "1.13-SNAPSHOT" apply false id "com.github.breadmoirai.github-release" version "2.4.1" id "maven-publish" } diff --git a/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/ConfigScreen.java b/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/ConfigScreen.java index e3be03f..a79f7c4 100644 --- a/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/ConfigScreen.java +++ b/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/ConfigScreen.java @@ -7,7 +7,7 @@ import io.github.jamalam360.jamlib.config.ConfigExtensions; import io.github.jamalam360.jamlib.config.ConfigManager; import io.github.jamalam360.jamlib.config.HiddenInGui; -import net.minecraft.Util; +import net.minecraft.util.Util; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.gui.components.AbstractWidget; diff --git a/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/SelectionListEntry.java b/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/SelectionListEntry.java index 8a03c6c..44e1978 100644 --- a/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/SelectionListEntry.java +++ b/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/SelectionListEntry.java @@ -2,7 +2,7 @@ import java.util.List; -import net.minecraft.Util; +import net.minecraft.util.Util; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.gui.components.AbstractWidget; diff --git a/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/entry/ConfigEntry.java b/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/entry/ConfigEntry.java index 8fadf42..5798ccd 100644 --- a/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/entry/ConfigEntry.java +++ b/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/entry/ConfigEntry.java @@ -3,7 +3,6 @@ import com.google.gson.Gson; import io.github.jamalam360.jamlib.JamLib; import io.github.jamalam360.jamlib.client.config.gui.ConfigScreen; -import io.github.jamalam360.jamlib.client.gui.ScrollingStringWidget; import io.github.jamalam360.jamlib.client.mixinsupport.MutableSpriteImageWidget$Sprite; import io.github.jamalam360.jamlib.config.ConfigExtensions; import io.github.jamalam360.jamlib.config.ConfigManager; @@ -11,6 +10,7 @@ import net.minecraft.client.gui.components.AbstractWidget; import net.minecraft.client.gui.components.ImageWidget; import net.minecraft.client.gui.components.SpriteIconButton; +import net.minecraft.client.gui.components.StringWidget; import net.minecraft.client.gui.components.Tooltip; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; @@ -71,7 +71,7 @@ public ConfigEntry(String modId, String configName, ConfigField field) { public List createWidgets(int width) { List widgets = new ArrayList<>(); - ScrollingStringWidget title = new ScrollingStringWidget(12, Minecraft.getInstance().font.lineHeight / 2 + 1, width / 2 - 10, Minecraft.getInstance().font.lineHeight, Component.translatable(this.translationKey), Minecraft.getInstance().font); + StringWidget title = new StringWidget(12, Minecraft.getInstance().font.lineHeight / 2 + 1, width / 2 - 10, Minecraft.getInstance().font.lineHeight, Component.translatable(this.translationKey), Minecraft.getInstance().font); if (this.tooltip != null) { title.setTooltip(Tooltip.create(this.tooltip)); diff --git a/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/entry/EnumButton.java b/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/entry/EnumButton.java index a78f61c..4625239 100644 --- a/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/entry/EnumButton.java +++ b/common/src/client/java/io/github/jamalam360/jamlib/client/config/gui/entry/EnumButton.java @@ -6,7 +6,7 @@ import java.util.function.Consumer; -public class EnumButton> extends Button { +public class EnumButton> extends Button.Plain { private final Class enumClass; private final Consumer> onChange; private int index; diff --git a/common/src/client/java/io/github/jamalam360/jamlib/client/gui/ScrollingStringWidget.java b/common/src/client/java/io/github/jamalam360/jamlib/client/gui/ScrollingStringWidget.java deleted file mode 100644 index 6e6d956..0000000 --- a/common/src/client/java/io/github/jamalam360/jamlib/client/gui/ScrollingStringWidget.java +++ /dev/null @@ -1,44 +0,0 @@ -package io.github.jamalam360.jamlib.client.gui; - -import net.minecraft.Util; -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.Font; -import net.minecraft.client.gui.GuiGraphics; -import net.minecraft.client.gui.components.StringWidget; -import net.minecraft.network.chat.Component; -import net.minecraft.util.Mth; - -/** - * A string widget that scrolls if the component is too long for the width - */ -public class ScrollingStringWidget extends StringWidget { - public ScrollingStringWidget(int x, int y, int width, int height, Component component, Font font) { - super(x, y, width, height, component, font); - } - - @Override - public void renderWidget(GuiGraphics guiGraphics, int mouseX, int mouseY, float partialTick) { - renderLeftAlignedScrollingString(guiGraphics, this.getFont(), this.getMessage(), this.getX(), this.getWidth(), this.getY(), this.getColor()); -// if (this.isMouseOver(mouseX, mouseY) && this.tooltip != null) { -// guiGraphics.renderTooltip(Minecraft.getInstance().font, this.getTooltip().toCharSequence(Minecraft.getInstance()), mouseX, mouseY); -// } - } - - private static void renderLeftAlignedScrollingString(GuiGraphics graphics, Font font, Component text, int minX, int width, int y, int color) { - int messageWidth = font.width(text); - - if (messageWidth > width) { - int overflowWidth = messageWidth - width; - double d = (double) Util.getMillis() / (double)1000.0F; - double e = Math.max((double)overflowWidth * (double)0.5F, 3.0F); - double f = Math.sin((Math.PI / 2D) * Math.cos((Math.PI * 2D) * d / e)) / (double)2.0F + (double)0.5F; - double g = Mth.lerp(f, 0.0F, overflowWidth); - graphics.enableScissor(minX, y, minX + width, y + font.lineHeight); - graphics.drawString(font, text, minX - (int)g, y, color); - graphics.disableScissor(); - } else { - graphics.drawString(font, text, minX, y, color); - } - - } -} diff --git a/common/src/client/java/io/github/jamalam360/jamlib/client/mixin/ImageWidget$SpriteMixin.java b/common/src/client/java/io/github/jamalam360/jamlib/client/mixin/ImageWidget$SpriteMixin.java index b0bc1e7..17d0fd7 100644 --- a/common/src/client/java/io/github/jamalam360/jamlib/client/mixin/ImageWidget$SpriteMixin.java +++ b/common/src/client/java/io/github/jamalam360/jamlib/client/mixin/ImageWidget$SpriteMixin.java @@ -1,7 +1,7 @@ package io.github.jamalam360.jamlib.client.mixin; import io.github.jamalam360.jamlib.client.mixinsupport.MutableSpriteImageWidget$Sprite; -import net.minecraft.resources.ResourceLocation; +import net.minecraft.resources.Identifier; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mutable; @@ -12,10 +12,10 @@ public class ImageWidget$SpriteMixin implements MutableSpriteImageWidget$Sprite @Mutable @Shadow @Final - private ResourceLocation sprite; + private Identifier sprite; @Override - public void setSprite(ResourceLocation sprite) { + public void setSprite(Identifier sprite) { this.sprite = sprite; } } diff --git a/common/src/client/java/io/github/jamalam360/jamlib/client/mixinsupport/MutableSpriteImageWidget$Sprite.java b/common/src/client/java/io/github/jamalam360/jamlib/client/mixinsupport/MutableSpriteImageWidget$Sprite.java index 385288b..083fc3d 100644 --- a/common/src/client/java/io/github/jamalam360/jamlib/client/mixinsupport/MutableSpriteImageWidget$Sprite.java +++ b/common/src/client/java/io/github/jamalam360/jamlib/client/mixinsupport/MutableSpriteImageWidget$Sprite.java @@ -1,7 +1,7 @@ package io.github.jamalam360.jamlib.client.mixinsupport; -import net.minecraft.resources.ResourceLocation; +import net.minecraft.resources.Identifier; public interface MutableSpriteImageWidget$Sprite { - void setSprite(ResourceLocation texture); + void setSprite(Identifier texture); } diff --git a/common/src/main/java/io/github/jamalam360/jamlib/JamLib.java b/common/src/main/java/io/github/jamalam360/jamlib/JamLib.java index 80611a4..baefa75 100644 --- a/common/src/main/java/io/github/jamalam360/jamlib/JamLib.java +++ b/common/src/main/java/io/github/jamalam360/jamlib/JamLib.java @@ -4,7 +4,7 @@ import dev.architectury.platform.Platform; import dev.architectury.utils.EnvExecutor; import net.fabricmc.api.EnvType; -import net.minecraft.resources.ResourceLocation; +import net.minecraft.resources.Identifier; import org.jetbrains.annotations.ApiStatus; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -38,7 +38,7 @@ public static void checkForJarRenaming(Class anyModClass) { } @ApiStatus.Internal - public static ResourceLocation id(String path) { - return ResourceLocation.fromNamespaceAndPath(MOD_ID, path); + public static Identifier id(String path) { + return Identifier.fromNamespaceAndPath(MOD_ID, path); } } diff --git a/common/src/main/java/io/github/jamalam360/jamlib/config/ConfigExtensions.java b/common/src/main/java/io/github/jamalam360/jamlib/config/ConfigExtensions.java index f9d76aa..0f1a3b4 100644 --- a/common/src/main/java/io/github/jamalam360/jamlib/config/ConfigExtensions.java +++ b/common/src/main/java/io/github/jamalam360/jamlib/config/ConfigExtensions.java @@ -2,7 +2,7 @@ import io.github.jamalam360.jamlib.JamLib; import net.minecraft.network.chat.Component; -import net.minecraft.resources.ResourceLocation; +import net.minecraft.resources.Identifier; import java.lang.reflect.Field; import java.net.URI; @@ -83,15 +83,15 @@ default List getValidationErrors(ConfigManager manager, Fiel class Link { // I am not an artist but these are recognizable at least. - public static final ResourceLocation DISCORD = JamLib.id("link_discord"); - public static final ResourceLocation GENERIC_LINK = JamLib.id("link_generic"); - public static final ResourceLocation GITHUB = JamLib.id("link_github"); + public static final Identifier DISCORD = JamLib.id("link_discord"); + public static final Identifier GENERIC_LINK = JamLib.id("link_generic"); + public static final Identifier GITHUB = JamLib.id("link_github"); - private final ResourceLocation texture; + private final Identifier texture; private final URL url; private final Component tooltip; - public Link(ResourceLocation texture, String url, Component tooltip) { + public Link(Identifier texture, String url, Component tooltip) { this.texture = texture; try { @@ -104,13 +104,13 @@ public Link(ResourceLocation texture, String url, Component tooltip) { this.tooltip = tooltip; } - public Link(ResourceLocation texture, URL url, Component tooltip) { + public Link(Identifier texture, URL url, Component tooltip) { this.texture = texture; this.url = url; this.tooltip = tooltip; } - public ResourceLocation getTexture() { + public Identifier getTexture() { return this.texture; } @@ -147,13 +147,13 @@ public enum Type { */ ERROR; - private final ResourceLocation texture; + private final Identifier texture; Type() { this.texture = JamLib.id("validation_" + this.name().toLowerCase()); } - public ResourceLocation getTexture() { + public Identifier getTexture() { return this.texture; } } diff --git a/gradle.properties b/gradle.properties index bf04b1a..1d892c9 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,12 +1,12 @@ org.gradle.jvmargs=-Xmx3G org.gradle.daemon=false org.gradle.parallel=true -version=1.3.5+1.21.10 -minecraft_version=1.21.10 +version=1.3.5+1.21.11 +minecraft_version=1.21.11 -additional_minecraft_versions=1.21.9 -minimum_minecraft_version=1.21.9 -minimum_architectury_api_version=18.0.3 +additional_minecraft_versions= +minimum_minecraft_version=1.21.11 +minimum_architectury_api_version=19.0.1 minimum_fabric_api_version=0.134.0+1.21.9 branch=main diff --git a/libs.versions.toml b/libs.versions.toml index 482a3a5..6daf1e0 100644 --- a/libs.versions.toml +++ b/libs.versions.toml @@ -1,20 +1,20 @@ [versions] # https://modrinth.com/mod/architectury-api/versions -architectury = "18.0.5" +architectury = "19.0.1" # https://parchmentmc.org/docs/getting-started -parchment-minecraft = "1.21.10" -parchment = "2025.10.12" +parchment-minecraft = "1.21.11" +parchment = "2025.12.20" # https://projects.neoforged.net/neoforged/neoforge -neoforge = "21.10.32-beta" +neoforge = "21.11.14-beta" # https://fabricmc.net/develop -fabric-loader = "0.17.3" -fabric-api = "0.136.0+1.21.10" +fabric-loader = "0.18.4" +fabric-api = "0.140.2+1.21.11" # https://modrinth.com/mod/modmenu/versions -modmenu = "16.0.0-rc.1" +modmenu = "17.0.0-beta.1" # https://github.com/falkreon/Jankson/releases/latest jankson = "1.2.3"