diff --git a/changelog.md b/changelog.md
index 999ea81..7df1f5a 100644
--- a/changelog.md
+++ b/changelog.md
@@ -19,6 +19,7 @@ These changes will (most likely) be included in the next version.
- Config-files with missing `pet-items` nodes no longer errors. A missing `pet-items` node in `global-settings` is treated as empty, i.e. no pet items will be registered.
- The `player-time-in-arena` setting has been fixed.
- Config-file errors imposed by incorrect usage of `/ma setting` no longer cause "internal errors". Instead, the errors are properly communicated in the command output similar to how the `/ma reload` command works.
+- The MagicSpells integration has been removed. This means that the extra `magicspells.yml` config-file (if it exists) no longer does anything and can be removed.
## [0.104.2] - 2020-01-03
- The region overlap check now works across both arena and lobby regions, i.e. all four combinations of intersections between two regions (arena-arena, arena-lobby, lobby-arena, and lobby-lobby) are evaluated.
diff --git a/pom.xml b/pom.xml
index 3751971..9c4ee02 100644
--- a/pom.xml
+++ b/pom.xml
@@ -83,7 +83,7 @@
http://repo.codemc.org/repository/maven-public/
-
+
jitpack.io
https://jitpack.io
@@ -115,14 +115,6 @@
compile
-
-
- com.github.TheComputerGeek2
- MagicSpells
- 3.5-Release
- provided
-
-
junit
diff --git a/src/main/java/com/garbagemule/MobArena/MobArena.java b/src/main/java/com/garbagemule/MobArena/MobArena.java
index 4f437d9..986e8d3 100644
--- a/src/main/java/com/garbagemule/MobArena/MobArena.java
+++ b/src/main/java/com/garbagemule/MobArena/MobArena.java
@@ -5,7 +5,6 @@ import com.garbagemule.MobArena.config.LoadsConfigFile;
import com.garbagemule.MobArena.framework.Arena;
import com.garbagemule.MobArena.framework.ArenaMaster;
import com.garbagemule.MobArena.listeners.MAGlobalListener;
-import com.garbagemule.MobArena.listeners.MagicSpellsListener;
import com.garbagemule.MobArena.metrics.ArenaCountChart;
import com.garbagemule.MobArena.metrics.ClassChestsChart;
import com.garbagemule.MobArena.metrics.ClassCountChart;
@@ -96,7 +95,6 @@ public class MobArena extends JavaPlugin
registerConfigurationSerializers();
setupVault();
- setupMagicSpells();
setupBossAbilities();
setupListeners();
setupMetrics();
@@ -147,16 +145,6 @@ public class MobArena extends JavaPlugin
}
}
- private void setupMagicSpells() {
- Plugin spells = this.getServer().getPluginManager().getPlugin("MagicSpells");
- if (spells == null) {
- return;
- }
-
- getLogger().info("MagicSpells found, loading config-file.");
- this.getServer().getPluginManager().registerEvents(new MagicSpellsListener(this), this);
- }
-
private void setupBossAbilities() {
AbilityManager.loadCoreAbilities();
AbilityManager.loadCustomAbilities(getDataFolder());
diff --git a/src/main/java/com/garbagemule/MobArena/listeners/MagicSpellsListener.java b/src/main/java/com/garbagemule/MobArena/listeners/MagicSpellsListener.java
deleted file mode 100644
index 347a84d..0000000
--- a/src/main/java/com/garbagemule/MobArena/listeners/MagicSpellsListener.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package com.garbagemule.MobArena.listeners;
-
-import com.garbagemule.MobArena.MobArena;
-import com.garbagemule.MobArena.framework.Arena;
-import com.garbagemule.MobArena.waves.enums.WaveType;
-import com.nisovin.magicspells.events.SpellCastEvent;
-import org.bukkit.configuration.ConfigurationSection;
-import org.bukkit.configuration.file.FileConfiguration;
-import org.bukkit.configuration.file.YamlConfiguration;
-import org.bukkit.event.EventHandler;
-import org.bukkit.event.EventPriority;
-import org.bukkit.event.Listener;
-
-import java.io.File;
-import java.util.List;
-
-public class MagicSpellsListener implements Listener
-{
- private MobArena plugin;
- private List disabled, disabledOnBoss, disabledOnSwarm;
-
- public MagicSpellsListener(MobArena plugin)
- {
- this.plugin = plugin;
-
- // Set up the MagicSpells config-file.
- File file = new File(plugin.getDataFolder(), "magicspells.yml");
- if (!file.exists()) {
- plugin.saveResource("magicspells.yml", false);
- plugin.getLogger().info("magicspells.yml created.");
- }
- try {
- FileConfiguration config = new YamlConfiguration();
- config.load(file);
- setupSpells(config);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
-
- @EventHandler(priority = EventPriority.NORMAL)
- public void onSpellCast(SpellCastEvent event)
- {
- Arena arena = plugin.getArenaMaster().getArenaWithPlayer(event.getCaster());
- if (arena == null || !arena.isRunning()) return;
-
- String spell = event.getSpell().getName();
- WaveType type = (arena.getWaveManager().getCurrent() != null) ? arena.getWaveManager().getCurrent().getType() : null;
-
- if (disabled.contains(spell) ||
- (type == WaveType.BOSS && disabledOnBoss.contains(spell)) ||
- (type == WaveType.SWARM && disabledOnSwarm.contains(spell))) {
- event.setCancelled(true);
- }
- }
-
- private void setupSpells(ConfigurationSection config)
- {
- this.disabled = config.getStringList("disabled-spells");
- this.disabledOnBoss = config.getStringList("disabled-on-bosses");
- this.disabledOnSwarm = config.getStringList("disabled-on-swarms");
- }
-}
diff --git a/src/main/resources/magicspells.yml b/src/main/resources/magicspells.yml
deleted file mode 100644
index 988ff37..0000000
--- a/src/main/resources/magicspells.yml
+++ /dev/null
@@ -1,18 +0,0 @@
-# MobArena disabled MagicSpells spells
-#
-# Use this file to disable the MagicSpells spells you don't want your players
-# to use during arena sessions. Make sure to put a hyphen (-) before every
-# spell, and try to keep the indentation proper.
-#
-# Spells that will be disabled for the entire arena session.
-disabled-spells:
-- carpet
-- blink
-
-# Spells that will be disabled only while a boss is present.
-disabled-on-bosses:
-- purge
-
-# Spells that will be disabled only during swarm waves.
-disabled-on-swarms:
-- purge
\ No newline at end of file