plugins {
id "com.github.johnrengelman.shadow" version "7.0.0"
id "com.modrinth.minotaur" version "1.2.1"
}
configurations {
shadowCommon // Don't use shadow from the shadow plugin because we don't want IDEA to index this.
}
architectury {
platformSetupLoomIde()
fabric()
}
dependencies {
modImplementation "net.fabricmc:fabric-loader:${rootProject.fabric_loader_version}"
modApi "net.fabricmc.fabric-api:fabric-api:${rootProject.fabric_api_version}"
// Remove the next line if you don't want to depend on the API
modApi "dev.architectury:architectury-fabric:${rootProject.architectury_version}"
implementation(project(path: ":common", configuration: "dev")) {
transitive = false
}
developmentFabric(project(path: ":common", configuration: "dev")) {
transitive = false
}
shadowCommon(project(path: ":common", configuration: "transformProductionFabric")) {
transitive = false
}
}
processResources {
inputs.property "version", project.version
filesMatching("fabric.mod.json") {
expand "version": project.version
}
}
shadowJar {
configurations = [project.configurations.shadowCommon]
classifier "dev-shadow"
}
remapJar {
input.set shadowJar.archiveFile
dependsOn shadowJar
classifier "fabric"
}
jar {
classifier "dev"
}
sourcesJar {
def commonSources = project(":common").sourcesJar
dependsOn commonSources
from commonSources.archiveFile.map { zipTree(it) }
}
publishing {
publications {
mavenFabric(MavenPublication) {
artifactId = rootProject.archives_base_name + "-" + project.name
// add all the jars that should be included when publishing to maven
artifact(remapJar) {
classifier null
}
artifact(sourcesJar) {
builtBy remapSourcesJar
}
}
}
// See https://docs.gradle.org/current/userguide/publishing_maven.html for information on how to set up publishing.
repositories {
// Add repositories to publish to here.
}
}
import com.modrinth.minotaur.TaskModrinthUpload
String fileContents = new File("./", "CHANGELOG.md").text
task publishModrinth (type: TaskModrinthUpload) {
token = project.findProperty('modrinth_key')
projectId = 'Cprd9pHZ'
versionNumber = 'fabric-' + mod_version
versionName = mod_version + '-' + project.minecraft_version
uploadFile = jar.outputs.getFiles().asPath
changelog = fileContents
addGameVersion(project.minecraft_version)
addLoader('fabric')
}