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:1.21.5-R0.1-SNAPSHOT") 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("1.21.5") } } 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