60 lines
1.5 KiB
Groovy
60 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
|
||
|
}
|