From cf04781a6b55581d19bfda538dcacadd93e16868 Mon Sep 17 00:00:00 2001 From: Caroline Joy Bell Date: Tue, 6 Aug 2024 13:14:53 -0500 Subject: [PATCH 1/2] Wisp Forest Maven --- .../xyz/wagyourtail/unimined/api/UniminedExtension.kt | 1 + .../xyz/wagyourtail/unimined/UniminedExtensionImpl.kt | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/src/api/kotlin/xyz/wagyourtail/unimined/api/UniminedExtension.kt b/src/api/kotlin/xyz/wagyourtail/unimined/api/UniminedExtension.kt index d332f04d..b25551cd 100644 --- a/src/api/kotlin/xyz/wagyourtail/unimined/api/UniminedExtension.kt +++ b/src/api/kotlin/xyz/wagyourtail/unimined/api/UniminedExtension.kt @@ -255,6 +255,7 @@ abstract class UniminedExtension(val project: Project) { @Deprecated("Use glassLauncherMaven(\"babric\") instead", ReplaceWith("glassLauncherMaven(\"babric\")")) abstract fun babricMaven() abstract fun glassLauncherMaven(name: String) + abstract fun wispForestMaven(name: String = "releases") abstract fun parchmentMaven() abstract fun neoForgedMaven() diff --git a/src/main/kotlin/xyz/wagyourtail/unimined/UniminedExtensionImpl.kt b/src/main/kotlin/xyz/wagyourtail/unimined/UniminedExtensionImpl.kt index 403be337..d9a66250 100644 --- a/src/main/kotlin/xyz/wagyourtail/unimined/UniminedExtensionImpl.kt +++ b/src/main/kotlin/xyz/wagyourtail/unimined/UniminedExtensionImpl.kt @@ -174,6 +174,17 @@ open class UniminedExtensionImpl(project: Project) : UniminedExtension(project) project.logger.info("[Unimined] adding Glass Launcher maven: ${glassLauncherMaven[name]}") } + val wispForestMaven = defaultedMapOf { name -> + project.repositories.maven { + it.name = "Wisp Forest" + it.url = URI.create("https://maven.wispforest.io/$name") + } + } + + override fun wispForestMaven(name: String) { + project.logger.info("[Unimined] adding Wisp Forest maven: ${wispForestMaven[name]}") + } + val wagYourMaven = defaultedMapOf { name -> project.repositories.maven { it.name = "WagYourTail (${name.capitalized()})" From 95932300b2483fc84d47f35d1ec76d0800474291 Mon Sep 17 00:00:00 2001 From: Caroline Joy Bell Date: Tue, 6 Aug 2024 13:16:35 -0500 Subject: [PATCH 2/2] Nostalgia mappings --- .../unimined/api/mapping/MappingsConfig.kt | 32 +++++++++++++++++++ .../internal/mapping/MappingsProvider.kt | 20 +++++++++++- 2 files changed, 51 insertions(+), 1 deletion(-) diff --git a/src/api/kotlin/xyz/wagyourtail/unimined/api/mapping/MappingsConfig.kt b/src/api/kotlin/xyz/wagyourtail/unimined/api/mapping/MappingsConfig.kt index 6fd3115d..52e49a69 100644 --- a/src/api/kotlin/xyz/wagyourtail/unimined/api/mapping/MappingsConfig.kt +++ b/src/api/kotlin/xyz/wagyourtail/unimined/api/mapping/MappingsConfig.kt @@ -349,6 +349,38 @@ abstract class MappingsConfig>(val project: Project, val m } } + @JvmOverloads + fun nostalgia( + build: String, + key: String = "nostalgia", + @DelegatesTo(value = MappingEntry::class, strategy = Closure.DELEGATE_FIRST) + action: Closure<*> + ) { + nostalgia(build.toInt(), key, action) + } + + @JvmOverloads + abstract fun nostalgia(build: Int, key: String = "nostalgia", action: MappingEntry.() -> Unit = {}) + + @JvmOverloads + fun nostalgia(build: String, key: String = "nostalgia", action: MappingEntry.() -> Unit = {}) { + nostalgia(build.toInt(), key, action) + } + + @JvmOverloads + fun nostalgia( + build: Int, + key: String = "nostalgia", + @DelegatesTo(value = MappingEntry::class, strategy = Closure.DELEGATE_FIRST) + action: Closure<*> + ) { + nostalgia(build, key) { + action.delegate = this + action.resolveStrategy = Closure.DELEGATE_FIRST + action.call() + } + } + @JvmOverloads abstract fun quilt(build: Int, key: String = "quilt", action: MappingEntry.() -> Unit = {}) diff --git a/src/mapping/kotlin/xyz/wagyourtail/unimined/internal/mapping/MappingsProvider.kt b/src/mapping/kotlin/xyz/wagyourtail/unimined/internal/mapping/MappingsProvider.kt index 31302d99..38e691ab 100644 --- a/src/mapping/kotlin/xyz/wagyourtail/unimined/internal/mapping/MappingsProvider.kt +++ b/src/mapping/kotlin/xyz/wagyourtail/unimined/internal/mapping/MappingsProvider.kt @@ -461,7 +461,25 @@ class MappingsProvider(project: Project, minecraft: MinecraftConfig, subKey: Str } } - + override fun nostalgia(build: Int, key: String, action: MappingEntry.() -> Unit) { + unimined.wispForestMaven() + val entry = MappingEntry(contentOf( + MavenCoords( + "me.alphamode", + "nostalgia", + "${minecraft.version}+build.$build", + )), "$key-$build" + ).apply { + requires("babricIntermediary") + provides("nostalgia" to true) + action() + } + addDependency(key, entry) + afterLoad.add { + renest(entry.requires.name, *entry.provides.map { it.first.name }.toTypedArray()) + } + } + override fun quilt(build: Int, key: String, action: MappingEntry.() -> Unit) { unimined.quiltMaven() val entry = MappingEntry(contentOf(