diff --git a/src/com/projectkorra/projectkorra/GeneralMethods.java b/src/com/projectkorra/projectkorra/GeneralMethods.java index 74b01d4c..39ec1908 100644 --- a/src/com/projectkorra/projectkorra/GeneralMethods.java +++ b/src/com/projectkorra/projectkorra/GeneralMethods.java @@ -39,6 +39,7 @@ import org.bukkit.World; import org.bukkit.block.Block; import org.bukkit.block.BlockFace; import org.bukkit.block.BlockState; +import org.bukkit.command.CommandSender; import org.bukkit.entity.Entity; import org.bukkit.entity.EntityType; import org.bukkit.entity.FallingBlock; @@ -1225,10 +1226,14 @@ public class GeneralMethods { return mat != null && (mat == Material.WOOD_AXE || mat == Material.WOOD_PICKAXE || mat == Material.WOOD_SPADE || mat == Material.WOOD_SWORD || mat == Material.STONE_AXE || mat == Material.STONE_PICKAXE || mat == Material.STONE_SPADE || mat == Material.STONE_SWORD || mat == Material.IRON_AXE || mat == Material.IRON_PICKAXE || mat == Material.IRON_SWORD || mat == Material.IRON_SPADE || mat == Material.DIAMOND_AXE || mat == Material.DIAMOND_PICKAXE || mat == Material.DIAMOND_SWORD || mat == Material.DIAMOND_SPADE); } - public static void reloadPlugin() { + public static void reloadPlugin(CommandSender sender) { ProjectKorra.log.info("Reloading ProjectKorra and configuration"); - BendingReloadEvent event = new BendingReloadEvent(); + BendingReloadEvent event = new BendingReloadEvent(sender); Bukkit.getServer().getPluginManager().callEvent(event); + if (event.isCancelled()) { + sender.sendMessage(ChatColor.RED + "Reload event cancelled"); + return; + } if (DBConnection.isOpen) { DBConnection.sql.close(); } diff --git a/src/com/projectkorra/projectkorra/command/ReloadCommand.java b/src/com/projectkorra/projectkorra/command/ReloadCommand.java index 656402cf..32b332c8 100644 --- a/src/com/projectkorra/projectkorra/command/ReloadCommand.java +++ b/src/com/projectkorra/projectkorra/command/ReloadCommand.java @@ -21,7 +21,7 @@ public class ReloadCommand extends PKCommand { if (!hasPermission(sender) || !correctLength(sender, args.size(), 0, 0)) { return; } - GeneralMethods.reloadPlugin(); + GeneralMethods.reloadPlugin(sender); sender.sendMessage(ChatColor.AQUA + "Bending config reloaded."); } diff --git a/src/com/projectkorra/projectkorra/event/AbilityLoadEvent.java b/src/com/projectkorra/projectkorra/event/AbilityLoadEvent.java index c2247700..c489d66c 100644 --- a/src/com/projectkorra/projectkorra/event/AbilityLoadEvent.java +++ b/src/com/projectkorra/projectkorra/event/AbilityLoadEvent.java @@ -8,8 +8,6 @@ import java.util.jar.JarFile; /** * Called when an ability is successfully loaded. - * - * @author kingbirdy */ public class AbilityLoadEvent extends Event { diff --git a/src/com/projectkorra/projectkorra/event/BendingReloadEvent.java b/src/com/projectkorra/projectkorra/event/BendingReloadEvent.java index 7cbde90b..e7b8358c 100644 --- a/src/com/projectkorra/projectkorra/event/BendingReloadEvent.java +++ b/src/com/projectkorra/projectkorra/event/BendingReloadEvent.java @@ -1,19 +1,19 @@ package com.projectkorra.projectkorra.event; +import org.bukkit.command.CommandSender; +import org.bukkit.event.Cancellable; import org.bukkit.event.Event; import org.bukkit.event.HandlerList; /** * Called when the /bending reload command is executed. - * - * @author kingbirdy - * @version 1.0 */ -public class BendingReloadEvent extends Event { +public class BendingReloadEvent extends Event implements Cancellable { private static final HandlerList handlers = new HandlerList(); - - public BendingReloadEvent() { + private boolean cancelled = false; + + public BendingReloadEvent(CommandSender sender) { } @@ -24,4 +24,21 @@ public class BendingReloadEvent extends Event { public static HandlerList getHandlerList() { return handlers; } + + /** + * @return Whether the event is cancelled + */ + @Override + public boolean isCancelled() { + return cancelled; + } + + /** + * Sets if the event is cancelled + * @param cancel boolean value indicating whether the event is cancelled or not + */ + @Override + public void setCancelled(boolean cancel) { + cancelled = cancel; + } } diff --git a/src/com/projectkorra/projectkorra/event/BindChangeEvent.java b/src/com/projectkorra/projectkorra/event/BindChangeEvent.java index da68c4c9..32db2ad4 100644 --- a/src/com/projectkorra/projectkorra/event/BindChangeEvent.java +++ b/src/com/projectkorra/projectkorra/event/BindChangeEvent.java @@ -9,7 +9,7 @@ import org.bukkit.event.HandlerList; * * @author savior67 */ -public class BindChangeEvent extends Event{ +public class BindChangeEvent extends Event { private static final HandlerList handlers = new HandlerList(); private Player player; diff --git a/src/com/projectkorra/projectkorra/event/EntityBendingDeathEvent.java b/src/com/projectkorra/projectkorra/event/EntityBendingDeathEvent.java index 5f01816b..5e537374 100644 --- a/src/com/projectkorra/projectkorra/event/EntityBendingDeathEvent.java +++ b/src/com/projectkorra/projectkorra/event/EntityBendingDeathEvent.java @@ -20,6 +20,7 @@ public class EntityBendingDeathEvent extends Event { private double damage; /** + * Creates a new EntityBendingDeathEvent * * @param victim the player who died * @param attacker the player who killed the victim diff --git a/src/com/projectkorra/projectkorra/event/PlayerChangeElementEvent.java b/src/com/projectkorra/projectkorra/event/PlayerChangeElementEvent.java index 3ff3e877..2062c328 100644 --- a/src/com/projectkorra/projectkorra/event/PlayerChangeElementEvent.java +++ b/src/com/projectkorra/projectkorra/event/PlayerChangeElementEvent.java @@ -9,9 +9,6 @@ import org.bukkit.event.HandlerList; /** * Called when a player's bending element is modified - * - * @author kingbirdy - * */ public class PlayerChangeElementEvent extends Event {