mirror of
https://github.com/Auxilor/EcoEnchants.git
synced 2025-02-23 05:41:19 +01:00
Added support for mcmmo double drops within telekinesis
This commit is contained in:
parent
c030e6fac2
commit
3151430dcb
@ -49,7 +49,7 @@ allprojects {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compileOnly 'com.willfp:eco:3.1.0'
|
||||
compileOnly 'com.willfp:eco:3.3.0'
|
||||
|
||||
compileOnly 'org.jetbrains:annotations:19.0.0'
|
||||
|
||||
|
@ -28,8 +28,6 @@ import com.willfp.ecoenchants.enchantments.util.HoldItemListener;
|
||||
import com.willfp.ecoenchants.enchantments.util.WatcherTriggers;
|
||||
import com.willfp.ecoenchants.integrations.essentials.EssentialsManager;
|
||||
import com.willfp.ecoenchants.integrations.essentials.plugins.IntegrationEssentials;
|
||||
import com.willfp.ecoenchants.integrations.mcmmo.McmmoManager;
|
||||
import com.willfp.ecoenchants.integrations.mcmmo.plugins.McmmoIntegrationImpl;
|
||||
import com.willfp.ecoenchants.integrations.worldguard.WorldguardManager;
|
||||
import com.willfp.ecoenchants.integrations.worldguard.plugins.WorldguardIntegrationImpl;
|
||||
import com.willfp.ecoenchants.proxy.proxies.FastGetEnchantsProxy;
|
||||
@ -163,8 +161,7 @@ public class EcoEnchantsPlugin extends AbstractEcoPlugin {
|
||||
new IntegrationLoader("WorldGuard", () -> {
|
||||
WorldguardManager.register(new WorldguardIntegrationImpl());
|
||||
}),
|
||||
new IntegrationLoader("Essentials", () -> EssentialsManager.register(new IntegrationEssentials())),
|
||||
new IntegrationLoader("mcMMO", () -> McmmoManager.registerIntegration(new McmmoIntegrationImpl()))
|
||||
new IntegrationLoader("Essentials", () -> EssentialsManager.register(new IntegrationEssentials()))
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -3,6 +3,7 @@ package com.willfp.ecoenchants.enchantments.ecoenchants.normal;
|
||||
import com.willfp.eco.util.drops.DropQueue;
|
||||
import com.willfp.eco.util.events.entitydeathbyentity.EntityDeathByEntityEvent;
|
||||
import com.willfp.eco.util.integrations.antigrief.AntigriefManager;
|
||||
import com.willfp.eco.util.integrations.mcmmo.McmmoManager;
|
||||
import com.willfp.ecoenchants.enchantments.EcoEnchant;
|
||||
import com.willfp.ecoenchants.enchantments.EcoEnchants;
|
||||
import com.willfp.ecoenchants.enchantments.meta.EnchantmentType;
|
||||
@ -70,6 +71,9 @@ public class Telekinesis extends EcoEnchant {
|
||||
|
||||
for (Item item : event.getItems()) {
|
||||
drops.add(item.getItemStack());
|
||||
for (int i = 0; i < McmmoManager.getBonusDropCount(block); i++) {
|
||||
drops.add(item.getItemStack());
|
||||
}
|
||||
}
|
||||
|
||||
event.getItems().clear();
|
||||
|
@ -6,7 +6,7 @@ import com.willfp.eco.util.integrations.antigrief.AntigriefManager;
|
||||
import com.willfp.eco.util.internal.PluginDependent;
|
||||
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
|
||||
import com.willfp.ecoenchants.enchantments.EcoEnchants;
|
||||
import com.willfp.ecoenchants.integrations.mcmmo.McmmoManager;
|
||||
import com.willfp.eco.util.integrations.mcmmo.McmmoManager;
|
||||
import com.willfp.ecoenchants.proxy.proxies.TridentStackProxy;
|
||||
import com.willfp.ecoenchants.util.ProxyUtils;
|
||||
import org.bukkit.Material;
|
||||
|
@ -1,13 +0,0 @@
|
||||
package com.willfp.ecoenchants.integrations.mcmmo;
|
||||
|
||||
import com.willfp.eco.util.integrations.Integration;
|
||||
import org.bukkit.event.Event;
|
||||
|
||||
public interface McmmoIntegration extends Integration {
|
||||
/**
|
||||
* @param event The event to check.
|
||||
* @return If the event is fake.
|
||||
* @see McmmoManager#isFake(Event)
|
||||
*/
|
||||
boolean isFake(Event event);
|
||||
}
|
@ -1,45 +0,0 @@
|
||||
package com.willfp.ecoenchants.integrations.mcmmo;
|
||||
|
||||
import com.willfp.eco.util.ClassUtils;
|
||||
import org.bukkit.event.Event;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
|
||||
public class McmmoManager {
|
||||
/**
|
||||
* All registered mcMMO integrations.
|
||||
*/
|
||||
private static final Set<McmmoIntegration> REGISTERED = new HashSet<>();
|
||||
|
||||
/**
|
||||
* Register a new mcMMO integration.
|
||||
*
|
||||
* @param integration The integration to register.
|
||||
*/
|
||||
public static void registerIntegration(@NotNull final McmmoIntegration integration) {
|
||||
if (!ClassUtils.exists("com.gmail.nossr50.events.fake.FakeEvent")) {
|
||||
return;
|
||||
}
|
||||
REGISTERED.add(integration);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get if an event is fake.
|
||||
*
|
||||
* @param event The event to check.
|
||||
* @return If the event is fake.
|
||||
*/
|
||||
public static boolean isFake(@NotNull final Event event) {
|
||||
AtomicBoolean isFake = new AtomicBoolean(false);
|
||||
REGISTERED.forEach(integration -> {
|
||||
if (integration.isFake(event)) {
|
||||
isFake.set(true);
|
||||
}
|
||||
});
|
||||
|
||||
return isFake.get();
|
||||
}
|
||||
}
|
@ -1,18 +0,0 @@
|
||||
package com.willfp.ecoenchants.integrations.mcmmo.plugins;
|
||||
|
||||
import com.gmail.nossr50.events.fake.FakeEvent;
|
||||
import com.willfp.ecoenchants.integrations.mcmmo.McmmoIntegration;
|
||||
import org.bukkit.event.Event;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class McmmoIntegrationImpl implements McmmoIntegration {
|
||||
@Override
|
||||
public boolean isFake(@NotNull final Event event) {
|
||||
return event instanceof FakeEvent;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPluginName() {
|
||||
return "mcMMO";
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user