webdisplays/build.gradle

114 lines
3.8 KiB
Groovy

plugins {
id 'eclipse'
id 'maven-publish'
id 'net.neoforged.gradle' version '[6.0.18,6.2)'
id 'org.spongepowered.mixin' version '0.7.+'
id 'org.parchmentmc.librarian.forgegradle' version '1.+'
}
apply plugin: 'org.spongepowered.mixin'
println('Java: ' + System.getProperty('java.version') + ' JVM: ' + System.getProperty('java.vm.version') + '(' + System.getProperty('java.vendor') + ') Arch: ' + System.getProperty('os.arch'))
version = mod_version
group = maven_group // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = archives_base_name
// set java version
java.toolchain.languageVersion = JavaLanguageVersion.of(17)
// required for making a functional mod
sourceSets.main.resources.srcDirs += 'src/generated/resources'
mixin.add sourceSets.main, "webdisplays.refmap.json"
// neoforge gradle
minecraft {
mappings channel: 'parchment', version: '2023.06.26-1.20.1'
accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')
copyIdeResources = true
runs {
client {
properties 'mixin.env.remapRefMap': 'true'
property 'mixin.env.refMapRemappingFile', "${project.projectDir}/build/createSrgToMcp/output.srg"
workingDirectory project.file('run')
arg "-mixin.config=webdisplays.mixins.json"
property 'forge.logging.console.level', 'debug'
mods {
webdisplays {
source sourceSets.main
}
}
}
server {
properties 'mixin.env.remapRefMap': 'true'
property 'mixin.env.refMapRemappingFile', "${project.projectDir}/build/createSrgToMcp/output.srg"
workingDirectory project.file('run')
arg "-mixin.config=webdisplays.mixins.json"
property 'forge.logging.console.level', 'debug'
mods {
webdisplays {
source sourceSets.main
}
}
}
data {
workingDirectory project.file('run')
properties 'mixin.env.remapRefMap': 'true'
property 'mixin.env.refMapRemappingFile', "${project.projectDir}/build/createSrgToMcp/output.srg"
property 'forge.logging.console.level', 'debug'
args '--mod', 'webdisplays', '--all', '--output', file('src/generated/resources/'), '--existing', sourceSets.main.resources.srcDirs[0]
mods {
webdisplays {
source sourceSets.main
}
}
}
}
}
repositories{
maven {
name = "cursemaven"
url = "https://www.cursemaven.com"
}
maven { url 'https://mcef-download.cinemamod.com/repositories/releases/' }
}
dependencies {
minecraft 'net.neoforged:forge:1.20.1-47.1.65'
annotationProcessor 'org.spongepowered:mixin:0.8.5:processor'
// useful for debugging performance problems
implementation fg.deobf("curse.maven:spark-361579:4381167")
// here because we need to manually open the VR keyboard
compileOnly fg.deobf("curse.maven:vivecraft-667903:4794431")
implementation fg.deobf("com.cinemamod:mcef-forge:2.1.1-1.20.1") {
transitive = false
}
}
// jar meta-info
jar {
manifest {
attributes([
"Specification-Title": "Webdisplays",
"Specification-Vendor": "CinemaMod Group",
"Specification-Version": "1", // We are version 1 of ourselves
"Implementation-Title": project.name,
"Implementation-Version": project.version,
"Implementation-Vendor": "CinemaMod Group",
"Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"),
"MixinConfigs": "webdisplays.mixins.json"
])
}
}