94 lines
No EOL
2.4 KiB
Groovy
94 lines
No EOL
2.4 KiB
Groovy
import com.ncguy.usefulskyblock.generators.AdvancementGenerator
|
|
|
|
plugins {
|
|
id 'java'
|
|
id 'idea'
|
|
id 'org.jetbrains.kotlin.jvm'
|
|
id("xyz.jpenilla.run-paper") version "2.3.1"
|
|
id("net.devrieze.gradlecodegen") version "0.6.0"
|
|
}
|
|
|
|
group = 'com.ncguy'
|
|
version = '1.0-SNAPSHOT'
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
maven { url 'https://jitpack.io' }
|
|
maven {
|
|
name = "papermc-repo"
|
|
url = "https://repo.papermc.io/repository/maven-public/"
|
|
}
|
|
maven {
|
|
name = "sonatype"
|
|
url = "https://oss.sonatype.org/content/groups/public/"
|
|
}
|
|
maven {
|
|
name = "multiverseMultiverseReleases"
|
|
url = uri("https://repo.onarandombox.com/multiverse-releases")
|
|
}
|
|
|
|
}
|
|
|
|
dependencies {
|
|
compileOnly("io.papermc.paper:paper-api:${minecraft_version}${paper_version_suffix}")
|
|
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
|
|
|
|
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
|
|
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
|
|
|
|
testImplementation("com.google.code.gson:gson:2.13.1")
|
|
}
|
|
|
|
tasks {
|
|
runServer {
|
|
// Configure the Minecraft version for our task.
|
|
// This is the only required configuration besides applying the plugin.
|
|
// Your plugin's jar (or shadowJar if present) will be used automatically.
|
|
minecraftVersion("${minecraft_version}")
|
|
}
|
|
}
|
|
|
|
def targetJavaVersion = 21
|
|
java {
|
|
def javaVersion = JavaVersion.toVersion(targetJavaVersion)
|
|
if (JavaVersion.current() < javaVersion) {
|
|
toolchain.languageVersion = JavaLanguageVersion.of(targetJavaVersion)
|
|
}
|
|
}
|
|
|
|
tasks.withType(JavaCompile).configureEach {
|
|
options.encoding = 'UTF-8'
|
|
|
|
if (targetJavaVersion >= 10 || JavaVersion.current().isJava10Compatible()) {
|
|
options.release.set(targetJavaVersion)
|
|
}
|
|
}
|
|
|
|
task generateAdvancements {
|
|
doLast {
|
|
AdvancementGenerator.generate(file("src/main/resources/datapacks/usefulskyblock/data/usefulskyblock/advancement"),
|
|
file("src/main/gen/com/ncguy/usefulskyblock/Advancements.java"))
|
|
}
|
|
}
|
|
|
|
task generateAll {
|
|
dependsOn += generateAdvancements
|
|
}
|
|
|
|
generate.dependsOn += generateAll
|
|
|
|
processResources {
|
|
def props = [version: version]
|
|
inputs.properties props
|
|
filteringCharset 'UTF-8'
|
|
filesMatching('plugin.yml') {
|
|
expand props
|
|
}
|
|
}
|
|
kotlin {
|
|
jvmToolchain(21)
|
|
}
|
|
|
|
File genSrc = file('src/main/gen')
|
|
sourceSets.main.java.srcDirs += genSrc
|
|
idea.module.generatedSourceDirs += genSrc |