From 3364b01c9d1b312a637c51125fa0df91b038dd3c Mon Sep 17 00:00:00 2001 From: Auxilor Date: Sat, 27 Mar 2021 19:37:30 +0000 Subject: [PATCH] Added combatlogx integration --- .../antigrief/AntigriefCombatLogX.java | 33 +++++++++++++++++- lib/Newbie Helper.jar | Bin 0 -> 12250 bytes 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 lib/Newbie Helper.jar diff --git a/eco-core/core-plugin/src/main/java/com/willfp/eco/spigot/integrations/antigrief/AntigriefCombatLogX.java b/eco-core/core-plugin/src/main/java/com/willfp/eco/spigot/integrations/antigrief/AntigriefCombatLogX.java index 2ca66501..f6f81a88 100644 --- a/eco-core/core-plugin/src/main/java/com/willfp/eco/spigot/integrations/antigrief/AntigriefCombatLogX.java +++ b/eco-core/core-plugin/src/main/java/com/willfp/eco/spigot/integrations/antigrief/AntigriefCombatLogX.java @@ -1,6 +1,9 @@ package com.willfp.eco.spigot.integrations.antigrief; +import com.SirBlobman.combatlogx.expansion.newbie.helper.NewbieHelper; +import com.SirBlobman.combatlogx.expansion.newbie.helper.listener.ListenerPVP; import com.github.sirblobman.combatlogx.api.ICombatLogX; +import com.willfp.eco.spigot.EcoPlugin; import com.willfp.eco.util.integrations.antigrief.AntigriefWrapper; import org.bukkit.Bukkit; import org.bukkit.Location; @@ -15,6 +18,26 @@ public class AntigriefCombatLogX implements AntigriefWrapper { */ private final ICombatLogX instance = (ICombatLogX) Bukkit.getPluginManager().getPlugin("CombatLogX"); + /** + * PVPManager for CombatLogX NewbieHelper. + */ + private ListenerPVP pvp = null; + + /** + * Create new CombatLogX antigrief. + */ + public AntigriefCombatLogX() { + assert instance != null; + EcoPlugin.getInstance().getScheduler().runLater(() -> { + Object expansionUncast = instance.getExpansionManager().getAllExpansions().stream().filter(ex -> ex.getName().toLowerCase().contains("newbie")).findFirst().orElse(null); + if (expansionUncast != null) { + if (expansionUncast.getClass().getName().equals(NewbieHelper.class.getName())) { + pvp = ((NewbieHelper) expansionUncast).getPVPListener(); + } + } + }, 3); + } + @Override public boolean canBreakBlock(@NotNull final Player player, @NotNull final Block block) { @@ -36,7 +59,15 @@ public class AntigriefCombatLogX implements AntigriefWrapper { @Override public boolean canInjure(@NotNull final Player player, @NotNull final LivingEntity victim) { - return true; + if (!(victim instanceof Player)) { + return true; + } + + if (pvp == null) { + return true; + } + + return (pvp.isPVPEnabled(player) && pvp.isPVPEnabled((Player) victim)); } @Override diff --git a/lib/Newbie Helper.jar b/lib/Newbie Helper.jar new file mode 100644 index 0000000000000000000000000000000000000000..fa864aefff6d28d715de1afe3df84039f565d316 GIT binary patch literal 12250 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 literal 0 HcmV?d00001