106 lines
2.7 KiB
Kotlin
106 lines
2.7 KiB
Kotlin
import org.sayandev.plugin.StickyNoteModules
|
|
|
|
plugins {
|
|
java
|
|
kotlin("jvm") version "2.1.21"
|
|
id("xyz.jpenilla.run-paper") version "2.3.1"
|
|
id("de.eldoria.plugin-yml.bukkit") version "0.7.1"
|
|
id("org.sayandev.stickynote.project")
|
|
}
|
|
|
|
val slug = rootProject.name.lowercase()
|
|
group = "xyz.lncvrt"
|
|
version = "1.0.0"
|
|
|
|
stickynote {
|
|
modules(StickyNoteModules.BUKKIT)
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
mavenLocal()
|
|
|
|
maven("https://repo.sayandev.org/snapshots")
|
|
maven("https://repo.sayandev.org/releases")
|
|
maven("https://repo.sayandev.org/private")
|
|
maven("https://repo.lncvrt.xyz/releases")
|
|
maven("https://repo.lncvrt.xyz/snapshots")
|
|
}
|
|
|
|
dependencies {
|
|
compileOnly("io.papermc.paper:paper-api:1.21.8-R0.1-SNAPSHOT")
|
|
compileOnly("xyz.lncvrt:galaxyapi:1.0.6")
|
|
}
|
|
|
|
tasks {
|
|
jar {
|
|
manifest {
|
|
attributes["paperweight-mappings-namespace"] = "mojang"
|
|
}
|
|
}
|
|
|
|
shadowJar {
|
|
archiveFileName.set("${rootProject.name}-${version}.jar")
|
|
archiveClassifier.set(null as String?)
|
|
destinationDirectory.set(file(rootProject.projectDir.path + "/bin"))
|
|
manifest {
|
|
attributes["paperweight-mappings-namespace"] = "mojang"
|
|
}
|
|
}
|
|
|
|
runServer {
|
|
minecraftVersion("1.20.1")
|
|
|
|
javaLauncher = project.javaToolchains.launcherFor {
|
|
vendor = JvmVendorSpec.JETBRAINS
|
|
languageVersion = JavaLanguageVersion.of("21")
|
|
}
|
|
|
|
jvmArgs("-XX:+AllowEnhancedClassRedefinition")
|
|
}
|
|
|
|
compileJava {
|
|
options.encoding = Charsets.UTF_8.name()
|
|
}
|
|
|
|
configurations {
|
|
create("compileOnlyApiResolved") {
|
|
isCanBeResolved = true
|
|
extendsFrom(configurations.getByName("compileOnlyApi"))
|
|
}
|
|
}
|
|
|
|
build {
|
|
dependsOn(shadowJar)
|
|
}
|
|
|
|
processResources {
|
|
filesMatching(listOf("**plugin.yml", "**plugin.json")) {
|
|
expand(
|
|
"version" to project.version as String,
|
|
"slug" to slug,
|
|
"name" to rootProject.name
|
|
)
|
|
}
|
|
}
|
|
}
|
|
|
|
bukkit {
|
|
main = "$group.${slug}.${rootProject.name}Plugin"
|
|
version = rootProject.version.toString()
|
|
website = "lncvrt.xyz"
|
|
foliaSupported = true
|
|
apiVersion = "1.20"
|
|
depend = listOf()
|
|
authors = listOf("Lncvrt")
|
|
prefix = rootProject.name
|
|
}
|
|
|
|
java {
|
|
disableAutoTargetJvm()
|
|
if (gradle.startParameter.getTaskNames().any { it.startsWith("runServer") || it.startsWith("runFolia") || it.startsWith("runVelocity") }) {
|
|
toolchain.languageVersion.set(JavaLanguageVersion.of(21))
|
|
} else {
|
|
toolchain.languageVersion.set(JavaLanguageVersion.of(21))
|
|
}
|
|
} |