diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9778ce9..fd5a2bd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -9,7 +9,7 @@ jobs: build: strategy: matrix: - java: [ 17 ] + java: [ 21 ] os: [ ubuntu-latest, windows-latest ] runs-on: ${{ matrix.os }} diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index ea3105e..c49d744 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -24,7 +24,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: temurin - java-version: 17 + java-version: 21 - uses: actions/checkout@v4 - uses: actions/cache@v4 @@ -86,7 +86,7 @@ jobs: with: name: ${{ github.event.repository.name }}-MC${{ needs.build.outputs.mc_version }}-${{ needs.build.outputs.mod_version }} version: MC${{ needs.build.outputs.mc_version }}-${{ matrix.loader }}-${{ needs.build.outputs.mod_version }} - java: Java 17 + java: Java 21 files: ${{ matrix.loader }}/build/libs/*.jar diff --git a/build.gradle.kts b/build.gradle.kts index 1a58fe5..8357f4c 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -62,8 +62,8 @@ subprojects { } java { - sourceCompatibility = JavaVersion.VERSION_17 - targetCompatibility = JavaVersion.VERSION_17 + sourceCompatibility = JavaVersion.VERSION_21 + targetCompatibility = JavaVersion.VERSION_21 } tasks { @@ -75,7 +75,7 @@ subprojects { withType().configureEach { options.encoding = "utf-8" - options.release.set(17) + options.release.set(21) } } diff --git a/common/src/main/java/li/cil/manual/api/ManualScreenStyle.java b/common/src/main/java/li/cil/manual/api/ManualScreenStyle.java index 2f30a72..6fd0c5c 100644 --- a/common/src/main/java/li/cil/manual/api/ManualScreenStyle.java +++ b/common/src/main/java/li/cil/manual/api/ManualScreenStyle.java @@ -16,15 +16,15 @@ public interface ManualScreenStyle { }; default ResourceLocation getWindowBackground() { - return new ResourceLocation(Constants.MOD_ID, "textures/gui/manual.png"); + return ResourceLocation.fromNamespaceAndPath(Constants.MOD_ID, "textures/gui/manual.png"); } default ResourceLocation getScrollButtonTexture() { - return new ResourceLocation(Constants.MOD_ID, "textures/gui/scroll_button.png"); + return ResourceLocation.fromNamespaceAndPath(Constants.MOD_ID, "textures/gui/scroll_button.png"); } default ResourceLocation getTabButtonTexture() { - return new ResourceLocation(Constants.MOD_ID, "textures/gui/tab_button.png"); + return ResourceLocation.fromNamespaceAndPath(Constants.MOD_ID, "textures/gui/tab_button.png"); } default Rect2i getWindowRect() { diff --git a/common/src/main/java/li/cil/manual/api/prefab/provider/NamespaceDocumentProvider.java b/common/src/main/java/li/cil/manual/api/prefab/provider/NamespaceDocumentProvider.java index ed35bc3..3165d70 100644 --- a/common/src/main/java/li/cil/manual/api/prefab/provider/NamespaceDocumentProvider.java +++ b/common/src/main/java/li/cil/manual/api/prefab/provider/NamespaceDocumentProvider.java @@ -37,7 +37,7 @@ public NamespaceDocumentProvider(final String namespace) { @Override public Optional getDocument(final String path, final String language) { final ResourceManager resourceManager = Minecraft.getInstance().getResourceManager(); - final ResourceLocation location = new ResourceLocation(namespace, basePath + path); + final ResourceLocation location = ResourceLocation.fromNamespaceAndPath(namespace, basePath + path); return resourceManager.getResource(location).flatMap(resource -> { try (final InputStream stream = resource.open()) { final BufferedReader reader = new BufferedReader(new InputStreamReader(stream, Charsets.UTF_8)); diff --git a/common/src/main/java/li/cil/manual/api/prefab/renderer/BitmapFontRenderer.java b/common/src/main/java/li/cil/manual/api/prefab/renderer/BitmapFontRenderer.java index ef4c207..538253f 100644 --- a/common/src/main/java/li/cil/manual/api/prefab/renderer/BitmapFontRenderer.java +++ b/common/src/main/java/li/cil/manual/api/prefab/renderer/BitmapFontRenderer.java @@ -153,22 +153,18 @@ private void drawChar(final Matrix4f matrix, final VertexConsumer buffer, final final float u = column * U_STEP; final float v = row * V_STEP; - buffer.vertex(matrix, x, lineHeight(), 0) - .color(r, g, b, a) - .uv(u, v + V_SIZE) - .endVertex(); - buffer.vertex(matrix, x + charWidth(), lineHeight(), 0) - .color(r, g, b, a) - .uv(u + U_SIZE, v + V_SIZE) - .endVertex(); - buffer.vertex(matrix, x + charWidth(), 0, 0) - .color(r, g, b, a) - .uv(u + U_SIZE, v) - .endVertex(); - buffer.vertex(matrix, x, 0, 0) - .color(r, g, b, a) - .uv(u, v) - .endVertex(); + buffer.addVertex(matrix, x, lineHeight(), 0) + .setColor(r, g, b, a) + .setUv(u, v + V_SIZE); + buffer.addVertex(matrix, x + charWidth(), lineHeight(), 0) + .setColor(r, g, b, a) + .setUv(u + U_SIZE, v + V_SIZE); + buffer.addVertex(matrix, x + charWidth(), 0, 0) + .setColor(r, g, b, a) + .setUv(u + U_SIZE, v); + buffer.addVertex(matrix, x, 0, 0) + .setColor(r, g, b, a) + .setUv(u, v); } private int getCharIndex(final char ch) { @@ -187,11 +183,11 @@ private static final class MutableInteger { private static final class FontRenderTypes extends RenderType { public static RenderType create(final ResourceLocation texture) { return create(Constants.MOD_ID + "/bitmap_font", - DefaultVertexFormat.POSITION_COLOR_TEX, + DefaultVertexFormat.POSITION_COLOR_TEX_LIGHTMAP, VertexFormat.Mode.QUADS, 256, false, false, CompositeState.builder() - .setShaderState(POSITION_COLOR_TEX_SHADER) + .setShaderState(POSITION_COLOR_TEX_LIGHTMAP_SHADER) .setTextureState(new TextureStateShard(texture, false, false)) .setTransparencyState(TRANSLUCENT_TRANSPARENCY) .setWriteMaskState(COLOR_WRITE) diff --git a/common/src/main/java/li/cil/manual/api/render/FontRenderer.java b/common/src/main/java/li/cil/manual/api/render/FontRenderer.java index 6a04870..c54a1e3 100644 --- a/common/src/main/java/li/cil/manual/api/render/FontRenderer.java +++ b/common/src/main/java/li/cil/manual/api/render/FontRenderer.java @@ -1,7 +1,5 @@ package li.cil.manual.api.render; -import com.mojang.blaze3d.vertex.BufferBuilder; -import com.mojang.blaze3d.vertex.Tesselator; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.network.chat.Component; @@ -29,8 +27,7 @@ public interface FontRenderer { * @param argb the color to render the string with. */ default void draw(final GuiGraphics graphics, final CharSequence value, final int argb) { - final BufferBuilder builder = Tesselator.getInstance().getBuilder(); - final MultiBufferSource.BufferSource buffer = MultiBufferSource.immediate(builder); + final MultiBufferSource.BufferSource buffer = graphics.bufferSource(); drawInBatch(value, argb, graphics.pose().last().pose(), buffer); buffer.endBatch(); } diff --git a/common/src/main/java/li/cil/manual/api/util/Constants.java b/common/src/main/java/li/cil/manual/api/util/Constants.java index f46b282..a0093cd 100644 --- a/common/src/main/java/li/cil/manual/api/util/Constants.java +++ b/common/src/main/java/li/cil/manual/api/util/Constants.java @@ -23,7 +23,7 @@ public final class Constants { // ----------------------------------------------------------------------- // private static ResourceKey> key(final String name) { - return ResourceKey.createRegistryKey(new ResourceLocation(MOD_ID, name)); + return ResourceKey.createRegistryKey(ResourceLocation.fromNamespaceAndPath(MOD_ID, name)); } // ----------------------------------------------------------------------- // diff --git a/common/src/main/java/li/cil/manual/client/document/DocumentRenderTypes.java b/common/src/main/java/li/cil/manual/client/document/DocumentRenderTypes.java index dee6b2f..8d8e50e 100644 --- a/common/src/main/java/li/cil/manual/client/document/DocumentRenderTypes.java +++ b/common/src/main/java/li/cil/manual/client/document/DocumentRenderTypes.java @@ -2,6 +2,7 @@ import com.mojang.blaze3d.vertex.*; import li.cil.manual.api.util.Constants; +import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; import net.minecraft.resources.ResourceLocation; @@ -36,9 +37,8 @@ public static RenderType texture(final ResourceLocation location) { .createCompositeState(false)); } - public static void draw(final RenderType renderType, final Consumer callback) { - final BufferBuilder builder = Tesselator.getInstance().getBuilder(); - final MultiBufferSource.BufferSource bufferSource = MultiBufferSource.immediate(builder); + public static void draw(final GuiGraphics graphics, final RenderType renderType, final Consumer callback) { + final MultiBufferSource.BufferSource bufferSource = graphics.bufferSource(); final VertexConsumer buffer = bufferSource.getBuffer(renderType); callback.accept(buffer); diff --git a/common/src/main/java/li/cil/manual/client/document/segment/RenderSegment.java b/common/src/main/java/li/cil/manual/client/document/segment/RenderSegment.java index b34c9bf..216d06d 100644 --- a/common/src/main/java/li/cil/manual/client/document/segment/RenderSegment.java +++ b/common/src/main/java/li/cil/manual/client/document/segment/RenderSegment.java @@ -81,15 +81,15 @@ public Optional render(final GuiGraphics graphics, final int final boolean isHovered = mouseX >= x && mouseX <= x + width && mouseY >= y && mouseY <= y + height; if (isHovered) { - DocumentRenderTypes.draw(DocumentRenderTypes.highlight(), (buffer) -> { + DocumentRenderTypes.draw(graphics, DocumentRenderTypes.highlight(), (buffer) -> { final var matrix = pose.last().pose(); final float r = 0.2f, g = 0.4f, b = 0.6f, a = 0.25f; - buffer.vertex(matrix, 0, renderer.getHeight(), 0).color(r, g, b, a).endVertex(); - buffer.vertex(matrix, renderer.getWidth(), renderer.getHeight(), 0).color(r, g, b, a).endVertex(); - buffer.vertex(matrix, renderer.getWidth(), 0, 0).color(r, g, b, a).endVertex(); - buffer.vertex(matrix, 0, 0, 0).color(r, g, b, a).endVertex(); + buffer.addVertex(matrix, 0, renderer.getHeight(), 0).setColor(r, g, b, a); + buffer.addVertex(matrix, renderer.getWidth(), renderer.getHeight(), 0).setColor(r, g, b, a); + buffer.addVertex(matrix, renderer.getWidth(), 0, 0).setColor(r, g, b, a); + buffer.addVertex(matrix, 0, 0, 0).setColor(r, g, b, a); }); } diff --git a/common/src/main/java/li/cil/manual/client/document/segment/TextSegment.java b/common/src/main/java/li/cil/manual/client/document/segment/TextSegment.java index a0fc32a..c08a9b4 100644 --- a/common/src/main/java/li/cil/manual/client/document/segment/TextSegment.java +++ b/common/src/main/java/li/cil/manual/client/document/segment/TextSegment.java @@ -1,7 +1,5 @@ package li.cil.manual.client.document.segment; -import com.mojang.blaze3d.vertex.BufferBuilder; -import com.mojang.blaze3d.vertex.Tesselator; import li.cil.manual.api.render.FontRenderer; import li.cil.manual.client.document.DocumentRenderer; import net.minecraft.client.gui.GuiGraphics; @@ -80,8 +78,7 @@ public Optional render(final GuiGraphics graphics, final int final Optional interactive = getInteractiveParent(); final ObjectReference> hovered = new ObjectReference<>(Optional.empty()); - final BufferBuilder builder = Tesselator.getInstance().getBuilder(); - final MultiBufferSource.BufferSource bufferSource = MultiBufferSource.immediate(builder); + final MultiBufferSource.BufferSource bufferSource = graphics.bufferSource(); forEachBlock(segmentX, lineHeight, documentWidth, block -> { final int blockWidth = getStringWidth(block.chars); diff --git a/common/src/main/java/li/cil/manual/client/document/segment/render/MissingContentRenderer.java b/common/src/main/java/li/cil/manual/client/document/segment/render/MissingContentRenderer.java index 873401d..7d906f1 100644 --- a/common/src/main/java/li/cil/manual/client/document/segment/render/MissingContentRenderer.java +++ b/common/src/main/java/li/cil/manual/client/document/segment/render/MissingContentRenderer.java @@ -6,7 +6,7 @@ import net.minecraft.resources.ResourceLocation; public final class MissingContentRenderer extends TextureContentRenderer implements InteractiveContentRenderer { - private static final ResourceLocation LOCATION_GUI_MANUAL_MISSING = new ResourceLocation(Constants.MOD_ID, "textures/gui/missing.png"); + private static final ResourceLocation LOCATION_GUI_MANUAL_MISSING = ResourceLocation.fromNamespaceAndPath(Constants.MOD_ID, "textures/gui/missing.png"); private final Component tooltip; diff --git a/common/src/main/java/li/cil/manual/client/document/segment/render/TextureContentRenderer.java b/common/src/main/java/li/cil/manual/client/document/segment/render/TextureContentRenderer.java index 92cebc5..faffda6 100644 --- a/common/src/main/java/li/cil/manual/client/document/segment/render/TextureContentRenderer.java +++ b/common/src/main/java/li/cil/manual/client/document/segment/render/TextureContentRenderer.java @@ -49,12 +49,12 @@ public int getHeight() { @Override public void render(final GuiGraphics graphics, final int mouseX, final int mouseY) { - DocumentRenderTypes.draw(DocumentRenderTypes.texture(location), (buffer) -> { + DocumentRenderTypes.draw(graphics, DocumentRenderTypes.texture(location), (buffer) -> { final var matrix = graphics.pose().last().pose(); - buffer.vertex(matrix, 0, texture.height, 0).uv(0, 1).endVertex(); - buffer.vertex(matrix, texture.width, texture.height, 0).uv(1, 1).endVertex(); - buffer.vertex(matrix, texture.width, 0, 0).uv(1, 0).endVertex(); - buffer.vertex(matrix, 0, 0, 0).uv(0, 0).endVertex(); + buffer.addVertex(matrix, 0, texture.height, 0).setUv(0, 1); + buffer.addVertex(matrix, texture.width, texture.height, 0).setUv(1, 1); + buffer.addVertex(matrix, texture.width, 0, 0).setUv(1, 0); + buffer.addVertex(matrix, 0, 0, 0).setUv(0, 0); }); } diff --git a/common/src/main/java/li/cil/manual/client/provider/ItemRendererProvider.java b/common/src/main/java/li/cil/manual/client/provider/ItemRendererProvider.java index 0a3a2db..9a78246 100644 --- a/common/src/main/java/li/cil/manual/client/provider/ItemRendererProvider.java +++ b/common/src/main/java/li/cil/manual/client/provider/ItemRendererProvider.java @@ -29,7 +29,7 @@ public MatchResult matches(final ManualModel manual) { @Override protected Optional doGetRenderer(final String data) { - final Item item = BuiltInRegistries.ITEM.get(new ResourceLocation(data)); + final Item item = BuiltInRegistries.ITEM.get(ResourceLocation.parse(data)); if (item != Items.AIR) { return Optional.of(new ItemStackContentRenderer(new ItemStack(item))); } else { diff --git a/common/src/main/java/li/cil/manual/client/provider/TagRendererProvider.java b/common/src/main/java/li/cil/manual/client/provider/TagRendererProvider.java index b0d9703..9f9941a 100644 --- a/common/src/main/java/li/cil/manual/client/provider/TagRendererProvider.java +++ b/common/src/main/java/li/cil/manual/client/provider/TagRendererProvider.java @@ -27,7 +27,7 @@ public MatchResult matches(final ManualModel manual) { @Override protected Optional doGetRenderer(final String data) { - final ResourceLocation location = new ResourceLocation(data); + final ResourceLocation location = ResourceLocation.parse(data); return BuiltInRegistries.ITEM.getTagNames() .filter(key -> key.location().equals(location)) .findFirst() diff --git a/common/src/main/java/li/cil/manual/client/provider/TextureRendererProvider.java b/common/src/main/java/li/cil/manual/client/provider/TextureRendererProvider.java index 98ddd21..91bcbea 100644 --- a/common/src/main/java/li/cil/manual/client/provider/TextureRendererProvider.java +++ b/common/src/main/java/li/cil/manual/client/provider/TextureRendererProvider.java @@ -31,7 +31,7 @@ public Optional getRenderer(final String path) { } try { - return Optional.of(new TextureContentRenderer(new ResourceLocation(path))); + return Optional.of(new TextureContentRenderer(ResourceLocation.parse(path))); } catch (final Throwable t) { return Optional.of(new MissingContentRenderer(Strings.NO_SUCH_IMAGE)); } diff --git a/fabric/build.gradle.kts b/fabric/build.gradle.kts index 4b02e15..6fec609 100644 --- a/fabric/build.gradle.kts +++ b/fabric/build.gradle.kts @@ -26,8 +26,4 @@ tasks { expand(properties) } } - - remapJar { - injectAccessWidener.set(true) - } } diff --git a/fabric/src/main/resources/fabric.mod.json b/fabric/src/main/resources/fabric.mod.json index 676e145..f21fc49 100644 --- a/fabric/src/main/resources/fabric.mod.json +++ b/fabric/src/main/resources/fabric.mod.json @@ -21,7 +21,7 @@ "fabric-api": ">=${fabricApiVersion}", "architectury": ">=${architecturyVersion}", "minecraft": ">=${minecraftVersion}", - "java": ">=17" + "java": ">=21" }, "custom": { "mc-publish": { diff --git a/forge/.gitignore b/forge/.gitignore deleted file mode 100644 index d3db8f9..0000000 --- a/forge/.gitignore +++ /dev/null @@ -1 +0,0 @@ -src/generated/ diff --git a/forge/build.gradle.kts b/forge/build.gradle.kts deleted file mode 100644 index 558aacf..0000000 --- a/forge/build.gradle.kts +++ /dev/null @@ -1,33 +0,0 @@ -val modId: String by project -val minecraftVersion: String = libs.versions.minecraft.get() -val forgeVersion: String = libs.versions.forge.platform.get().split("-")[1] -val architecturyVersion: String = libs.versions.architectury.get() - -loom { - accessWidenerPath.set(project(":common").loom.accessWidenerPath) -} - -dependencies { - forge(libs.forge.platform) - modApi(libs.forge.architectury) -} - -tasks { - processResources { - val properties = mapOf( - "version" to project.version, - "minecraftVersion" to minecraftVersion, - "loaderVersion" to forgeVersion.split(".").first(), - "forgeVersion" to forgeVersion, - "architecturyVersion" to architecturyVersion - ) - inputs.properties(properties) - filesMatching("META-INF/mods.toml") { - expand(properties) - } - } - - remapJar { - atAccessWideners.add("${modId}.accesswidener") - } -} diff --git a/forge/gradle.properties b/forge/gradle.properties deleted file mode 100644 index 32f842a..0000000 --- a/forge/gradle.properties +++ /dev/null @@ -1 +0,0 @@ -loom.platform=forge \ No newline at end of file diff --git a/forge/src/main/java/li/cil/manual/client/forge/MarkdownManualForge.java b/forge/src/main/java/li/cil/manual/client/forge/MarkdownManualForge.java deleted file mode 100644 index 898af5e..0000000 --- a/forge/src/main/java/li/cil/manual/client/forge/MarkdownManualForge.java +++ /dev/null @@ -1,17 +0,0 @@ -package li.cil.manual.client.forge; - -import dev.architectury.platform.forge.EventBuses; -import li.cil.manual.api.util.Constants; -import li.cil.manual.client.ClientSetup; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.fml.DistExecutor; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; - -@Mod(Constants.MOD_ID) -public final class MarkdownManualForge { - public MarkdownManualForge() { - EventBuses.registerModEventBus(Constants.MOD_ID, FMLJavaModLoadingContext.get().getModEventBus()); - DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> ClientSetup::initialize); - } -} diff --git a/forge/src/main/resources/META-INF/mods.toml b/forge/src/main/resources/META-INF/mods.toml deleted file mode 100644 index 6898ede..0000000 --- a/forge/src/main/resources/META-INF/mods.toml +++ /dev/null @@ -1,40 +0,0 @@ -modLoader = "javafml" -loaderVersion = "[${loaderVersion},)" -issueTrackerURL = "https://github.com/MightyPirates/MarkdownManual/issues" -license = "MIT" - -[[mods]] -modId = "markdown_manual" -version = "${version}" -displayName = "Markdown Manual" -authors = "Sangar" -description = ''' -Library mod providing a convenient way of defining in-game manuals. -''' - -[[dependencies.markdown_manual]] -modId = "forge" -mandatory = true -versionRange = "[${forgeVersion},)" -ordering = "NONE" -side = "BOTH" -[[dependencies.markdown_manual]] -modId = "minecraft" -mandatory = true -versionRange = "[${minecraftVersion},)" -ordering = "NONE" -side = "BOTH" - -[[dependencies.markdown_manual]] -modId = "architectury" -mandatory = true -versionRange = "[${architecturyVersion},)" -ordering = "AFTER" -side = "BOTH" - -[mc-publish] -modrinth = "nPQ9xkPg" -curseforge = 502485 -dependencies = [ - "architectury@>=${architecturyVersion}(required){modrinth:lhGA9TYQ}{curseforge:419699}" -] diff --git a/forge/src/main/resources/pack.mcmeta b/forge/src/main/resources/pack.mcmeta deleted file mode 100644 index c344afd..0000000 --- a/forge/src/main/resources/pack.mcmeta +++ /dev/null @@ -1,6 +0,0 @@ -{ - "pack": { - "description": "Markdown Manual", - "pack_format": 9 - } -} diff --git a/gradle.properties b/gradle.properties index e13d3a7..78d62ca 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ org.gradle.jvmargs=-Xmx4G org.gradle.daemon=false -enabledPlatforms=fabric,forge,neoforge +enabledPlatforms=fabric,neoforge modId=markdown_manual mavenGroup=li.cil.markdown_manual diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 60b2112..2fd12f7 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,22 +1,20 @@ [versions] -minecraft = "1.20.4" -parchment-minecraft = "1.20.4" -parchment-mappings = "2024.02.25" +minecraft = "1.21.1" +parchment-minecraft = "1.21.1" +parchment-mappings = "2024.11.17" -architectury = "11.1.17" +architectury = "13.0.8" -fabric-loader = "0.15.10" -fabric-api = "0.97.0+1.20.4" +fabric-loader = "0.18.5" +fabric-api = "0.116.9+1.21.1" -forge-platform = "1.20.4-49.0.41" - -neoforge-platform = "20.4.227" +neoforge-platform = "21.1.222" neoforge-loader = "2" [plugins] -loom = { id = "dev.architectury.loom", version = "1.6-SNAPSHOT" } +loom = { id = "dev.architectury.loom", version = "1.11-SNAPSHOT" } architectury = { id = "architectury-plugin", version = "3.4-SNAPSHOT" } -shadow = { id = "com.github.johnrengelman.shadow", version = "8.1.1" } +shadow = { id = "com.gradleup.shadow", version = "9.4.1" } spotless = { id = "com.diffplug.spotless", version = "6.22.0" } [libraries] @@ -27,8 +25,5 @@ fabric-loader = { group = "net.fabricmc", name = "fabric-loader", version.ref = fabric-api = { group = "net.fabricmc.fabric-api", name = "fabric-api", version.ref = "fabric-api" } fabric-architectury = { group = "dev.architectury", name = "architectury-fabric", version.ref = "architectury" } -forge-platform = { group = "net.minecraftforge", name = "forge", version.ref = "forge-platform" } -forge-architectury = { group = "dev.architectury", name = "architectury-forge", version.ref = "architectury" } - neoforge-platform = { group = "net.neoforged", name = "neoforge", version.ref = "neoforge-platform" } neoforge-architectury = { group = "dev.architectury", name = "architectury-neoforge", version.ref = "architectury" } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index b82aa23..c61a118 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/neoforge/build.gradle.kts b/neoforge/build.gradle.kts index 52ef6f0..5f75886 100644 --- a/neoforge/build.gradle.kts +++ b/neoforge/build.gradle.kts @@ -27,7 +27,7 @@ tasks { "architecturyVersion" to architecturyVersion ) inputs.properties(properties) - filesMatching("META-INF/mods.toml") { + filesMatching("META-INF/neoforge.mods.toml") { expand(properties) } } diff --git a/neoforge/src/main/java/li/cil/manual/client/neoforge/MarkdownManualNeoForge.java b/neoforge/src/main/java/li/cil/manual/client/neoforge/MarkdownManualNeoForge.java index 1c98fe1..65ea2df 100644 --- a/neoforge/src/main/java/li/cil/manual/client/neoforge/MarkdownManualNeoForge.java +++ b/neoforge/src/main/java/li/cil/manual/client/neoforge/MarkdownManualNeoForge.java @@ -4,13 +4,10 @@ import li.cil.manual.client.ClientSetup; import net.neoforged.api.distmarker.Dist; import net.neoforged.fml.common.Mod; -import net.neoforged.fml.loading.FMLEnvironment; -@Mod(Constants.MOD_ID) +@Mod(value = Constants.MOD_ID, dist = Dist.CLIENT) public final class MarkdownManualNeoForge { public MarkdownManualNeoForge() { - if (FMLEnvironment.dist == Dist.CLIENT) { - ClientSetup.initialize(); - } + ClientSetup.initialize(); } } diff --git a/neoforge/src/main/resources/META-INF/mods.toml b/neoforge/src/main/resources/META-INF/neoforge.mods.toml similarity index 100% rename from neoforge/src/main/resources/META-INF/mods.toml rename to neoforge/src/main/resources/META-INF/neoforge.mods.toml diff --git a/neoforge/src/main/resources/pack.mcmeta b/neoforge/src/main/resources/pack.mcmeta deleted file mode 100644 index 035ab05..0000000 --- a/neoforge/src/main/resources/pack.mcmeta +++ /dev/null @@ -1,6 +0,0 @@ -{ - "pack": { - "description": "Markdown Manual", - "pack_format": 8 - } -} diff --git a/settings.gradle.kts b/settings.gradle.kts index 874d1fa..b24bb19 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -11,8 +11,7 @@ pluginManagement { exclusiveContent { forRepository { maven("https://maven.fabricmc.net") } filter { - includeGroup("net.fabricmc") - includeGroup("fabric-loom") + includeGroupByRegex("net\\.fabricmc.*") } } exclusiveContent {