Skip to content

Commit a63a76a

Browse files
committed
Backport to mc1.20.1
1 parent 6cdcf46 commit a63a76a

File tree

22 files changed

+281
-225
lines changed

22 files changed

+281
-225
lines changed

.github/workflows/release-subproject-neoforge.yml renamed to .github/workflows/release-subproject-forge.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
# A NeoForge-only version of the normal release workflow.
2-
name: Release-Subproject-NeoForge
1+
# A Forge-only version of the normal release workflow.
2+
name: Release-Subproject-Forge
33

44
on:
55
workflow_dispatch:
@@ -34,7 +34,7 @@ jobs:
3434
if: ${{ runner.os != 'Windows' }}
3535
run: chmod +x ./gradlew
3636
- name: Build
37-
run: ./gradlew build neoforge:publishGithub neoforge:publishCurseforge neoforge:publishModrinth --stacktrace
37+
run: ./gradlew build forge:publishGithub forge:publishCurseforge forge:publishModrinth --stacktrace
3838
env:
3939
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
4040
MODRINTH_TOKEN: ${{ secrets.MODRINTH_TOKEN }}

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ jobs:
3939
if: ${{ runner.os != 'Windows' }}
4040
run: chmod +x ./gradlew
4141
- name: Build
42-
run: ./gradlew build neoforge:publishGithub neoforge:publishCurseforge neoforge:publishModrinth fabric:publishGithub fabric:publishCurseforge fabric:publishModrinth --stacktrace
42+
run: ./gradlew build forge:publishGithub forge:publishCurseforge forge:publishModrinth fabric:publishGithub fabric:publishCurseforge fabric:publishModrinth --stacktrace
4343
env:
4444
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
4545
MODRINTH_TOKEN: ${{ secrets.MODRINTH_TOKEN }}

build.gradle

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@ import java.util.regex.Pattern
1010

1111
plugins {
1212
id("fabric-loom") version("${loom_version}") apply(false)
13-
id("net.neoforged.moddev") version("${moddev_version}") apply(false)
13+
id("net.minecraftforge.gradle") version("${forgegradle_version}") apply(false)
14+
id("org.spongepowered.gradle.vanilla") version("${vanillagradle_version}") apply(false)
15+
id("org.spongepowered.mixin") version("${mixingradle_version}") apply(false)
1416
id("net.neoforged.licenser") version("${licenser_version}") apply(false)
1517
id("me.modmuss50.mod-publish-plugin") version("${mpp_version}")
1618
id("org.ajoberstar.grgit.service") version("${grgitservice_version}")
@@ -66,7 +68,8 @@ subprojects {
6668
afterEvaluate { sp ->
6769
publishMods {
6870
// Common configuration
69-
file = sp.name == "fabric" ? remapJar.archiveFile : jar.archiveFile
71+
file = project.name == "fabric" ? remapJar.archiveFile : name == "forge"
72+
? project.file("build/libs/${mod_id}-${name}-${mod_version}.jar") : jar.archiveFile
7073
version = mod_version
7174
type = ReleaseType.of(mod_version_type)
7275
displayName = "v${mod_version}-${StaticUtil.capsLoader(sp.name)}"

buildSrc/src/main/groovy/multiloader-common.gradle

Lines changed: 35 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -121,47 +121,47 @@ if (build_sources_jar == "true") {
121121
processResources {
122122
final expandProps = [
123123
// Mod
124-
"mod_version" : mod_version,
125-
"mod_group" : mod_group,
126-
"mod_id" : mod_id,
127-
"mod_name" : mod_name,
128-
"mod_description_fabric" : mod_description.replace("\n", "\\n"),
129-
"mod_description_neoforge": mod_description,
130-
"mod_icon" : "assets/${mod_id}/icon.png",
131-
"mod_owner" : mod_owner,
132-
"mod_authors_list" : asJsonList(mod_authors),
133-
"mod_authors_string" : mod_authors.split(",").join(", "),
134-
"mod_contributors_list" : asJsonList("${mod_contributors},${mod_translators},${mod_credits}"),
135-
"mod_contributors_string": asTomlList("${mod_contributors},${mod_translators},${mod_credits}"),
136-
"mod_license" : mod_license,
124+
"mod_version" : mod_version,
125+
"mod_group" : mod_group,
126+
"mod_id" : mod_id,
127+
"mod_name" : mod_name,
128+
"mod_description_fabric" : mod_description.replace("\n", "\\n"),
129+
"mod_description_forge" : mod_description,
130+
"mod_icon" : "assets/${mod_id}/icon.png",
131+
"mod_owner" : mod_owner,
132+
"mod_authors_list" : asJsonList(mod_authors),
133+
"mod_authors_string" : mod_authors.split(",").join(", "),
134+
"mod_contributors_list" : asJsonList("${mod_contributors},${mod_translators},${mod_credits}"),
135+
"mod_contributors_string" : asTomlList("${mod_contributors},${mod_translators},${mod_credits}"),
136+
"mod_license" : mod_license,
137137
// Links
138-
"homepage_url" : homepage_url,
139-
"sources_url" : sources_url,
140-
"issues_url" : issues_url,
141-
"contact_url" : contact_url,
138+
"homepage_url" : homepage_url,
139+
"sources_url" : sources_url,
140+
"issues_url" : issues_url,
141+
"contact_url" : contact_url,
142142
// Java
143-
"java_version" : java_version,
143+
"java_version" : java_version,
144144
"java_versions_fabric_list": asJsonList(java_versions_fabric),
145-
"java_versions_neoforge" : java_versions_neoforge,
145+
"java_versions_forge" : java_versions_forge,
146146
// Minecraft
147147
"minecraft_versions_fabric_list": asJsonList(minecraft_versions_fabric),
148-
"minecraft_versions_neoforge": minecraft_versions_neoforge,
148+
"minecraft_versions_forge": minecraft_versions_forge,
149149
// Fabric
150150
"fabric_loader_versions_list": asJsonList(fabric_loader_versions),
151151
"fabric_api_versions_list": asJsonList(fabric_api_versions),
152152
"fabric_entrypoints_main" : asJsonListPrefixed(fabric_entrypoints_main, "${mod_group}.${mod_id}."),
153153
"fabric_entrypoints_client" : asJsonListPrefixed(fabric_entrypoints_client, "${mod_group}.${mod_id}."),
154154
"fabric_entrypoints_server" : asJsonListPrefixed(fabric_entrypoints_server, "${mod_group}.${mod_id}."),
155155
"fabric_entrypoints_modmenu": asJsonListPrefixed(fabric_entrypoints_modmenu, "${mod_group}.${mod_id}."),
156-
// NeoForge
157-
"neoforge_versions" : neoforge_versions,
156+
// Forge
157+
"forge_versions" : forge_versions,
158158
// Dependencies:
159-
"fabric_depends" : "",
160-
"fabric_recommends" : "",
161-
"fabric_suggests" : "",
162-
"fabric_conflicts" : "",
163-
"fabric_breaks" : "",
164-
"neoforge_all_deps" : ""
159+
"fabric_depends" : "",
160+
"fabric_recommends" : "",
161+
"fabric_suggests" : "",
162+
"fabric_conflicts" : "",
163+
"fabric_breaks" : "",
164+
"forge_all_deps" : ""
165165
]
166166

167167
// Apply property-defined dependencies
@@ -186,25 +186,25 @@ processResources {
186186
if (!expandProps["fabric_depends"].isBlank()) {
187187
expandProps["fabric_depends"] = "${expandProps["fabric_depends"]},".toString()
188188
}
189-
safePropList("neoforge_deps").each { dep ->
189+
safePropList("forge_deps").each { dep ->
190190
try {
191-
final depData = propList("d_neoforge_${dep}")
191+
final depData = propList("d_forge_${dep}")
192192
if (depData.length > 1 && depData[1] != "-") {
193193
final loaderData = depData[1].split(":")
194-
expandProps["neoforge_all_deps"] = expandProps["neoforge_all_deps"] +
194+
expandProps["forge_all_deps"] = expandProps["forge_all_deps"] +
195195
"[[dependencies.${mod_id}]]\n" +
196196
"modId=\"${loaderData[1]}\"\n" +
197-
"type=\"${loaderData[0]}\"\n" +
198-
"versionRange=\"${project.property("vr_neoforge_${dep}")}\"\n" +
197+
"mandatory=${loaderData[0] == "required"}\n" +
198+
"versionRange=\"${project.property("vr_forge_${dep}")}\"\n" +
199199
"side=\"CLIENT\"\n\n"
200200
}
201201
} catch (Exception ex) {
202-
logger.error("Error processing NeoForge dependency metadata for '${dep}'. "
202+
logger.error("Error processing Forge dependency metadata for '${dep}'. "
203203
+ "Check dependency property format.")
204204
throw ex
205205
}
206206
}
207-
// logger.info("NeoForge metadata 'neoforge_all_deps': ${expandProps["neoforge_all_deps"]}")
207+
// logger.info("Forge metadata 'forge_all_deps': ${expandProps["forge_all_deps"]}")
208208

209209
filesMatching(["pack.mcmeta", "*.mod.json", "*.mixins.json", "META-INF/*.toml"]) {
210210
expand(expandProps)

common/build.gradle

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import util.PropUtil
22

33
plugins {
44
id("multiloader-common")
5-
id("net.neoforged.moddev")
5+
id("org.spongepowered.gradle.vanilla")
66
}
77

88
// Configure common dependencies
@@ -38,18 +38,12 @@ dependencies {
3838
new PropUtil(project).applyDependencies(project.name, selector)
3939
}
4040

41-
// Configure ModDevGradle
42-
neoForge {
43-
neoFormVersion = neoform_version
44-
// Apply common AccessTransformer if it exists
45-
def at = file("src/main/resources/META-INF/accesstransformer.cfg")
46-
if (at.exists()) accessTransformers.from(at.absolutePath)
47-
validateAccessTransformers = true
48-
// Apply Parchment mappings
49-
parchment {
50-
minecraftVersion = parchment_minecraft_version
51-
mappingsVersion = parchment_version
52-
}
41+
// Configure VanillaGradle
42+
minecraft {
43+
version(minecraft_version)
44+
// Apply common AccessWidener if it exists
45+
def aw = file("src/main/resources/${mod_id}.accesswidener")
46+
if (aw.exists()) accessWideners(aw)
5347
}
5448

5549
// Set up access to common files

common/src/main/java/dev/terminalmc/framework/config/Config.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ public static class Options {
6161
public String lenientStringOption = lenientStringOptionDefault;
6262

6363
public static final List<String> strictStringOptionValues = List.of("One", "Two", "Three");
64-
public static final String strictStringOptionDefault = strictStringOptionValues.getFirst();
64+
public static final String strictStringOptionDefault = strictStringOptionValues.get(0);
6565
public String strictStringOption = strictStringOptionDefault;
6666

6767
public static final TriState enumOptionDefault = TriState.Value1;

common/src/main/java/dev/terminalmc/framework/gui/screen/ConfigScreenProvider.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,13 @@
1313

1414
import net.minecraft.Util;
1515
import net.minecraft.client.Minecraft;
16+
import net.minecraft.client.gui.GuiGraphics;
1617
import net.minecraft.client.gui.components.Button;
1718
import net.minecraft.client.gui.components.MultiLineTextWidget;
1819
import net.minecraft.client.gui.screens.ConfirmLinkScreen;
1920
import net.minecraft.client.gui.screens.Screen;
2021
import net.minecraft.network.chat.CommonComponents;
22+
import org.jetbrains.annotations.NotNull;
2123

2224
import static dev.terminalmc.framework.util.Localization.localized;
2325

@@ -84,6 +86,17 @@ public void init() {
8486
addRenderableWidget(exitButton);
8587
}
8688

89+
@Override
90+
public void render(
91+
@NotNull GuiGraphics graphics,
92+
int mouseX,
93+
int mouseY,
94+
float partialTick
95+
) {
96+
renderDirtBackground(graphics);
97+
super.render(graphics, mouseX, mouseY, partialTick);
98+
}
99+
87100
@Override
88101
public void onClose() {
89102
Minecraft.getInstance().setScreen(parent);

common/src/main/java/dev/terminalmc/framework/gui/screen/YaclScreenProvider.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,10 @@
1111

1212
package dev.terminalmc.framework.gui.screen;
1313

14-
import dev.isxander.yacl3.api.*;
15-
import dev.isxander.yacl3.api.controller.*;
14+
import dev.isxander.yacl3.api.ButtonOption;
15+
import dev.isxander.yacl3.api.ConfigCategory;
16+
import dev.isxander.yacl3.api.ListOption;
17+
import dev.isxander.yacl3.api.OptionGroup;
1618
import dev.isxander.yacl3.gui.YACLScreen;
1719
import dev.terminalmc.framework.Framework;
1820
import dev.terminalmc.framework.config.Config;
@@ -419,7 +421,7 @@ static Screen getConfigScreen(Screen parent) {
419421
// Special option utils
420422
private static Item asItem(String s) {
421423
try {
422-
return BuiltInRegistries.ITEM.get(ResourceLocation.parse(s));
424+
return BuiltInRegistries.ITEM.get(new ResourceLocation(s));
423425
} catch (ResourceLocationException e) {
424426
return BuiltInRegistries.ITEM.get(BuiltInRegistries.ITEM.getDefaultKey());
425427
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
# https://docs.neoforged.net/docs/advanced/accesstransformers
1+
# https://docs.minecraftforge.net/en/latest/advanced/accesstransformers
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"pack": {
3+
"description": "${mod_name}",
4+
"pack_format": 8
5+
}
6+
}

0 commit comments

Comments
 (0)