Added MythicMobs integration

This commit is contained in:
Auxilor
2022-01-06 14:31:02 +00:00
parent d042211dbe
commit fbe88ab0fd
6 changed files with 95 additions and 0 deletions

View File

@@ -43,6 +43,7 @@ dependencies {
compileOnly 'com.github.WhipDevelopment:CrashClaim:f9cd7d92eb'
compileOnly 'com.wolfyscript.wolfyutilities:wolfyutilities:1.7.8.1'
compileOnly 'com.github.decentsoftware-eu:decentholograms:2.1.2'
compileOnly 'io.lumine.xikage:MythicMobs:4.9.1'
// CombatLogX V10 + NewbieHelper Expansion
compileOnly 'com.SirBlobman.combatlogx:CombatLogX-API:10.0.0.0-SNAPSHOT'

View File

@@ -10,6 +10,7 @@ import com.willfp.eco.core.integrations.IntegrationLoader
import com.willfp.eco.core.integrations.afk.AFKManager
import com.willfp.eco.core.integrations.anticheat.AnticheatManager
import com.willfp.eco.core.integrations.antigrief.AntigriefManager
import com.willfp.eco.core.integrations.customentities.CustomEntitiesManager
import com.willfp.eco.core.integrations.customitems.CustomItemsManager
import com.willfp.eco.core.integrations.economy.EconomyManager
import com.willfp.eco.core.integrations.hologram.HologramManager
@@ -83,6 +84,7 @@ import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefLands
import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefSuperiorSkyblock2
import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefTowny
import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefWorldGuard
import com.willfp.eco.internal.spigot.integrations.customentities.CustomEntitiesMythicMobs
import com.willfp.eco.internal.spigot.integrations.customitems.CustomItemsHeadDatabase
import com.willfp.eco.internal.spigot.integrations.customitems.CustomItemsItemsAdder
import com.willfp.eco.internal.spigot.integrations.customitems.CustomItemsOraxen
@@ -194,6 +196,7 @@ abstract class EcoSpigotPlugin : EcoPlugin(
override fun handleAfterLoad() {
CustomItemsManager.registerAllItems()
CustomEntitiesManager.registerAllEntities()
ShopManager.registerEcoProvider()
}
@@ -231,6 +234,9 @@ abstract class EcoSpigotPlugin : EcoPlugin(
IntegrationLoader("Vulcan") { AnticheatManager.register(this, AnticheatVulcan()) },
IntegrationLoader("Alice") { AnticheatManager.register(this, AnticheatAlice()) },
// Custom Entities
IntegrationLoader("MythicMobs") { CustomEntitiesManager.register(CustomEntitiesMythicMobs())},
// Custom Items
IntegrationLoader("Oraxen") { CustomItemsManager.register(CustomItemsOraxen()) },
IntegrationLoader("ItemsAdder") { CustomItemsManager.register(CustomItemsItemsAdder()) },

View File

@@ -0,0 +1,30 @@
package com.willfp.eco.internal.spigot.integrations.customentities
import com.willfp.eco.core.entities.CustomEntity
import com.willfp.eco.core.integrations.customentities.CustomEntitiesWrapper
import com.willfp.eco.util.NamespacedKeyUtils
import io.lumine.xikage.mythicmobs.MythicMobs
class CustomEntitiesMythicMobs : CustomEntitiesWrapper {
override fun registerAllEntities() {
val mobManager = MythicMobs.inst().mobManager
for (id in mobManager.mobNames) {
val key = NamespacedKeyUtils.create("mythicmobs", id.lowercase())
CustomEntity(
key,
{
val entityId = mobManager.getMythicMobInstance(it)?.type?.entityType ?: return@CustomEntity false
entityId.equals(id, ignoreCase = true)
},
{
MythicMobs.inst().apiHelper.spawnMythicMob(id, it)
}
).register()
}
}
override fun getPluginName(): String {
return "MythicMobs"
}
}