plugins { kotlin("jvm") version "2.1.20-Beta1" id("com.github.johnrengelman.shadow") version "8.1.1" id("io.papermc.paperweight.userdev") version "2.0.0-beta.11" // id("de.nilsdruyen.gradle-ftp-upload-plugin") version "0.5.0" } group = "com.pobnellion" version = "1.0-SNAPSHOT" repositories { mavenCentral() maven("https://repo.papermc.io/repository/maven-public/") { name = "papermc-repo" } maven("https://oss.sonatype.org/content/groups/public/") { name = "sonatype" } maven("https://repo.dmulloy2.net/repository/public/") { name = "dmulloy2-repo" } maven("https://maven.enginehub.org/repo/") { name = "enginehub" } } dependencies { // compileOnly("io.papermc.paper:paper-api:1.21.3-R0.1-SNAPSHOT") // compileOnly("com.comphenix.protocol:ProtocolLib:5.3.0") compileOnly("com.fastasyncworldedit:FastAsyncWorldEdit-Bukkit") compileOnly(files("libs/ProtocolLib.jar")) implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8") implementation(platform("com.intellectualsites.bom:bom-newest:1.51")) // Ref: https://github.com/IntellectualSites/bom paperweight.paperDevBundle("1.21.4-R0.1-SNAPSHOT") } val targetJavaVersion = 21 kotlin { jvmToolchain(targetJavaVersion) } tasks.build { dependsOn("shadowJar") } tasks.processResources { val props = mapOf("version" to version) inputs.properties(props) filteringCharset = "UTF-8" filesMatching("plugin.yml") { expand(props) } } tasks.jar { manifest { attributes["paperweight-mappings-namespace"] = "mojang" } } tasks.shadowJar { manifest { attributes["paperweight-mappings-namespace"] = "mojang" } }