diff --git a/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/spigot/EcoSpigotPlugin.kt b/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/spigot/EcoSpigotPlugin.kt index 3de33571..d37d2132 100644 --- a/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/spigot/EcoSpigotPlugin.kt +++ b/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/spigot/EcoSpigotPlugin.kt @@ -52,16 +52,7 @@ import com.willfp.eco.spigot.integrations.anticheat.AnticheatMatrix import com.willfp.eco.spigot.integrations.anticheat.AnticheatNCP import com.willfp.eco.spigot.integrations.anticheat.AnticheatSpartan import com.willfp.eco.spigot.integrations.anticheat.AnticheatVulcan -import com.willfp.eco.spigot.integrations.antigrief.AntigriefBentoBox -import com.willfp.eco.spigot.integrations.antigrief.AntigriefCombatLogXV10 -import com.willfp.eco.spigot.integrations.antigrief.AntigriefCombatLogXV11 -import com.willfp.eco.spigot.integrations.antigrief.AntigriefFactionsUUID -import com.willfp.eco.spigot.integrations.antigrief.AntigriefGriefPrevention -import com.willfp.eco.spigot.integrations.antigrief.AntigriefKingdoms -import com.willfp.eco.spigot.integrations.antigrief.AntigriefLands -import com.willfp.eco.spigot.integrations.antigrief.AntigriefSuperiorSkyblock2 -import com.willfp.eco.spigot.integrations.antigrief.AntigriefTowny -import com.willfp.eco.spigot.integrations.antigrief.AntigriefWorldGuard +import com.willfp.eco.spigot.integrations.antigrief.* import com.willfp.eco.spigot.integrations.customitems.CustomItemsHeadDatabase import com.willfp.eco.spigot.integrations.customitems.CustomItemsItemsAdder import com.willfp.eco.spigot.integrations.customitems.CustomItemsOraxen @@ -173,6 +164,7 @@ abstract class EcoSpigotPlugin : EcoPlugin( override fun loadIntegrationLoaders(): List { return listOf( // AntiGrief + IntegrationLoader("DeluxeCombat") { AntigriefManager.register(AntigriefDeluxeCombat()) }, IntegrationLoader("SuperiorSkyblock2") { AntigriefManager.register(AntigriefSuperiorSkyblock2()) }, IntegrationLoader("BentoBox") { AntigriefManager.register(AntigriefBentoBox()) }, IntegrationLoader("WorldGuard") { AntigriefManager.register(AntigriefWorldGuard()) }, diff --git a/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/spigot/integrations/antigrief/AntigriefDeluxeCombat.kt b/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/spigot/integrations/antigrief/AntigriefDeluxeCombat.kt new file mode 100644 index 00000000..d6ddf69c --- /dev/null +++ b/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/spigot/integrations/antigrief/AntigriefDeluxeCombat.kt @@ -0,0 +1,34 @@ +package com.willfp.eco.spigot.integrations.antigrief + +import com.willfp.eco.core.integrations.antigrief.AntigriefWrapper +import nl.marido.deluxecombat.api.DeluxeCombatAPI +import org.bukkit.Location +import org.bukkit.block.Block +import org.bukkit.entity.LivingEntity +import org.bukkit.entity.Player + +class AntigriefDeluxeCombat: AntigriefWrapper { + override fun getPluginName(): String { + return "DeluxeCombat"; + } + + override fun canBreakBlock(player: Player, block: Block): Boolean { + return true; + } + + override fun canCreateExplosion(player: Player, location: Location): Boolean { + return true; + } + + override fun canPlaceBlock(player: Player, block: Block): Boolean { + return true; + } + + override fun canInjure(player: Player, victim: LivingEntity): Boolean { + val api = DeluxeCombatAPI() + return when(victim) { + is Player -> (api.hasProtection(victim) || !api.hasPvPEnabled(victim)) && !api.isInCombat(victim) + else -> true + } + } +} \ No newline at end of file diff --git a/lib/DeluxeCombat API.jar b/lib/DeluxeCombat API.jar new file mode 100644 index 00000000..b8811303 Binary files /dev/null and b/lib/DeluxeCombat API.jar differ