mirror of
https://github.com/alexcrea/CustomAnvil.git
synced 2026-06-23 08:14:00 +02:00
commit
0993b007a0
5 changed files with 61 additions and 5 deletions
|
|
@ -18,7 +18,7 @@ plugins {
|
|||
}
|
||||
|
||||
group = "xyz.alexcrea"
|
||||
version = "1.15.2"
|
||||
version = "1.15.3"
|
||||
|
||||
val effectiveVersion = "$version" +
|
||||
(if (System.getenv("SMALL_COMMIT_HASH") != null) "-dev-${System.getenv("SMALL_COMMIT_HASH")!!}" else "")
|
||||
|
|
@ -52,6 +52,7 @@ dependencies {
|
|||
compileOnly(project(":impl:LegacyEcoEnchant"))
|
||||
|
||||
// ExcellentEnchants
|
||||
implementation(project(":impl:ExcellentEnchant5_3"))
|
||||
compileOnly("su.nightexpress.excellentenchants:Core:5.1.0") {
|
||||
exclude("org.spigotmc")
|
||||
}
|
||||
|
|
|
|||
21
impl/ExcellentEnchant5_3/build.gradle.kts
Normal file
21
impl/ExcellentEnchant5_3/build.gradle.kts
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
group = rootProject.group
|
||||
version = rootProject.version
|
||||
|
||||
plugins {
|
||||
kotlin("jvm") version "2.1.0"
|
||||
}
|
||||
|
||||
repositories {
|
||||
// ExcellentEnchants
|
||||
maven(url = "https://repo.nightexpressdev.com/releases")
|
||||
}
|
||||
|
||||
dependencies {
|
||||
// Spigot api
|
||||
compileOnly("org.spigotmc:spigot-api:1.18-R0.1-SNAPSHOT")
|
||||
|
||||
// Excellent Enchant
|
||||
compileOnly("su.nightexpress.excellentenchants:Core:5.3.0") {
|
||||
exclude("org.spigotmc")
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
package xyz.alexcrea.cuanvil.dependency.plugins;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import su.nightexpress.excellentenchants.api.enchantment.CustomEnchantment;
|
||||
import su.nightexpress.excellentenchants.enchantment.EnchantRegistry;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
public class ExcellentEnchant5_3Registry {
|
||||
|
||||
public static @NotNull Set<CustomEnchantment> getRegistered(){
|
||||
return EnchantRegistry.getRegistered();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -38,3 +38,5 @@ findProject(":nms:v1_21R6")?.name = "v1_21R6"
|
|||
|
||||
include(":impl:LegacyEcoEnchant")
|
||||
findProject(":impl:LegacyEcoEnchant")?.name = "LegacyEcoEnchant"
|
||||
include("impl:ExcellentEnchant5_3")
|
||||
findProject(":impl:ExcellentEnchant5_3")?.name = "ExcellentEnchant5_3"
|
||||
|
|
@ -25,6 +25,7 @@ import su.nightexpress.excellentenchants.registry.EnchantRegistry as PreV5Enchan
|
|||
class ExcellentEnchantsDependency {
|
||||
|
||||
enum class ListenerVersion(val classPath: String) {
|
||||
V5_3("su.nightexpress.excellentenchants.enchantment.EnchantRegistry"),
|
||||
V5("su.nightexpress.excellentenchants.manager.listener.AnvilListener"),
|
||||
PRE_V5("su.nightexpress.excellentenchants.enchantment.listener.AnvilListener"),
|
||||
LEGACY("su.nightexpress.excellentenchants.enchantment.listener.EnchantAnvilListener"),
|
||||
|
|
@ -49,6 +50,8 @@ class ExcellentEnchantsDependency {
|
|||
|
||||
if (listenerVersion == null) {
|
||||
CustomAnvil.instance.logger.severe("Found issue with listener of Excellent Enchants. compatiblity is broken. please contact CustomAnvil devs")
|
||||
} else{
|
||||
CustomAnvil.log("Support version: " + listenerVersion.name)
|
||||
}
|
||||
|
||||
var isModernCurseOfFragility = true
|
||||
|
|
@ -67,6 +70,13 @@ class ExcellentEnchantsDependency {
|
|||
|
||||
// As excellent enchants is loaded before custom anvil and register enchantment to registry, we need to unregister old "vanilla" enchant.
|
||||
when (listenerVersion) {
|
||||
ListenerVersion.V5_3 -> {
|
||||
for (enchantment in ExcellentEnchant5_3Registry.getRegistered()) {
|
||||
EnchantmentApi.unregisterEnchantment(enchantment.bukkitEnchantment.key)
|
||||
EnchantmentApi.registerEnchantment(CAEEV5Enchantment(enchantment))
|
||||
}
|
||||
}
|
||||
|
||||
ListenerVersion.V5 -> {
|
||||
for (enchantment in V5EnchantRegistry.getRegistered()) {
|
||||
EnchantmentApi.unregisterEnchantment(enchantment.bukkitEnchantment.key)
|
||||
|
|
@ -119,7 +129,9 @@ class ExcellentEnchantsDependency {
|
|||
}
|
||||
|
||||
when (listenerVersion) {
|
||||
ListenerVersion.V5 -> {
|
||||
ListenerVersion.V5,
|
||||
ListenerVersion.V5_3
|
||||
-> {
|
||||
if (listener is V5AnvilListener) {
|
||||
this.v5AnvilListener = listener
|
||||
toUnregister.add(registeredListener)
|
||||
|
|
@ -151,7 +163,9 @@ class ExcellentEnchantsDependency {
|
|||
}
|
||||
|
||||
when (listenerVersion) {
|
||||
ListenerVersion.V5 -> this.usedAnvilListener = v5AnvilListener!!
|
||||
ListenerVersion.V5,
|
||||
ListenerVersion.V5_3
|
||||
-> this.usedAnvilListener = v5AnvilListener!!
|
||||
ListenerVersion.PRE_V5 -> this.usedAnvilListener = preV5AnvilListener!!
|
||||
ListenerVersion.LEGACY -> this.usedAnvilListener = legacyAnvilListener!!
|
||||
null -> {}
|
||||
|
|
@ -205,7 +219,9 @@ class ExcellentEnchantsDependency {
|
|||
fun testAnvilResult(event: InventoryClickEvent): Any {
|
||||
if (event.inventory.getItem(2) != null) {
|
||||
when (listenerVersion) {
|
||||
ListenerVersion.V5 -> v5AnvilListener!!.onClickAnvil(event)
|
||||
ListenerVersion.V5,
|
||||
ListenerVersion.V5_3
|
||||
-> v5AnvilListener!!.onClickAnvil(event)
|
||||
ListenerVersion.PRE_V5 -> preV5AnvilListener!!.onClickAnvil(event)
|
||||
ListenerVersion.LEGACY -> legacyAnvilListener!!.onClickAnvil(event)
|
||||
null -> {}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue