67 lines
2.8 KiB
Groovy
67 lines
2.8 KiB
Groovy
plugins {
|
|
id 'base'
|
|
id 'net.fabricmc.fabric-loom' version "${loom_version}" apply false
|
|
}
|
|
|
|
tasks.named('build') { dependsOn(':sanctuary:build', ':demeure:build', ':jei:build', ':sanctuary-test:build') }
|
|
tasks.named('check') { dependsOn(':sanctuary:check', ':demeure:check', ':jei:check', ':sanctuary-test:check', 'verifyPack') }
|
|
|
|
tasks.register('verifyPack', Exec) {
|
|
group = 'verification'
|
|
description = 'Verify pinned pack dependencies, versions and index hashes.'
|
|
commandLine('python3', 'scripts/pack.py', 'check')
|
|
}
|
|
|
|
tasks.register('assemblePack', Exec) {
|
|
group = 'distribution'
|
|
description = 'Assemble a local packwiz pack including the built Sanctuary mod.'
|
|
dependsOn(':sanctuary:build', 'verifyPack', 'assembleResourcePack', 'assembleResourceTemplate')
|
|
commandLine('python3', 'scripts/pack.py', 'assemble')
|
|
}
|
|
|
|
tasks.register('verifyResourcePack', Exec) {
|
|
group = 'verification'
|
|
description = 'Verify the versioned Sanctuary texture sources and their release hashes.'
|
|
commandLine('python3', 'scripts/resource_pack.py')
|
|
}
|
|
tasks.named('check') { dependsOn('verifyResourcePack') }
|
|
|
|
tasks.register('assembleResourcePack', Zip) {
|
|
group = 'distribution'
|
|
description = 'Export the same textures as the built-in resource pack for standalone use.'
|
|
dependsOn('verifyResourcePack')
|
|
from('ressources-pack/sanctuary') {
|
|
include 'assets/**', 'pack.mcmeta', 'pack.png'
|
|
exclude '**/.DS_Store'
|
|
}
|
|
destinationDirectory = layout.buildDirectory
|
|
archiveFileName = "Sanctuary-Resource-Pack-${resource_pack_version}.zip"
|
|
preserveFileTimestamps = false
|
|
reproducibleFileOrder = true
|
|
}
|
|
|
|
tasks.register('assembleTestPack', Exec) {
|
|
group = 'distribution'
|
|
description = 'Stage the separate flat-world Sanctuary Test profile.'
|
|
dependsOn('assemblePack', ':sanctuary-test:build')
|
|
commandLine('python3', 'scripts/test_pack.py')
|
|
}
|
|
|
|
tasks.register('assembleResourceTemplate', Zip) {
|
|
group = 'distribution'
|
|
description = 'Export all Sanctuary client assets as an editable personal resource pack.'
|
|
dependsOn(':sanctuary:processResources', 'verifyResourcePack')
|
|
def resources = project(':sanctuary').layout.buildDirectory.dir('resources/main')
|
|
// Same precedence as the native exporter: built-in textures override mod defaults.
|
|
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
|
|
from(resources.map { it.dir('resourcepacks/textures/assets') }) { into 'assets' }
|
|
from(resources.map { it.dir('assets') }) { into 'assets' }
|
|
from(resources.map { it.dir('resourcepacks/template') })
|
|
from(resources.map { it.file('resourcepacks/textures/pack.png') })
|
|
exclude '**/.DS_Store'
|
|
destinationDirectory = layout.buildDirectory
|
|
archiveFileName = "Sanctuary-Template-${mod_version}.zip"
|
|
preserveFileTimestamps = false
|
|
reproducibleFileOrder = true
|
|
}
|