-buildscript {
- repositories {
- maven { url "https://files.minecraftforge.net/maven" }
- jcenter()
- mavenCentral()
+plugins {
+ id "com.github.johnrengelman.shadow" version "7.1.2"
+}
+
+configurations {
+ shadow
+}
+
+architectury {
+ platformSetupLoomIde()
+ forge()
+}
+
+loom {
+ forge {
+ mixinConfig "lightoverlay-forge.mixins.json"
}
- dependencies {
- classpath(group: "net.minecraftforge.gradle", name: "ForgeGradle", version: "3.+", changing: true)
+}
+
+processResources {
+ filesMatching("META-INF/mods.toml") {
+ expand "version": project.version
}
+ inputs.property "META-INF/mods.toml", project.version
}
-plugins {
- id("com.wynprice.cursemaven") version("2.1.1")
-}
-
-apply plugin: "net.minecraftforge.gradle"
-apply plugin: "eclipse"
-
-minecraft {
- mappings(channel: "snapshot", version: rootProject.mcp_snapshot)
- runs {
- client {
- workingDirectory project.file("run")
- mods {
- examplemod {
- source sourceSets.main
- }
- }
- }
- server {
- workingDirectory project.file("run")
- mods {
- examplemod {
- source sourceSets.main
- }
- }
- }
+dependencies {
+ minecraft("com.mojang:minecraft:${rootProject.architectury.minecraft}")
+ mappings(loom.officialMojangMappings())
+ forge("net.minecraftforge:forge:${rootProject.architectury.minecraft}-${project.forge_version}")
+ modImplementation("me.shedaniel.cloth:cloth-config-forge:${rootProject.cloth_config_version}")
+ modImplementation("dev.architectury:architectury-forge:${rootProject.architectury_version}")
+
+ implementation(project(path: ":common", configuration: "namedElements")) {
+ transitive = false
+ }
+ developmentForge(project(path: ":common", configuration: "namedElements")) {
+ transitive = false
+ }
+ shadow(project(path: ":common", configuration: "transformProductionForge")) {
+ transitive = false
}
}
-repositories {
- maven { url "https://files.minecraftforge.net/maven" }
+shadowJar {
+ relocate "me.shedaniel.lightoverlay.common", "me.shedaniel.lightoverlay.common.forge"
+ exclude "fabric.mod.json"
+
+ configurations = [project.configurations.shadow]
+ archiveClassifier.set("shadow")
}
-dependencies {
- minecraft("net.minecraftforge:forge:${rootProject.forge_minecraft_version}-31.1.39")
- implementation(fg.deobf("curse.maven:cloth-config-forge:${rootProject.cloth_config_forge_commit}"))
-}
\ No newline at end of file
+prepareRemapJar {
+ dependsOn(shadowJar)
+}
+
+remapJar {
+ dependsOn(shadowJar)
+ inputFile.set(shadowJar.archivePath)
+ archiveClassifier.set("forge")
+}