mirror of
https://github.com/Auxilor/EcoEnchants.git
synced 2025-02-24 05:51:21 +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 {
|
dependencies {
|
||||||
compileOnly 'com.willfp:eco:3.1.0'
|
compileOnly 'com.willfp:eco:3.3.0'
|
||||||
|
|
||||||
compileOnly 'org.jetbrains:annotations:19.0.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.enchantments.util.WatcherTriggers;
|
||||||
import com.willfp.ecoenchants.integrations.essentials.EssentialsManager;
|
import com.willfp.ecoenchants.integrations.essentials.EssentialsManager;
|
||||||
import com.willfp.ecoenchants.integrations.essentials.plugins.IntegrationEssentials;
|
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.WorldguardManager;
|
||||||
import com.willfp.ecoenchants.integrations.worldguard.plugins.WorldguardIntegrationImpl;
|
import com.willfp.ecoenchants.integrations.worldguard.plugins.WorldguardIntegrationImpl;
|
||||||
import com.willfp.ecoenchants.proxy.proxies.FastGetEnchantsProxy;
|
import com.willfp.ecoenchants.proxy.proxies.FastGetEnchantsProxy;
|
||||||
@ -163,8 +161,7 @@ public class EcoEnchantsPlugin extends AbstractEcoPlugin {
|
|||||||
new IntegrationLoader("WorldGuard", () -> {
|
new IntegrationLoader("WorldGuard", () -> {
|
||||||
WorldguardManager.register(new WorldguardIntegrationImpl());
|
WorldguardManager.register(new WorldguardIntegrationImpl());
|
||||||
}),
|
}),
|
||||||
new IntegrationLoader("Essentials", () -> EssentialsManager.register(new IntegrationEssentials())),
|
new IntegrationLoader("Essentials", () -> EssentialsManager.register(new IntegrationEssentials()))
|
||||||
new IntegrationLoader("mcMMO", () -> McmmoManager.registerIntegration(new McmmoIntegrationImpl()))
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,6 +3,7 @@ package com.willfp.ecoenchants.enchantments.ecoenchants.normal;
|
|||||||
import com.willfp.eco.util.drops.DropQueue;
|
import com.willfp.eco.util.drops.DropQueue;
|
||||||
import com.willfp.eco.util.events.entitydeathbyentity.EntityDeathByEntityEvent;
|
import com.willfp.eco.util.events.entitydeathbyentity.EntityDeathByEntityEvent;
|
||||||
import com.willfp.eco.util.integrations.antigrief.AntigriefManager;
|
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.EcoEnchant;
|
||||||
import com.willfp.ecoenchants.enchantments.EcoEnchants;
|
import com.willfp.ecoenchants.enchantments.EcoEnchants;
|
||||||
import com.willfp.ecoenchants.enchantments.meta.EnchantmentType;
|
import com.willfp.ecoenchants.enchantments.meta.EnchantmentType;
|
||||||
@ -70,6 +71,9 @@ public class Telekinesis extends EcoEnchant {
|
|||||||
|
|
||||||
for (Item item : event.getItems()) {
|
for (Item item : event.getItems()) {
|
||||||
drops.add(item.getItemStack());
|
drops.add(item.getItemStack());
|
||||||
|
for (int i = 0; i < McmmoManager.getBonusDropCount(block); i++) {
|
||||||
|
drops.add(item.getItemStack());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
event.getItems().clear();
|
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.internal.PluginDependent;
|
||||||
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
|
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
|
||||||
import com.willfp.ecoenchants.enchantments.EcoEnchants;
|
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.proxy.proxies.TridentStackProxy;
|
||||||
import com.willfp.ecoenchants.util.ProxyUtils;
|
import com.willfp.ecoenchants.util.ProxyUtils;
|
||||||
import org.bukkit.Material;
|
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