88 lines
1.9 KiB
Kotlin
88 lines
1.9 KiB
Kotlin
import org.gradle.jvm.toolchain.JavaLanguageVersion
|
|
import org.gradle.api.file.DuplicatesStrategy
|
|
|
|
plugins {
|
|
id("com.gradleup.shadow") version "9.0.0-rc1"
|
|
}
|
|
|
|
java {
|
|
toolchain {
|
|
languageVersion.set(JavaLanguageVersion.of(25))
|
|
}
|
|
}
|
|
|
|
sourceSets {
|
|
main {
|
|
java.setSrcDirs(listOf("plugins/mmorpg/src/main/java"))
|
|
resources.setSrcDirs(listOf("plugins/mmorpg/src/main/resources"))
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
implementation("org.xerial:sqlite-jdbc:3.47.2.0")
|
|
implementation("com.google.code.gson:gson:2.11.0")
|
|
implementation("at.favre.lib:bcrypt:0.10.2")
|
|
}
|
|
|
|
tasks.shadowJar {
|
|
archiveClassifier.set("")
|
|
mergeServiceFiles()
|
|
duplicatesStrategy = DuplicatesStrategy.INCLUDE
|
|
}
|
|
|
|
tasks.jar {
|
|
enabled = false
|
|
}
|
|
|
|
tasks.assemble {
|
|
dependsOn(tasks.shadowJar)
|
|
}
|
|
|
|
tasks.build {
|
|
dependsOn(tasks.shadowJar)
|
|
}
|
|
|
|
tasks.register<Delete>("cleanDevModUiAssets") {
|
|
delete("src/main/resources/Common")
|
|
}
|
|
|
|
tasks.register<Delete>("cleanDevModAssetPack") {
|
|
delete("devserver/mods/com.disklexar_MMORPG/Common")
|
|
delete("devserver/mods/com.disklexar_MMORPG/manifest.json")
|
|
}
|
|
|
|
tasks.register<Copy>("syncDevModAssetPack") {
|
|
dependsOn("cleanDevModAssetPack")
|
|
from("plugins/mmorpg/src/main/resources") {
|
|
include("Common/**")
|
|
include("manifest.json")
|
|
}
|
|
into("devserver/mods/com.disklexar_MMORPG")
|
|
}
|
|
|
|
tasks.register<Copy>("syncDevModAssets") {
|
|
dependsOn("generateManifest", "cleanDevModUiAssets", "syncDevModAssetPack")
|
|
from("plugins/mmorpg/src/main/resources") {
|
|
include("Server/**")
|
|
include("Common/**")
|
|
include("manifest.json")
|
|
}
|
|
into("src/main/resources")
|
|
}
|
|
|
|
tasks.named("runServer") {
|
|
dependsOn("syncDevModAssets")
|
|
}
|
|
|
|
tasks.named("setupServer") {
|
|
dependsOn("syncDevModAssets")
|
|
}
|
|
|
|
tasks.named("processResources") {
|
|
finalizedBy("syncDevModAssets")
|
|
}
|