diff --git a/build.gradle.kts b/build.gradle.kts index e655dc1..e10c058 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -3,16 +3,16 @@ import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { - kotlin("jvm") version "2.0.21" + kotlin("jvm") version "2.1.0" java id("org.jetbrains.dokka").version("1.9.20") - id("com.gradleup.shadow").version("8.3.3") + id("com.gradleup.shadow").version("8.3.5") // Maven publish `maven-publish` signing id("cn.lalaki.central").version("1.2.5") // Paper - id("io.papermc.paperweight.userdev") version "2.0.0-beta.8" apply false + id("io.papermc.paperweight.userdev") version "2.0.0-beta.14" apply false } group = "xyz.alexcrea" @@ -37,17 +37,17 @@ dependencies { compileOnly(files("libs/EnchantsSquared.jar")) // EcoEnchants - compileOnly("com.willfp:EcoEnchants:12.5.1") - compileOnly("com.willfp:eco:6.70.1") + compileOnly("com.willfp:EcoEnchants:12.11.1") + compileOnly("com.willfp:eco:6.74.5") compileOnly(project(":impl:LegacyEcoEnchant")) // ExcellentEnchants - compileOnly(files("libs/nightcore-2.6.4.jar")) - compileOnly(files("libs/ExcellentEnchants-4.2.2.jar")) + compileOnly(files("libs/nightcore-2.7.3.jar")) + compileOnly(files("libs/ExcellentEnchants-4.3.1.jar")) compileOnly(files("libs/ExcellentEnchants 4.1.0-striped.jar")) // For legacy excellent enchants // Disenchantment - compileOnly("cz.kominekjan:Disenchantment:v5.4.0") + compileOnly(files("libs/Disenchantment-6.1.0.jar")) // HavenBags compileOnly(files("libs/HavenBags-1.30.1.1729.jar")) @@ -72,7 +72,7 @@ dependencies { implementation(kotlin("stdlib")) // Test dependency - testImplementation("org.mockbukkit.mockbukkit:mockbukkit-v1.21:4.9.3") //lower bound: 4.9.2 upper bound: 4.9.3 + testImplementation("org.mockbukkit.mockbukkit:mockbukkit-v1.21:4.21.0") testRuntimeOnly("commons-lang:commons-lang:2.6") } @@ -154,7 +154,7 @@ tasks { filesMatching("plugin.yml") { expand( "version" to project.version, - "libraries" to " \"org.jetbrains.kotlin:kotlin-stdlib:2.0.21\" " + "libraries" to " \"org.jetbrains.kotlin:kotlin-stdlib:2.1.0\" " ) } @@ -163,27 +163,34 @@ tasks { } // Offline jar (include kotlin std in the final jar fine) - val offlineJar by creating(ShadowJar::class) { - archiveClassifier.set("offline") - - // Shadow necessary dependency - relocate("com.github.stefvanschie.inventoryframework", "xyz.alexcrea.inventoryframework") - - filesMatching("plugin.yml") { - expand( - "version" to "${project.version}-offline", - "libraries" to "" - ) - } + val offlineJar by // Shadow necessary dependency + registering( // Include all project other dependencies - from(project.configurations.runtimeClasspath) + ShadowJar // Add custom anvil compiled - from(sourceSets.main.get().output) + ::class, fun ShadowJar.() { + archiveClassifier.set("offline") - dependsOn(processResources) - } + // Shadow necessary dependency + relocate("com.github.stefvanschie.inventoryframework", "xyz.alexcrea.inventoryframework") + + filesMatching("plugin.yml") { + expand( + "version" to "${project.version}-offline", + "libraries" to "" + ) + } + + // Include all project other dependencies + from(project.configurations.runtimeClasspath) + + // Add custom anvil compiled + from(sourceSets.main.get().output) + + dependsOn(processResources) + }) // Make the online and offline jar on build named("build") { @@ -197,12 +204,12 @@ val sourcesJar by tasks.registering(Jar::class) { from(kotlin.sourceSets.main.get().kotlin) } -val javadocJar by tasks.creating(Jar::class) { +val javadocJar by tasks.registering(Jar::class, fun Jar.() { group = JavaBasePlugin.DOCUMENTATION_GROUP description = "Assembles Javadoc JAR" archiveClassifier.set("javadoc") from(tasks.named("dokkaHtml")) -} +}) signing { useGpgCmd() diff --git a/impl/LegacyEcoEnchant/build.gradle.kts b/impl/LegacyEcoEnchant/build.gradle.kts index ec24ae1..a53c04c 100644 --- a/impl/LegacyEcoEnchant/build.gradle.kts +++ b/impl/LegacyEcoEnchant/build.gradle.kts @@ -2,7 +2,7 @@ group = rootProject.group version = rootProject.version plugins { - kotlin("jvm") version "2.0.21" + kotlin("jvm") version "2.1.0" } // Imitate needed class and method to support legacy version of EcoEnchant diff --git a/libs/Disenchantment-6.1.0.jar b/libs/Disenchantment-6.1.0.jar new file mode 100644 index 0000000..83a9069 Binary files /dev/null and b/libs/Disenchantment-6.1.0.jar differ diff --git a/libs/EnchantsSquared.jar b/libs/EnchantsSquared.jar index f77c49e..4dfce09 100644 Binary files a/libs/EnchantsSquared.jar and b/libs/EnchantsSquared.jar differ diff --git a/libs/ExcellentEnchants-4.2.2.jar b/libs/ExcellentEnchants-4.3.1.jar similarity index 73% rename from libs/ExcellentEnchants-4.2.2.jar rename to libs/ExcellentEnchants-4.3.1.jar index 23d9630..47ea157 100644 Binary files a/libs/ExcellentEnchants-4.2.2.jar and b/libs/ExcellentEnchants-4.3.1.jar differ diff --git a/libs/nightcore-2.6.4.jar b/libs/nightcore-2.6.4.jar deleted file mode 100644 index 0404681..0000000 Binary files a/libs/nightcore-2.6.4.jar and /dev/null differ diff --git a/libs/nightcore-2.7.3.jar b/libs/nightcore-2.7.3.jar new file mode 100644 index 0000000..7ecad8e Binary files /dev/null and b/libs/nightcore-2.7.3.jar differ diff --git a/settings.gradle.kts b/settings.gradle.kts index 576d36d..bd7b34a 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,14 +1,5 @@ -import java.net.URI - rootProject.name = "CustomAnvil" -// for Disenchantment dependency -sourceControl { - gitRepository(URI.create("https://github.com/H7KZ/Disenchantment.git")) { - producesModule("cz.kominekjan:Disenchantment") - } -} - // NMS subproject include("nms:nms-common") findProject(":nms:nms-common")?.name = "nms-common" @@ -38,5 +29,6 @@ include("nms:v1_21R2") findProject(":nms:v1_21R2")?.name = "v1_21R2" include("nms:v1_21R3") findProject(":nms:v1_21R3")?.name = "v1_21R3" + include(":impl:LegacyEcoEnchant") -findProject(":impl:LegacyEcoEnchant")?.name = "LegacyEcoEnchant" +findProject(":impl:LegacyEcoEnchant")?.name = "LegacyEcoEnchant" \ No newline at end of file diff --git a/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/DisenchantmentDependency.kt b/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/DisenchantmentDependency.kt index 3ce2ca6..e8c8e15 100644 --- a/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/DisenchantmentDependency.kt +++ b/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/DisenchantmentDependency.kt @@ -1,9 +1,9 @@ package xyz.alexcrea.cuanvil.dependency -import cz.kominekjan.disenchantment.events.DisenchantClickEvent -import cz.kominekjan.disenchantment.events.DisenchantEvent -import cz.kominekjan.disenchantment.events.ShatterClickEvent -import cz.kominekjan.disenchantment.events.ShatterEvent +import com.jankominek.disenchantment.events.DisenchantClickEvent +import com.jankominek.disenchantment.events.DisenchantEvent +import com.jankominek.disenchantment.events.ShatterClickEvent +import com.jankominek.disenchantment.events.ShatterEvent import io.delilaheve.CustomAnvil import org.bukkit.entity.HumanEntity import org.bukkit.event.inventory.InventoryClickEvent diff --git a/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/HavenBagsDependency.kt b/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/HavenBagsDependency.kt index 661107e..ef2e680 100644 --- a/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/HavenBagsDependency.kt +++ b/src/main/kotlin/xyz/alexcrea/cuanvil/dependency/HavenBagsDependency.kt @@ -5,12 +5,10 @@ import org.bukkit.entity.HumanEntity import org.bukkit.event.inventory.InventoryClickEvent import org.bukkit.event.inventory.PrepareAnvilEvent import org.bukkit.inventory.AnvilInventory -import org.bukkit.inventory.ItemStack import org.bukkit.plugin.RegisteredListener import valorless.havenbags.BagSkin import valorless.havenbags.BagUpgrade import valorless.havenbags.HavenBags -import valorless.havenbags.prevention.EquipPrevention import xyz.alexcrea.cuanvil.listener.PrepareAnvilListener import xyz.alexcrea.cuanvil.util.AnvilXpUtil @@ -77,16 +75,10 @@ class HavenBagsDependency { CustomAnvil.log("Detected anvil click haven bag bypass.") bagUpgrade.onInventoryClick(event) bagSkin.onInventoryClick(event) - return true; + return true } return false } - private fun testAnvilInventoryChange(inventory: AnvilInventory, previous: ItemStack?): Boolean { - val currentResult = inventory.getItem(PrepareAnvilListener.ANVIL_OUTPUT_SLOT) - - return currentResult == previous - } - }