- Removed roguelike perk system (double jump, magnet, shield, second chance) - Updated bStats dependency to 3.2.1 with proper relocation - Changed bStats plugin ID to 29754 - Added new game modes: Speedrun, Gravity Shift, Hardcore - Implemented .lpschem format with GZIP + JSON compression - Added JumpValidator for physics-based jump validation - Added JumpType system (neo-jump, head-hitter, fence, trapdoor, ladder) - Implemented Ghost system for recording/playback top players - Added loparkour-vilib as local dependency - Updated config with new mode settings and removed roguelike section - Cleaned up TODO.md roadmap
138 lines
3.2 KiB
Groovy
138 lines
3.2 KiB
Groovy
plugins {
|
|
id 'java'
|
|
id 'com.github.johnrengelman.shadow' version '8.1.1'
|
|
}
|
|
|
|
group = 'dev.loki'
|
|
version = '1.2.4'
|
|
description = 'LoParkour - Advanced parkour plugin for Minecraft'
|
|
|
|
java {
|
|
toolchain {
|
|
languageVersion = JavaLanguageVersion.of(17)
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
|
|
maven {
|
|
name = 'papermc'
|
|
url = 'https://repo.papermc.io/repository/maven-public/'
|
|
}
|
|
|
|
maven {
|
|
name = 'spigot-repo'
|
|
url = 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/'
|
|
}
|
|
|
|
maven {
|
|
name = 'jitpack'
|
|
url = 'https://jitpack.io'
|
|
}
|
|
|
|
maven {
|
|
name = 'maven-central'
|
|
url = 'https://oss.sonatype.org/content/groups/public'
|
|
}
|
|
|
|
maven {
|
|
name = 'placeholderapi'
|
|
url = 'https://repo.extendedclip.com/content/repositories/placeholderapi/'
|
|
}
|
|
|
|
maven {
|
|
name = 'mv-repo'
|
|
url = 'https://repo.onarandombox.com/content/groups/public/'
|
|
}
|
|
|
|
maven {
|
|
name = 'dmulloy2-repo'
|
|
url = 'https://repo.dmulloy2.net/repository/public/'
|
|
}
|
|
|
|
maven {
|
|
name = 'codemc-repo'
|
|
url = 'https://repo.codemc.io/repository/maven-public/'
|
|
}
|
|
|
|
maven {
|
|
name = 'opencollab-snapshot-repo'
|
|
url = 'https://repo.opencollab.dev/maven-snapshots/'
|
|
}
|
|
|
|
// For ConfigUpdater dependency
|
|
maven {
|
|
name = 'codemc-snapshots'
|
|
url = 'https://repo.codemc.io/repository/maven-snapshots/'
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
// Spigot API
|
|
compileOnly 'org.spigotmc:spigot-api:1.20.4-R0.1-SNAPSHOT'
|
|
|
|
// Local vilib fork
|
|
implementation project(':loparkour-vilib')
|
|
|
|
// Shaded dependencies
|
|
implementation 'io.papermc:paperlib:1.0.7'
|
|
implementation 'com.google.code.gson:gson:2.10.1'
|
|
implementation 'org.bstats:bstats-bukkit:3.2.1'
|
|
|
|
// Provided dependencies (plugins)
|
|
compileOnly 'me.clip:placeholderapi:2.11.6'
|
|
compileOnly 'com.github.MilkBowl:VaultAPI:1.7'
|
|
compileOnly 'me.filoghost.holographicdisplays:holographicdisplays-api:3.0.0-SNAPSHOT'
|
|
compileOnly 'org.geysermc.floodgate:api:2.0-SNAPSHOT'
|
|
|
|
// Annotations
|
|
compileOnly 'org.jetbrains:annotations:24.1.0'
|
|
|
|
// Testing
|
|
testImplementation 'org.junit.jupiter:junit-jupiter:5.11.0-M1'
|
|
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
|
|
}
|
|
|
|
shadowJar {
|
|
archiveClassifier.set('')
|
|
archiveFileName.set("LoParkour-${project.version}.jar")
|
|
|
|
// Relocate shaded dependencies
|
|
relocate 'dev.efnilite.vilib', 'dev.loki.loparkour.lib.vilib'
|
|
relocate 'io.papermc.lib', 'dev.loki.loparkour.lib.paperlib'
|
|
relocate 'com.google.gson', 'dev.loki.loparkour.lib.gson'
|
|
relocate 'org.bstats', 'dev.loki.loparkour.lib.bstats'
|
|
|
|
// Minimize jar size
|
|
minimize()
|
|
}
|
|
|
|
build {
|
|
dependsOn shadowJar
|
|
}
|
|
|
|
processResources {
|
|
filesMatching(['plugin.yml', 'config.yml']) {
|
|
expand(
|
|
version: project.version,
|
|
description: project.description
|
|
)
|
|
}
|
|
}
|
|
|
|
test {
|
|
useJUnitPlatform()
|
|
}
|
|
|
|
compileJava {
|
|
options.encoding = 'UTF-8'
|
|
options.release = 17
|
|
}
|
|
|
|
javadoc {
|
|
options.encoding = 'UTF-8'
|
|
}
|
|
|
|
// Default task
|
|
defaultTasks 'clean', 'build'
|