fix: colors, /dbd join flow, world creation, role assign, action bar lobby, /dbdadmin world, tab complete
This commit is contained in:
parent
327ad9b906
commit
1adb8c84fd
19 changed files with 874 additions and 112 deletions
|
|
@ -21,26 +21,30 @@ java {
|
|||
toolchain.languageVersion = JavaLanguageVersion.of(21)
|
||||
}
|
||||
|
||||
tasks.withType<JavaCompile> {
|
||||
options.encoding = "UTF-8"
|
||||
}
|
||||
|
||||
val obfuscateTask = tasks.register<JavaExec>("obfuscate") {
|
||||
description = "Obfuscate the plugin jar using ProGuard"
|
||||
mainClass.set("proguard.ProGuard")
|
||||
classpath = proguardConfig
|
||||
|
||||
val inJar = tasks.named<Jar>("jar").get().archiveFile.get().asFile.path
|
||||
val outJar = layout.buildDirectory.file("libs/${project.name}-${version}-obf.jar").get().asFile.path
|
||||
val jarFile = tasks.named<Jar>("jar").get().archiveFile.get().asFile
|
||||
// Write to separate dir — avoids conflicts with jar task output on Windows
|
||||
val obfJar = layout.buildDirectory.file("obfuscated/${project.name}-${version}.jar").get().asFile
|
||||
|
||||
args(
|
||||
"-injars", inJar,
|
||||
"-outjars", outJar,
|
||||
"-injars", jarFile.path,
|
||||
"-outjars", obfJar.path,
|
||||
"-dontwarn",
|
||||
"-ignorewarnings",
|
||||
|
||||
"-keep", "class dev.loki.mdbd",
|
||||
"-keep", "class dev.loki.mdbdBootstrap",
|
||||
"-keep", "class dev.loki.mdbdLoader",
|
||||
"-keep", "class dev.loki.command.**",
|
||||
"-keep", "class dev.loki.listener.**",
|
||||
"-keepclassmembers", "class * { @org.bukkit.event.EventHandler *; }",
|
||||
"-keep", "class dev.loki.command.** { *; }",
|
||||
"-keep", "class dev.loki.listener.** { *; }",
|
||||
"-keepnames", "class dev.loki.**",
|
||||
|
||||
"-dontoptimize",
|
||||
|
|
@ -49,9 +53,32 @@ val obfuscateTask = tasks.register<JavaExec>("obfuscate") {
|
|||
"-keepattributes", "Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,EnclosingMethod"
|
||||
)
|
||||
|
||||
outputs.file(obfJar)
|
||||
dependsOn(tasks.named("jar"))
|
||||
}
|
||||
|
||||
// Save original jar as -orig, then replace with obfuscated
|
||||
val jarName = "${project.name}-${version}"
|
||||
|
||||
tasks.register("saveOriginalJar") {
|
||||
val jarSrc = layout.buildDirectory.file("libs/$jarName.jar")
|
||||
val jarDst = layout.buildDirectory.file("libs/$jarName-orig.jar")
|
||||
dependsOn(tasks.named("jar"))
|
||||
inputs.file(jarSrc)
|
||||
outputs.file(jarDst)
|
||||
doLast {
|
||||
jarSrc.get().asFile.copyTo(jarDst.get().asFile, overwrite = true)
|
||||
}
|
||||
}
|
||||
|
||||
tasks.register<Copy>("replaceWithObfuscated") {
|
||||
dependsOn(obfuscateTask, "saveOriginalJar")
|
||||
from(layout.buildDirectory.dir("obfuscated"))
|
||||
include("$jarName.jar")
|
||||
into(layout.buildDirectory.dir("libs"))
|
||||
outputs.upToDateWhen { false }
|
||||
}
|
||||
|
||||
tasks {
|
||||
runServer {
|
||||
minecraftVersion("1.21.1")
|
||||
|
|
@ -66,6 +93,6 @@ tasks {
|
|||
}
|
||||
|
||||
named("build") {
|
||||
dependsOn(obfuscateTask)
|
||||
dependsOn("replaceWithObfuscated")
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue