mirror of
https://github.com/TeamMidnightDust/PictureSign.git
synced 2025-12-11 12:05:09 +01:00
- A huge cleanup of the codebase - Make use of the Architectury build system - Replaced VideoLib with WATERMeDIA (More features, better stability, multiplatform support)
117 lines
3.1 KiB
Groovy
117 lines
3.1 KiB
Groovy
plugins {
|
|
id 'com.github.johnrengelman.shadow'
|
|
id "me.shedaniel.unified-publishing"
|
|
}
|
|
|
|
repositories {
|
|
maven {
|
|
name = 'NeoForged'
|
|
url = 'https://maven.neoforged.net/releases'
|
|
}
|
|
}
|
|
|
|
|
|
architectury {
|
|
platformSetupLoomIde()
|
|
neoForge()
|
|
}
|
|
|
|
loom {
|
|
accessWidenerPath = project(":common").loom.accessWidenerPath
|
|
}
|
|
|
|
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
|
|
}
|
|
archivesBaseName = rootProject.archives_base_name + "-neoforge"
|
|
}
|
|
|
|
dependencies {
|
|
neoForge "net.neoforged:neoforge:$rootProject.neoforge_version"
|
|
modImplementation include ("maven.modrinth:midnightlib:${rootProject.midnightlib_version}-neoforge")
|
|
|
|
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
|
|
}
|
|
|
|
sourcesJar {
|
|
def commonSources = project(":common").sourcesJar
|
|
dependsOn commonSources
|
|
from commonSources.archiveFile.map { zipTree(it) }
|
|
}
|
|
|
|
components.java {
|
|
withVariantsFromConfiguration(project.configurations.shadowRuntimeElements) {
|
|
skip()
|
|
}
|
|
}
|
|
|
|
unifiedPublishing {
|
|
project {
|
|
displayName = "PictureSign $project.version - NeoForge $project.minecraft_version"
|
|
releaseType = "$project.release_type"
|
|
changelog = releaseChangelog()
|
|
gameVersions = []
|
|
gameLoaders = ["neoforge"]
|
|
mainPublication remapJar
|
|
relations {
|
|
depends {
|
|
curseforge = "watermedia"
|
|
modrinth = "watermedia"
|
|
}
|
|
includes {
|
|
curseforge = "midnightlib"
|
|
modrinth = "midnightlib"
|
|
}
|
|
}
|
|
|
|
var CURSEFORGE_TOKEN = project.findProperty("CURSEFORGE_TOKEN") ?: System.getenv("CURSEFORGE_TOKEN")
|
|
if (CURSEFORGE_TOKEN != null) {
|
|
curseforge {
|
|
token = CURSEFORGE_TOKEN
|
|
id = rootProject.curseforge_id
|
|
gameVersions.addAll "Java 21", project.minecraft_version
|
|
}
|
|
}
|
|
|
|
var MODRINTH_TOKEN = project.findProperty("MODRINTH_TOKEN") ?: System.getenv("MODRINTH_TOKEN")
|
|
if (MODRINTH_TOKEN != null) {
|
|
modrinth {
|
|
token = MODRINTH_TOKEN
|
|
id = rootProject.modrinth_id
|
|
version = "$project.version-$project.name"
|
|
gameVersions.addAll project.minecraft_version
|
|
}
|
|
}
|
|
}
|
|
}
|