mirror of
https://github.com/alexcrea/CustomAnvil.git
synced 2026-08-28 08:25:56 +02:00
Compare commits
3 commits
b2567f9176
...
685e046063
| Author | SHA1 | Date | |
|---|---|---|---|
| 685e046063 | |||
| 82b41fb1c1 | |||
| f4202e2521 |
6 changed files with 23 additions and 13 deletions
|
|
@ -69,10 +69,10 @@ dependencies {
|
|||
compileOnly(files("libs/EnchantsSquared.jar"))
|
||||
|
||||
// EcoEnchants & item
|
||||
compileOnly("com.willfp:libreforge:4.79.0:all")
|
||||
compileOnly("com.willfp:eco:6.74.5")
|
||||
compileOnly("com.willfp:libreforge:2026.32:all")
|
||||
compileOnly("com.willfp:eco:2026.32")
|
||||
|
||||
compileOnly("com.willfp:EcoEnchants:12.11.1")
|
||||
compileOnly("com.willfp:EcoEnchants:2026.32:all")
|
||||
compileOnly(project(":impl:LegacyEcoEnchant"))
|
||||
|
||||
compileOnly("com.willfp:EcoItems:5.66.0")
|
||||
|
|
|
|||
|
|
@ -46,6 +46,7 @@ object DependencyManager {
|
|||
|
||||
var enchantmentSquaredCompatibility: EnchantmentSquaredDependency? = null
|
||||
var ecoEnchantCompatibility: EcoEnchantDependency? = null
|
||||
var hasEcoItem: Boolean = false
|
||||
var excellentEnchantsCompatibility: ExcellentEnchantsDependency? = null
|
||||
|
||||
var disenchantmentCompatibility: DisenchantmentDependency? = null
|
||||
|
|
@ -82,6 +83,10 @@ object DependencyManager {
|
|||
ecoEnchantCompatibility = EcoEnchantDependency(pluginManager.getPlugin("EcoEnchants")!!)
|
||||
ecoEnchantCompatibility!!.disableAnvilListener()
|
||||
}
|
||||
// EcoItem check
|
||||
if (pluginManager.isPluginEnabled("EcoItems")) {
|
||||
hasEcoItem = true
|
||||
}
|
||||
|
||||
// Excellent Enchants dependency
|
||||
if (pluginManager.isPluginEnabled("ExcellentEnchants")) {
|
||||
|
|
|
|||
|
|
@ -223,7 +223,11 @@ object DataPackDependency {
|
|||
|
||||
private fun setEnchantAsAll(ench: String) {
|
||||
// We assume current is not null and of type CABukkitEnchantment
|
||||
val current = EnchantmentApi.getByKey(NamespacedKey.fromString(ench)!!) as CABukkitEnchantment
|
||||
val current = EnchantmentApi.getByKey(NamespacedKey.fromString(ench)!!) as? CABukkitEnchantment
|
||||
if(current == null) {
|
||||
CustomAnvil.instance.logger.warning("Could not find enchant $ench")
|
||||
return
|
||||
}
|
||||
|
||||
// We need to replace current wrapped enchantment with the all conflict wrapper
|
||||
EnchantmentApi.unregisterEnchantment(current)
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ package xyz.alexcrea.cuanvil.dependency.plugins
|
|||
import com.willfp.eco.core.EcoPlugin
|
||||
import com.willfp.ecoenchants.enchant.EcoEnchant
|
||||
import com.willfp.ecoenchants.enchant.EcoEnchants
|
||||
import com.willfp.ecoenchants.mechanics.infiniteIfNegative
|
||||
import com.willfp.ecoenchants.enchant.UtilKt
|
||||
import io.delilaheve.CustomAnvil
|
||||
import org.bukkit.event.inventory.PrepareAnvilEvent
|
||||
import org.bukkit.plugin.Plugin
|
||||
|
|
@ -35,7 +35,7 @@ class EcoEnchantDependency(private val ecoEnchantPlugin: Plugin) {
|
|||
}
|
||||
|
||||
public fun getEcoLevelLimit(): Int {
|
||||
return (ecoEnchantPlugin as EcoPlugin).configYml.getInt("anvil.enchant-limit").infiniteIfNegative()
|
||||
return UtilKt.infiniteIfNegative((ecoEnchantPlugin as EcoPlugin).configYml.getInt("anvil.enchant-limit"))
|
||||
}
|
||||
|
||||
fun disableAnvilListener() {
|
||||
|
|
@ -51,7 +51,7 @@ class EcoEnchantDependency(private val ecoEnchantPlugin: Plugin) {
|
|||
return
|
||||
}
|
||||
|
||||
val enchantments = EcoEnchants.values()
|
||||
val enchantments = EcoEnchants.INSTANCE.values()
|
||||
for (ecoEnchant in enchantments) {
|
||||
EnchantmentApi.unregisterEnchantment(ecoEnchant.enchantment) // As eco enchants is loaded before custom anvil and register enchantment to registry, we need to unregister old "vanilla" enchant.
|
||||
EnchantmentApi.registerEnchantment(CAEcoEnchant(ecoEnchant))
|
||||
|
|
@ -71,7 +71,7 @@ class EcoEnchantDependency(private val ecoEnchantPlugin: Plugin) {
|
|||
// Should not happen in known case.
|
||||
if (this.ecoEnchantOldEnchantments == null) return
|
||||
|
||||
val newEnchantments = EcoEnchants.values()
|
||||
val newEnchantments = EcoEnchants.INSTANCE.values()
|
||||
|
||||
// Add new enchantments
|
||||
for (ecoEnchant in newEnchantments)
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ object MaterialUtil {
|
|||
|
||||
val ItemStack.customType: NamespacedKey
|
||||
get() {
|
||||
if(DependencyManager.ecoEnchantCompatibility != null) {
|
||||
if(DependencyManager.hasEcoItem) {
|
||||
val result = EcoItemDependencyUtil.ecoItemNamespace(this)
|
||||
if(result != null) return result
|
||||
}
|
||||
|
|
@ -43,7 +43,7 @@ object MaterialUtil {
|
|||
|
||||
@Nullable
|
||||
fun getMatFromKey(key: NamespacedKey): Material? {
|
||||
if(DependencyManager.ecoEnchantCompatibility != null) {
|
||||
if(DependencyManager.hasEcoItem) {
|
||||
val result = EcoItemDependencyUtil.ecoItemMaterialFromKey(key)
|
||||
if(result != null) return result
|
||||
}
|
||||
|
|
@ -58,7 +58,7 @@ object MaterialUtil {
|
|||
}
|
||||
|
||||
fun itemFromKey(key: NamespacedKey): ItemStack {
|
||||
if(DependencyManager.ecoEnchantCompatibility != null) {
|
||||
if(DependencyManager.hasEcoItem) {
|
||||
val result = EcoItemDependencyUtil.newEcoItemstack(key)
|
||||
if(result != null) return result
|
||||
}
|
||||
|
|
@ -78,7 +78,7 @@ object MaterialUtil {
|
|||
|
||||
fun getMaterialCount(): Int {
|
||||
var count = Material.entries.size
|
||||
if(DependencyManager.ecoEnchantCompatibility != null) {
|
||||
if(DependencyManager.hasEcoItem) {
|
||||
count += EcoItemDependencyUtil.getItems().size
|
||||
}
|
||||
|
||||
|
|
@ -92,7 +92,7 @@ object MaterialUtil {
|
|||
|
||||
fun getMaterials(): MutableList<NamespacedKey> {
|
||||
val all = ArrayList(Material.entries.map { it.key })
|
||||
if(DependencyManager.ecoEnchantCompatibility != null) {
|
||||
if(DependencyManager.hasEcoItem) {
|
||||
all.addAll(EcoItemDependencyUtil.getItems())
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -80,6 +80,7 @@ softdepend:
|
|||
- Disenchantment
|
||||
- EnchantsSquared
|
||||
- EcoEnchants
|
||||
- EcoItems
|
||||
- eco
|
||||
- ExcellentEnchants
|
||||
- HavenBags
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue