Skip to content

Commit 0ecbd04

Browse files
committed
Backport to mc1.20.1
1 parent 0e61e3d commit 0ecbd04

57 files changed

Lines changed: 772 additions & 556 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.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/chatnotify/ChatNotify.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ public static void afterClientTick(Minecraft mc) {
8787
if (hasResetConfig && mc.screen instanceof TitleScreen) {
8888
hasResetConfig = false;
8989
mc.getToasts().addToast(new SystemToast(
90-
new SystemToast.SystemToastId(15000L),
90+
SystemToast.SystemToastIds.UNSECURE_SERVER_WARNING,
9191
localized("toast", "reset.title"),
9292
localized(
9393
"toast",

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

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -273,11 +273,11 @@ public Config() {
273273

274274
public Notification getUserNotif() {
275275
validateUserNotif();
276-
return notifications.getFirst();
276+
return notifications.get(0);
277277
}
278278

279279
public void setProfileName(String name) {
280-
getUserNotif().triggers.getFirst().string = name;
280+
getUserNotif().triggers.get(0).string = name;
281281
}
282282

283283
public void setDisplayName(String name) {
@@ -477,7 +477,7 @@ private Config validate() {
477477
// Validate notifications and remove any blank instances except first
478478
notifications.removeIf((n) -> {
479479
n.validate();
480-
return (n != notifications.getFirst() && n.triggers.isEmpty()
480+
return (n != notifications.get(0) && n.triggers.isEmpty()
481481
&& n.exclusionTriggers.isEmpty() && n.responses.isEmpty());
482482
});
483483

@@ -491,7 +491,7 @@ private void validateUserNotif() {
491491
if (notifications.isEmpty()) {
492492
ChatNotify.LOG.error("Username notification does not exist! Creating...");
493493
notifications.add(Notification.createUser());
494-
} else if (notifications.getFirst().triggers.size() < 2) {
494+
} else if (notifications.get(0).triggers.size() < 2) {
495495
ChatNotify.LOG.error("Username notification missing triggers! Recreating...");
496496
notifications.set(0, Notification.createUser());
497497
}

common/src/main/java/dev/terminalmc/chatnotify/gui/screen/NotifScreen.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,7 @@ private static OptionList getTriggerList(OptionScreen screen) {
139139
0,
140140
0,
141141
0,
142+
0,
142143
BASE_LIST_ENTRY_WIDTH,
143144
LIST_ENTRY_HEIGHT,
144145
LIST_ENTRY_SPACING,
@@ -201,6 +202,7 @@ private static OptionList getFormatList(OptionScreen screen) {
201202
0,
202203
0,
203204
0,
205+
0,
204206
BASE_LIST_ENTRY_WIDTH,
205207
LIST_ENTRY_HEIGHT,
206208
LIST_ENTRY_SPACING,
@@ -215,6 +217,7 @@ private static OptionList getSoundList(OptionScreen screen) {
215217
0,
216218
0,
217219
0,
220+
0,
218221
BASE_LIST_ENTRY_WIDTH,
219222
LIST_ENTRY_HEIGHT,
220223
cast(screen).notif.sound
@@ -229,6 +232,7 @@ private static OptionList getInclusionList(OptionScreen screen) {
229232
0,
230233
0,
231234
0,
235+
0,
232236
BASE_LIST_ENTRY_WIDTH,
233237
LIST_ENTRY_HEIGHT,
234238
LIST_ENTRY_SPACING,
@@ -265,6 +269,7 @@ private static OptionList getExclusionList(OptionScreen screen) {
265269
0,
266270
0,
267271
0,
272+
0,
268273
BASE_LIST_ENTRY_WIDTH,
269274
LIST_ENTRY_HEIGHT,
270275
LIST_ENTRY_SPACING,
@@ -301,6 +306,7 @@ private static OptionList getResponsesList(OptionScreen screen) {
301306
0,
302307
0,
303308
0,
309+
0,
304310
BASE_LIST_ENTRY_WIDTH,
305311
LIST_ENTRY_HEIGHT,
306312
LIST_ENTRY_SPACING,
@@ -333,6 +339,7 @@ private static OptionList getMiscList(OptionScreen screen) {
333339
0,
334340
0,
335341
0,
342+
0,
336343
BASE_LIST_ENTRY_WIDTH,
337344
LIST_ENTRY_HEIGHT,
338345
LIST_ENTRY_SPACING,

0 commit comments

Comments
 (0)