114 lines
3.8 KiB
Groovy
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"
|
|
])
|
|
}
|
|
}
|