59 lines
1.5 KiB
Groovy
59 lines
1.5 KiB
Groovy
plugins {
|
|
id 'com.github.johnrengelman.shadow'
|
|
}
|
|
|
|
architectury {
|
|
platformSetupLoomIde()
|
|
neoForge()
|
|
}
|
|
|
|
configurations {
|
|
common {
|
|
canBeResolved = true
|
|
canBeConsumed = false
|
|
}
|
|
compileClasspath.extendsFrom common
|
|
runtimeClasspath.extendsFrom common
|
|
developmentNeoForge.extendsFrom common
|
|
|
|
// Files in this configuration will be bundled into your mod using the Shadow plugin.
|
|
// Don't use the `shadow` configuration from the plugin itself as it's meant for excluding files.
|
|
shadowBundle {
|
|
canBeResolved = true
|
|
canBeConsumed = false
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
maven {
|
|
name = 'NeoForged'
|
|
url = 'https://maven.neoforged.net/releases'
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
neoForge "net.neoforged:neoforge:$rootProject.neoforge_version"
|
|
|
|
// Architectury API. This is optional, and you can comment it out if you don't need it.
|
|
modImplementation "dev.architectury:architectury-neoforge:$rootProject.architectury_api_version"
|
|
|
|
common(project(path: ':common', configuration: 'namedElements')) { transitive false }
|
|
shadowBundle project(path: ':common', configuration: 'transformProductionNeoForge')
|
|
}
|
|
|
|
processResources {
|
|
inputs.property 'version', project.version
|
|
|
|
filesMatching('META-INF/neoforge.mods.toml') {
|
|
expand version: project.version
|
|
}
|
|
}
|
|
|
|
shadowJar {
|
|
configurations = [project.configurations.shadowBundle]
|
|
archiveClassifier = 'dev-shadow'
|
|
}
|
|
|
|
remapJar {
|
|
input.set shadowJar.archiveFile
|
|
}
|