浏览代码

Misc code fixes

nossr50 4 年之前
父节点
当前提交
7eae59a0b3
共有 100 个文件被更改,包括 838 次插入1044 次删除
  1. 1 17
      extras/mods/1.6.x/extrabiomesxl.blocks.yml
  2. 0 18
      extras/mods/1.6.x/metallurgy3.tools.yml
  3. 0 20
      extras/mods/1.6.x/twilightforest.armor.yml
  4. 4 7
      src/main/java/com/gmail/nossr50/commands/McImportCommand.java
  5. 11 14
      src/main/java/com/gmail/nossr50/commands/McconvertCommand.java
  6. 9 12
      src/main/java/com/gmail/nossr50/commands/McnotifyCommand.java
  7. 3 5
      src/main/java/com/gmail/nossr50/commands/McscoreboardCommand.java
  8. 4 6
      src/main/java/com/gmail/nossr50/commands/ToggleCommand.java
  9. 9 11
      src/main/java/com/gmail/nossr50/commands/admin/McmmoReloadLocaleCommand.java
  10. 4 6
      src/main/java/com/gmail/nossr50/commands/chat/ChatCommand.java
  11. 32 36
      src/main/java/com/gmail/nossr50/commands/database/ConvertDatabaseCommand.java
  12. 8 11
      src/main/java/com/gmail/nossr50/commands/database/McpurgeCommand.java
  13. 20 26
      src/main/java/com/gmail/nossr50/commands/database/McremoveCommand.java
  14. 8 11
      src/main/java/com/gmail/nossr50/commands/database/MmoshowdbCommand.java
  15. 20 23
      src/main/java/com/gmail/nossr50/commands/experience/ConvertExperienceCommand.java
  16. 6 8
      src/main/java/com/gmail/nossr50/commands/hardcore/HardcoreModeCommand.java
  17. 19 23
      src/main/java/com/gmail/nossr50/commands/party/PartyAcceptCommand.java
  18. 15 20
      src/main/java/com/gmail/nossr50/commands/party/PartyChangeOwnerCommand.java
  19. 18 18
      src/main/java/com/gmail/nossr50/commands/party/PartyCommand.java
  20. 16 20
      src/main/java/com/gmail/nossr50/commands/party/PartyDisbandCommand.java
  21. 13 16
      src/main/java/com/gmail/nossr50/commands/party/PartyHelpCommand.java
  22. 38 43
      src/main/java/com/gmail/nossr50/commands/party/PartyInviteCommand.java
  23. 24 28
      src/main/java/com/gmail/nossr50/commands/party/PartyKickCommand.java
  24. 1 1
      src/main/java/com/gmail/nossr50/commands/party/PartyLockCommand.java
  25. 15 19
      src/main/java/com/gmail/nossr50/commands/party/PartyQuitCommand.java
  26. 32 36
      src/main/java/com/gmail/nossr50/commands/party/PartyRenameCommand.java
  27. 11 16
      src/main/java/com/gmail/nossr50/commands/party/PartyXpShareCommand.java
  28. 18 22
      src/main/java/com/gmail/nossr50/commands/party/alliance/PartyAllianceAcceptCommand.java
  29. 11 13
      src/main/java/com/gmail/nossr50/commands/party/alliance/PartyAllianceCommand.java
  30. 15 19
      src/main/java/com/gmail/nossr50/commands/party/alliance/PartyAllianceDisbandCommand.java
  31. 42 46
      src/main/java/com/gmail/nossr50/commands/party/alliance/PartyAllianceInviteCommand.java
  32. 56 62
      src/main/java/com/gmail/nossr50/commands/party/teleport/PtpCommand.java
  33. 51 58
      src/main/java/com/gmail/nossr50/commands/player/InspectCommand.java
  34. 26 31
      src/main/java/com/gmail/nossr50/commands/player/MccooldownCommand.java
  35. 4 6
      src/main/java/com/gmail/nossr50/commands/player/McrankCommand.java
  36. 24 29
      src/main/java/com/gmail/nossr50/commands/player/McstatsCommand.java
  37. 3 5
      src/main/java/com/gmail/nossr50/commands/player/MctopCommand.java
  38. 1 1
      src/main/java/com/gmail/nossr50/commands/skills/AcrobaticsCommand.java
  39. 25 30
      src/main/java/com/gmail/nossr50/commands/skills/AprilCommand.java
  40. 1 1
      src/main/java/com/gmail/nossr50/commands/skills/ExcavationCommand.java
  41. 1 1
      src/main/java/com/gmail/nossr50/commands/skills/HerbalismCommand.java
  42. 3 5
      src/main/java/com/gmail/nossr50/commands/skills/MmoInfoCommand.java
  43. 39 45
      src/main/java/com/gmail/nossr50/commands/skills/SkillCommand.java
  44. 3 3
      src/main/java/com/gmail/nossr50/commands/skills/SkillGuideCommand.java
  45. 2 2
      src/main/java/com/gmail/nossr50/commands/skills/UnarmedCommand.java
  46. 1 1
      src/main/java/com/gmail/nossr50/commands/skills/WoodcuttingCommand.java
  47. 1 2
      src/main/java/com/gmail/nossr50/config/AdvancedConfig.java
  48. 1 1
      src/main/java/com/gmail/nossr50/config/ConfigLoader.java
  49. 1 1
      src/main/java/com/gmail/nossr50/config/HiddenConfig.java
  50. 1 1
      src/main/java/com/gmail/nossr50/config/RankConfig.java
  51. 1 1
      src/main/java/com/gmail/nossr50/config/SoundConfig.java
  52. 1 1
      src/main/java/com/gmail/nossr50/config/WorldBlacklist.java
  53. 10 11
      src/main/java/com/gmail/nossr50/config/skills/alchemy/PotionConfig.java
  54. 1 1
      src/main/java/com/gmail/nossr50/config/skills/repair/RepairConfig.java
  55. 1 1
      src/main/java/com/gmail/nossr50/config/skills/salvage/SalvageConfig.java
  56. 19 19
      src/main/java/com/gmail/nossr50/database/DatabaseManager.java
  57. 14 14
      src/main/java/com/gmail/nossr50/database/FlatfileDatabaseManager.java
  58. 3 4
      src/main/java/com/gmail/nossr50/database/SQLDatabaseManager.java
  59. 1 1
      src/main/java/com/gmail/nossr50/datatypes/BlockSnapshot.java
  60. 1 1
      src/main/java/com/gmail/nossr50/datatypes/MobHealthbarType.java
  61. 3 3
      src/main/java/com/gmail/nossr50/datatypes/chat/ChatMode.java
  62. 3 3
      src/main/java/com/gmail/nossr50/datatypes/mods/CustomBlock.java
  63. 6 6
      src/main/java/com/gmail/nossr50/datatypes/mods/CustomEntity.java
  64. 3 3
      src/main/java/com/gmail/nossr50/datatypes/mods/CustomTool.java
  65. 2 2
      src/main/java/com/gmail/nossr50/datatypes/party/PartyLeader.java
  66. 4 4
      src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java
  67. 3 5
      src/main/java/com/gmail/nossr50/datatypes/player/PlayerProfile.java
  68. 1 1
      src/main/java/com/gmail/nossr50/datatypes/skills/ItemType.java
  69. 7 7
      src/main/java/com/gmail/nossr50/datatypes/skills/PrimarySkillType.java
  70. 4 6
      src/main/java/com/gmail/nossr50/datatypes/skills/SubSkillType.java
  71. 6 6
      src/main/java/com/gmail/nossr50/datatypes/skills/SuperAbilityType.java
  72. 3 3
      src/main/java/com/gmail/nossr50/datatypes/skills/ToolType.java
  73. 1 1
      src/main/java/com/gmail/nossr50/datatypes/skills/alchemy/AlchemyPotion.java
  74. 1 1
      src/main/java/com/gmail/nossr50/datatypes/skills/alchemy/PotionStage.java
  75. 18 26
      src/main/java/com/gmail/nossr50/datatypes/skills/subskills/acrobatics/Roll.java
  76. 6 6
      src/main/java/com/gmail/nossr50/datatypes/skills/subskills/taming/TamingSummon.java
  77. 2 2
      src/main/java/com/gmail/nossr50/events/chat/McMMOChatEvent.java
  78. 1 1
      src/main/java/com/gmail/nossr50/events/chat/McMMOPartyChatEvent.java
  79. 1 1
      src/main/java/com/gmail/nossr50/events/hardcore/McMMOPlayerVampirismEvent.java
  80. 4 4
      src/main/java/com/gmail/nossr50/events/party/McMMOPartyAllianceChangeEvent.java
  81. 4 4
      src/main/java/com/gmail/nossr50/events/party/McMMOPartyChangeEvent.java
  82. 1 1
      src/main/java/com/gmail/nossr50/events/party/McMMOPartyLevelUpEvent.java
  83. 2 2
      src/main/java/com/gmail/nossr50/events/party/McMMOPartyTeleportEvent.java
  84. 1 1
      src/main/java/com/gmail/nossr50/events/party/McMMOPartyXpGainEvent.java
  85. 2 2
      src/main/java/com/gmail/nossr50/events/players/McMMOPlayerProfileLoadEvent.java
  86. 1 1
      src/main/java/com/gmail/nossr50/events/skills/abilities/McMMOPlayerAbilityEvent.java
  87. 1 1
      src/main/java/com/gmail/nossr50/events/skills/alchemy/McMMOPlayerBrewEvent.java
  88. 1 1
      src/main/java/com/gmail/nossr50/events/skills/fishing/McMMOPlayerMagicHunterEvent.java
  89. 3 3
      src/main/java/com/gmail/nossr50/events/skills/repair/McMMOPlayerRepairCheckEvent.java
  90. 3 3
      src/main/java/com/gmail/nossr50/events/skills/salvage/McMMOPlayerSalvageCheckEvent.java
  91. 1 1
      src/main/java/com/gmail/nossr50/events/skills/unarmed/McMMOPlayerDisarmEvent.java
  92. 2 4
      src/main/java/com/gmail/nossr50/listeners/InteractionManager.java
  93. 1 1
      src/main/java/com/gmail/nossr50/locale/LocaleLoader.java
  94. 1 2
      src/main/java/com/gmail/nossr50/mcMMO.java
  95. 3 3
      src/main/java/com/gmail/nossr50/party/PartyManager.java
  96. 1 1
      src/main/java/com/gmail/nossr50/runnables/MobHealthDisplayUpdaterTask.java
  97. 3 3
      src/main/java/com/gmail/nossr50/runnables/PistonTrackerTask.java
  98. 3 3
      src/main/java/com/gmail/nossr50/runnables/StickyPistonTrackerTask.java
  99. 1 5
      src/main/java/com/gmail/nossr50/runnables/backups/CleanBackupsTask.java
  100. 1 1
      src/main/java/com/gmail/nossr50/runnables/commands/McScoreboardKeepTask.java

+ 1 - 17
extras/mods/1.6.x/extrabiomesxl.blocks.yml

@@ -99,10 +99,6 @@ Woodcutting:
         Double_Drops_Enabled: true
         Is_Log: true
     # Fir Quarters
-    X2209|1:
-        XP_Gain: 80
-        Double_Drops_Enabled: true
-        Is_Log: true
     X2211|1:
         XP_Gain: 100
         Double_Drops_Enabled: true
@@ -116,10 +112,6 @@ Woodcutting:
         Double_Drops_Enabled: true
         Is_Log: true        
     # Oak Quarters
-    X2209|2:
-        XP_Gain: 70
-        Double_Drops_Enabled: true
-        Is_Log: true
     X2211|2:
         XP_Gain: 100
         Double_Drops_Enabled: true
@@ -133,15 +125,7 @@ Woodcutting:
         Double_Drops_Enabled: true
         Is_Log: true
     # Acacia 
-    X2209|1:
-        XP_Gain: 80
-        Double_Drops_Enabled: true
-        Is_Log: true
-    # Cypress 
-    X2209|2:
-        XP_Gain: 90
-        Double_Drops_Enabled: true
-        Is_Log: true
+    # Cypress
     # Bald Cypress Quarter
     X2225|0:
         XP_Gain: 90

+ 0 - 18
extras/mods/1.6.x/metallurgy3.tools.yml

@@ -366,25 +366,7 @@ Axes:
 ###
 Bows:
     #Bow_1
-    X999:
-        XP_Modifer: 1.0
-        Ability_Enabled: true
-        Tier: 1
-        Repairable: true
-        Repair_Material: X99
-        Repair_Material_Data_Value: 0
-        Repair_Material_Quantity: 9
-        Durability: 9999
     #Bow_2
-    X999:
-        XP_Modifer: 1.0
-        Ability_Enabled: true
-        Tier: 1
-        Repairable: true
-        Repair_Material: X99
-        Repair_Material_Data_Value: 0
-        Repair_Material_Quantity: 9
-        Durability: 9999
 
 #
 #  Settings for Hoes

+ 0 - 20
extras/mods/1.6.x/twilightforest.armor.yml

@@ -68,17 +68,7 @@ Chestplates:
         Repair_Material_Quantity: 8
         Durability: 320
     # Knightmetal
-    X28035:
-        Repairable: true
-        Repair_Material: X28032
-        Repair_Material_Pretty_Name: "Knightmetal Ingot"
-        Repair_Material_Data_Value: 0
-        Repair_Material_Quantity: 8
-        Durability: 320
     # Phantom
-    X28035:
-        Repairable: false
-        Durability: 480
 
 Helmets:
     # Ironwood
@@ -106,17 +96,7 @@ Helmets:
         Repair_Material_Quantity: 5
         Durability: 220
     # Knightmetal
-    X28034:
-        Repairable: true
-        Repair_Material: X28032
-        Repair_Material_Pretty_Name: "Knightmetal Ingot"
-        Repair_Material_Data_Value: 0
-        Repair_Material_Quantity: 5
-        Durability: 220
     # Phantom
-    X28034:
-        Repairable: false
-        Durability: 330
 
 Leggings:
     # Ironwood

+ 4 - 7
src/main/java/com/gmail/nossr50/commands/McImportCommand.java

@@ -18,14 +18,11 @@ public class McImportCommand implements CommandExecutor {
 
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 0:
-                importModConfig();
-                return true;
-
-            default:
-                return false;
+        if (args.length == 0) {
+            importModConfig();
+            return true;
         }
+        return false;
     }
 
     public boolean importModConfig() {

+ 11 - 14
src/main/java/com/gmail/nossr50/commands/McconvertCommand.java

@@ -22,8 +22,8 @@ public class McconvertCommand implements TabExecutor {
     private static final List<String> DATABASE_TYPES;
     private static final List<String> SUBCOMMANDS = ImmutableList.of("database", "experience");
 
-    private CommandExecutor databaseConvertCommand = new ConvertDatabaseCommand();
-    private CommandExecutor experienceConvertCommand = new ConvertExperienceCommand();
+    private final CommandExecutor databaseConvertCommand = new ConvertDatabaseCommand();
+    private final CommandExecutor experienceConvertCommand = new ConvertExperienceCommand();
 
     static {
         ArrayList<String> formulaTypes = new ArrayList<String>();
@@ -54,19 +54,16 @@ public class McconvertCommand implements TabExecutor {
 
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 2:
-                if (args[0].equalsIgnoreCase("database") || args[0].equalsIgnoreCase("db")) {
-                    return databaseConvertCommand.onCommand(sender, command, label, args);
-                }
-                else if (args[0].equalsIgnoreCase("experience") || args[0].equalsIgnoreCase("xp") || args[1].equalsIgnoreCase("exp")) {
-                    return experienceConvertCommand.onCommand(sender, command, label, args);
-                }
-
-                return false;
-            default:
-                return false;
+        if (args.length == 2) {
+            if (args[0].equalsIgnoreCase("database") || args[0].equalsIgnoreCase("db")) {
+                return databaseConvertCommand.onCommand(sender, command, label, args);
+            } else if (args[0].equalsIgnoreCase("experience") || args[0].equalsIgnoreCase("xp") || args[1].equalsIgnoreCase("exp")) {
+                return experienceConvertCommand.onCommand(sender, command, label, args);
+            }
+
+            return false;
         }
+        return false;
     }
 
     @Override

+ 9 - 12
src/main/java/com/gmail/nossr50/commands/McnotifyCommand.java

@@ -19,21 +19,18 @@ public class McnotifyCommand implements TabExecutor {
             return true;
         }
 
-        switch (args.length) {
-            case 0:
-                McMMOPlayer mcMMOPlayer = UserManager.getPlayer((Player) sender);
+        if (args.length == 0) {
+            McMMOPlayer mcMMOPlayer = UserManager.getPlayer((Player) sender);
 
-                //Not Loaded yet
-                if(mcMMOPlayer == null)
-                    sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
+            //Not Loaded yet
+            if (mcMMOPlayer == null)
+                sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
 
-                sender.sendMessage(LocaleLoader.getString("Commands.Notifications." + (mcMMOPlayer.useChatNotifications() ? "Off" : "On")));
-                mcMMOPlayer.toggleChatNotifications();
-                return true;
-
-            default:
-                return false;
+            sender.sendMessage(LocaleLoader.getString("Commands.Notifications." + (mcMMOPlayer.useChatNotifications() ? "Off" : "On")));
+            mcMMOPlayer.toggleChatNotifications();
+            return true;
         }
+        return false;
     }
 
     @Override

+ 3 - 5
src/main/java/com/gmail/nossr50/commands/McscoreboardCommand.java

@@ -70,12 +70,10 @@ public class McscoreboardCommand implements TabExecutor {
 
     @Override
     public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
-        switch (args.length) {
-            case 1:
-                return StringUtil.copyPartialMatches(args[0], FIRST_ARGS, new ArrayList<String>(FIRST_ARGS.size()));
-            default:
-                return ImmutableList.of();
+        if (args.length == 1) {
+            return StringUtil.copyPartialMatches(args[0], FIRST_ARGS, new ArrayList<String>(FIRST_ARGS.size()));
         }
+        return ImmutableList.of();
     }
 
     private boolean help(CommandSender sender) {

+ 4 - 6
src/main/java/com/gmail/nossr50/commands/ToggleCommand.java

@@ -61,13 +61,11 @@ public abstract class ToggleCommand implements TabExecutor {
 
     @Override
     public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
-        switch (args.length) {
-            case 1:
-                List<String> playerNames = CommandUtils.getOnlinePlayerNames(sender);
-                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
-            default:
-                return ImmutableList.of();
+        if (args.length == 1) {
+            List<String> playerNames = CommandUtils.getOnlinePlayerNames(sender);
+            return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
         }
+        return ImmutableList.of();
     }
 
     protected abstract boolean hasOtherPermission(CommandSender sender);

+ 9 - 11
src/main/java/com/gmail/nossr50/commands/admin/McmmoReloadLocaleCommand.java

@@ -12,19 +12,17 @@ import org.bukkit.command.CommandSender;
 public final class McmmoReloadLocaleCommand implements CommandExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 0:
-                if (!Permissions.reloadlocale(sender)) {
-                    sender.sendMessage(command.getPermissionMessage());
-                    return true;
-                }
+        if (args.length == 0) {
+            if (!Permissions.reloadlocale(sender)) {
+                sender.sendMessage(command.getPermissionMessage());
+                return true;
+            }
 
-                LocaleLoader.reloadLocale();
-                sender.sendMessage(LocaleLoader.getString("Locale.Reloaded"));
+            LocaleLoader.reloadLocale();
+            sender.sendMessage(LocaleLoader.getString("Locale.Reloaded"));
 
-                return true;
-            default:
-                return false;
+            return true;
         }
+        return false;
     }
 }

+ 4 - 6
src/main/java/com/gmail/nossr50/commands/chat/ChatCommand.java

@@ -21,7 +21,7 @@ import java.util.ArrayList;
 import java.util.List;
 
 public abstract class ChatCommand implements TabExecutor {
-    private ChatMode chatMode;
+    private final ChatMode chatMode;
     protected ChatManager chatManager;
 
     public ChatCommand(ChatMode chatMode) {
@@ -89,12 +89,10 @@ public abstract class ChatCommand implements TabExecutor {
 
     @Override
     public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
-        switch (args.length) {
-            case 1:
-                return StringUtil.copyPartialMatches(args[0], CommandUtils.TRUE_FALSE_OPTIONS, new ArrayList<String>(CommandUtils.TRUE_FALSE_OPTIONS.size()));
-            default:
-                return ImmutableList.of();
+        if (args.length == 1) {
+            return StringUtil.copyPartialMatches(args[0], CommandUtils.TRUE_FALSE_OPTIONS, new ArrayList<String>(CommandUtils.TRUE_FALSE_OPTIONS.size()));
         }
+        return ImmutableList.of();
     }
 
     protected String buildChatMessage(String[] args, int index) {

+ 32 - 36
src/main/java/com/gmail/nossr50/commands/database/ConvertDatabaseCommand.java

@@ -17,58 +17,54 @@ import org.bukkit.entity.Player;
 public class ConvertDatabaseCommand implements CommandExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 2:
-                DatabaseType previousType = DatabaseType.getDatabaseType(args[1]);
-                DatabaseType newType = mcMMO.getDatabaseManager().getDatabaseType();
+        if (args.length == 2) {
+            DatabaseType previousType = DatabaseType.getDatabaseType(args[1]);
+            DatabaseType newType = mcMMO.getDatabaseManager().getDatabaseType();
 
-                if (previousType == newType || (newType == DatabaseType.CUSTOM && DatabaseManagerFactory.getCustomDatabaseManagerClass().getSimpleName().equalsIgnoreCase(args[1]))) {
-                    sender.sendMessage(LocaleLoader.getString("Commands.mcconvert.Database.Same", newType.toString()));
-                    return true;
-                }
-
-                DatabaseManager oldDatabase = DatabaseManagerFactory.createDatabaseManager(previousType);
+            if (previousType == newType || (newType == DatabaseType.CUSTOM && DatabaseManagerFactory.getCustomDatabaseManagerClass().getSimpleName().equalsIgnoreCase(args[1]))) {
+                sender.sendMessage(LocaleLoader.getString("Commands.mcconvert.Database.Same", newType.toString()));
+                return true;
+            }
 
-                if (previousType == DatabaseType.CUSTOM) {
-                    Class<?> clazz;
+            DatabaseManager oldDatabase = DatabaseManagerFactory.createDatabaseManager(previousType);
 
-                    try {
-                        clazz = Class.forName(args[1]);
+            if (previousType == DatabaseType.CUSTOM) {
+                Class<?> clazz;
 
-                        if (!DatabaseManager.class.isAssignableFrom(clazz)) {
-                            sender.sendMessage(LocaleLoader.getString("Commands.mcconvert.Database.InvalidType", args[1]));
-                            return true;
-                        }
+                try {
+                    clazz = Class.forName(args[1]);
 
-                        oldDatabase = DatabaseManagerFactory.createCustomDatabaseManager((Class<? extends DatabaseManager>) clazz);
-                    }
-                    catch (Throwable e) {
-                        e.printStackTrace();
+                    if (!DatabaseManager.class.isAssignableFrom(clazz)) {
                         sender.sendMessage(LocaleLoader.getString("Commands.mcconvert.Database.InvalidType", args[1]));
                         return true;
                     }
+
+                    oldDatabase = DatabaseManagerFactory.createCustomDatabaseManager((Class<? extends DatabaseManager>) clazz);
+                } catch (Throwable e) {
+                    e.printStackTrace();
+                    sender.sendMessage(LocaleLoader.getString("Commands.mcconvert.Database.InvalidType", args[1]));
+                    return true;
                 }
+            }
 
-                sender.sendMessage(LocaleLoader.getString("Commands.mcconvert.Database.Start", previousType.toString(), newType.toString()));
+            sender.sendMessage(LocaleLoader.getString("Commands.mcconvert.Database.Start", previousType.toString(), newType.toString()));
 
-                UserManager.saveAll();
-                UserManager.clearAll();
+            UserManager.saveAll();
+            UserManager.clearAll();
 
-                for (Player player : mcMMO.p.getServer().getOnlinePlayers()) {
-                    PlayerProfile profile = oldDatabase.loadPlayerProfile(player.getUniqueId());
+            for (Player player : mcMMO.p.getServer().getOnlinePlayers()) {
+                PlayerProfile profile = oldDatabase.loadPlayerProfile(player.getUniqueId());
 
-                    if (profile.isLoaded()) {
-                        mcMMO.getDatabaseManager().saveUser(profile);
-                    }
-
-                    new PlayerProfileLoadingTask(player).runTaskLaterAsynchronously(mcMMO.p, 1); // 1 Tick delay to ensure the player is marked as online before we begin loading
+                if (profile.isLoaded()) {
+                    mcMMO.getDatabaseManager().saveUser(profile);
                 }
 
-                new DatabaseConversionTask(oldDatabase, sender, previousType.toString(), newType.toString()).runTaskAsynchronously(mcMMO.p);
-                return true;
+                new PlayerProfileLoadingTask(player).runTaskLaterAsynchronously(mcMMO.p, 1); // 1 Tick delay to ensure the player is marked as online before we begin loading
+            }
 
-            default:
-                return false;
+            new DatabaseConversionTask(oldDatabase, sender, previousType.toString(), newType.toString()).runTaskAsynchronously(mcMMO.p);
+            return true;
         }
+        return false;
     }
 }

+ 8 - 11
src/main/java/com/gmail/nossr50/commands/database/McpurgeCommand.java

@@ -13,20 +13,17 @@ import java.util.List;
 public class McpurgeCommand implements TabExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 0:
-                mcMMO.getDatabaseManager().purgePowerlessUsers();
+        if (args.length == 0) {
+            mcMMO.getDatabaseManager().purgePowerlessUsers();
 
-                if (Config.getInstance().getOldUsersCutoff() != -1) {
-                    mcMMO.getDatabaseManager().purgeOldUsers();
-                }
+            if (Config.getInstance().getOldUsersCutoff() != -1) {
+                mcMMO.getDatabaseManager().purgeOldUsers();
+            }
 
-                sender.sendMessage(LocaleLoader.getString("Commands.mcpurge.Success"));
-                return true;
-
-            default:
-                return false;
+            sender.sendMessage(LocaleLoader.getString("Commands.mcpurge.Success"));
+            return true;
         }
+        return false;
     }
 
     @Override

+ 20 - 26
src/main/java/com/gmail/nossr50/commands/database/McremoveCommand.java

@@ -18,42 +18,36 @@ import java.util.UUID;
 public class McremoveCommand implements TabExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 1:
-                String playerName = CommandUtils.getMatchedPlayerName(args[0]);
+        if (args.length == 1) {
+            String playerName = CommandUtils.getMatchedPlayerName(args[0]);
 
-                if (UserManager.getOfflinePlayer(playerName) == null && CommandUtils.unloadedProfile(sender, mcMMO.getDatabaseManager().loadPlayerProfile(playerName, false))) {
-                    return true;
-                }
-
-                UUID uuid = null;
+            if (UserManager.getOfflinePlayer(playerName) == null && CommandUtils.unloadedProfile(sender, mcMMO.getDatabaseManager().loadPlayerProfile(playerName, false))) {
+                return true;
+            }
 
-                if(Bukkit.getPlayer(playerName) != null) {
-                    uuid = Bukkit.getPlayer(playerName).getUniqueId();
-                }
+            UUID uuid = null;
 
-                if (mcMMO.getDatabaseManager().removeUser(playerName, uuid)) {
-                    sender.sendMessage(LocaleLoader.getString("Commands.mcremove.Success", playerName));
-                }
-                else {
-                    sender.sendMessage(playerName + " could not be removed from the database."); // Pretty sure this should NEVER happen.
-                }
+            if (Bukkit.getPlayer(playerName) != null) {
+                uuid = Bukkit.getPlayer(playerName).getUniqueId();
+            }
 
-                return true;
+            if (mcMMO.getDatabaseManager().removeUser(playerName, uuid)) {
+                sender.sendMessage(LocaleLoader.getString("Commands.mcremove.Success", playerName));
+            } else {
+                sender.sendMessage(playerName + " could not be removed from the database."); // Pretty sure this should NEVER happen.
+            }
 
-            default:
-                return false;
+            return true;
         }
+        return false;
     }
 
     @Override
     public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
-        switch (args.length) {
-            case 1:
-                List<String> playerNames = CommandUtils.getOnlinePlayerNames(sender);
-                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
-            default:
-                return ImmutableList.of();
+        if (args.length == 1) {
+            List<String> playerNames = CommandUtils.getOnlinePlayerNames(sender);
+            return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
         }
+        return ImmutableList.of();
     }
 }

+ 8 - 11
src/main/java/com/gmail/nossr50/commands/database/MmoshowdbCommand.java

@@ -13,21 +13,18 @@ import java.util.List;
 public class MmoshowdbCommand implements TabExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 0:
-                Class<?> clazz = DatabaseManagerFactory.getCustomDatabaseManagerClass();
+        if (args.length == 0) {
+            Class<?> clazz = DatabaseManagerFactory.getCustomDatabaseManagerClass();
 
-                if (clazz != null) {
-                    sender.sendMessage(LocaleLoader.getString("Commands.mmoshowdb", clazz.getName()));
-                    return true;
-                }
-
-                sender.sendMessage(LocaleLoader.getString("Commands.mmoshowdb", (Config.getInstance().getUseMySQL() ? "sql" : "flatfile")));
+            if (clazz != null) {
+                sender.sendMessage(LocaleLoader.getString("Commands.mmoshowdb", clazz.getName()));
                 return true;
+            }
 
-            default:
-                return false;
+            sender.sendMessage(LocaleLoader.getString("Commands.mmoshowdb", (Config.getInstance().getUseMySQL() ? "sql" : "flatfile")));
+            return true;
         }
+        return false;
     }
 
     @Override

+ 20 - 23
src/main/java/com/gmail/nossr50/commands/experience/ConvertExperienceCommand.java

@@ -16,36 +16,33 @@ import java.util.Locale;
 public class ConvertExperienceCommand implements CommandExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 2:
-                FormulaType previousType = mcMMO.getFormulaManager().getPreviousFormulaType();
-                FormulaType newType = FormulaType.getFormulaType(args[1].toUpperCase(Locale.ENGLISH));
+        if (args.length == 2) {
+            FormulaType previousType = mcMMO.getFormulaManager().getPreviousFormulaType();
+            FormulaType newType = FormulaType.getFormulaType(args[1].toUpperCase(Locale.ENGLISH));
 
-                if (newType == FormulaType.UNKNOWN) {
-                    sender.sendMessage(LocaleLoader.getString("Commands.mcconvert.Experience.Invalid"));
-                    return true;
-                }
-
-                if (previousType == newType) {
-                    sender.sendMessage(LocaleLoader.getString("Commands.mcconvert.Experience.Same", newType.toString()));
-                    return true;
-                }
+            if (newType == FormulaType.UNKNOWN) {
+                sender.sendMessage(LocaleLoader.getString("Commands.mcconvert.Experience.Invalid"));
+                return true;
+            }
 
-                sender.sendMessage(LocaleLoader.getString("Commands.mcconvert.Experience.Start", previousType.toString(), newType.toString()));
+            if (previousType == newType) {
+                sender.sendMessage(LocaleLoader.getString("Commands.mcconvert.Experience.Same", newType.toString()));
+                return true;
+            }
 
-                UserManager.saveAll();
-                UserManager.clearAll();
+            sender.sendMessage(LocaleLoader.getString("Commands.mcconvert.Experience.Start", previousType.toString(), newType.toString()));
 
-                new FormulaConversionTask(sender, newType).runTaskLater(mcMMO.p, 1);
+            UserManager.saveAll();
+            UserManager.clearAll();
 
-                for (Player player : mcMMO.p.getServer().getOnlinePlayers()) {
-                    new PlayerProfileLoadingTask(player).runTaskLaterAsynchronously(mcMMO.p, 1); // 1 Tick delay to ensure the player is marked as online before we begin loading
-                }
+            new FormulaConversionTask(sender, newType).runTaskLater(mcMMO.p, 1);
 
-                return true;
+            for (Player player : mcMMO.p.getServer().getOnlinePlayers()) {
+                new PlayerProfileLoadingTask(player).runTaskLaterAsynchronously(mcMMO.p, 1); // 1 Tick delay to ensure the player is marked as online before we begin loading
+            }
 
-            default:
-                return false;
+            return true;
         }
+        return false;
     }
 }

+ 6 - 8
src/main/java/com/gmail/nossr50/commands/hardcore/HardcoreModeCommand.java

@@ -109,16 +109,14 @@ public abstract class HardcoreModeCommand implements TabExecutor {
 
     @Override
     public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
-        switch (args.length) {
-            case 1:
-                if (StringUtils.isDouble(args[0])) {
-                    return ImmutableList.of();
-                }
-
-                return StringUtil.copyPartialMatches(args[0], CommandUtils.TRUE_FALSE_OPTIONS, new ArrayList<String>(CommandUtils.TRUE_FALSE_OPTIONS.size()));
-            default:
+        if (args.length == 1) {
+            if (StringUtils.isDouble(args[0])) {
                 return ImmutableList.of();
+            }
+
+            return StringUtil.copyPartialMatches(args[0], CommandUtils.TRUE_FALSE_OPTIONS, new ArrayList<String>(CommandUtils.TRUE_FALSE_OPTIONS.size()));
         }
+        return ImmutableList.of();
     }
 
     protected abstract boolean checkTogglePermissions(CommandSender sender);

+ 19 - 23
src/main/java/com/gmail/nossr50/commands/party/PartyAcceptCommand.java

@@ -12,36 +12,32 @@ import org.bukkit.entity.Player;
 public class PartyAcceptCommand implements CommandExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 1:
-                Player player = (Player) sender;
-
-                //Check if player profile is loaded
-                if(UserManager.getPlayer(player) == null)
-                {
-                    sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
-                    return true;
-                }
-
-                McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
+        if (args.length == 1) {
+            Player player = (Player) sender;
 
+            //Check if player profile is loaded
+            if (UserManager.getPlayer(player) == null) {
+                sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
+                return true;
+            }
 
-                if (!mcMMOPlayer.hasPartyInvite()) {
-                    sender.sendMessage(LocaleLoader.getString("mcMMO.NoInvites"));
-                    return true;
-                }
+            McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
 
-                // Changing parties
-                if (!PartyManager.changeOrJoinParty(mcMMOPlayer, mcMMOPlayer.getPartyInvite().getName())) {
-                    return true;
-                }
 
-                PartyManager.joinInvitedParty(mcMMOPlayer);
+            if (!mcMMOPlayer.hasPartyInvite()) {
+                sender.sendMessage(LocaleLoader.getString("mcMMO.NoInvites"));
                 return true;
+            }
 
-            default:
-                sender.sendMessage(LocaleLoader.getString("Commands.Usage.1", "party", "accept"));
+            // Changing parties
+            if (!PartyManager.changeOrJoinParty(mcMMOPlayer, mcMMOPlayer.getPartyInvite().getName())) {
                 return true;
+            }
+
+            PartyManager.joinInvitedParty(mcMMOPlayer);
+            return true;
         }
+        sender.sendMessage(LocaleLoader.getString("Commands.Usage.1", "party", "accept"));
+        return true;
     }
 }

+ 15 - 20
src/main/java/com/gmail/nossr50/commands/party/PartyChangeOwnerCommand.java

@@ -15,30 +15,25 @@ import org.bukkit.entity.Player;
 public class PartyChangeOwnerCommand implements CommandExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 2:
-                //Check if player profile is loaded
-                if(UserManager.getPlayer((Player) sender) == null)
-                {
-                    sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
-                    return true;
-                }
-
-                Party playerParty = UserManager.getPlayer((Player) sender).getParty();
-                String targetName = CommandUtils.getMatchedPlayerName(args[1]);
-                OfflinePlayer target = mcMMO.p.getServer().getOfflinePlayer(targetName);
+        if (args.length == 2) {//Check if player profile is loaded
+            if (UserManager.getPlayer((Player) sender) == null) {
+                sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
+                return true;
+            }
 
-                if (!playerParty.hasMember(target.getUniqueId())) {
-                    sender.sendMessage(LocaleLoader.getString("Party.NotInYourParty", targetName));
-                    return true;
-                }
+            Party playerParty = UserManager.getPlayer((Player) sender).getParty();
+            String targetName = CommandUtils.getMatchedPlayerName(args[1]);
+            OfflinePlayer target = mcMMO.p.getServer().getOfflinePlayer(targetName);
 
-                PartyManager.setPartyLeader(target.getUniqueId(), playerParty);
+            if (!playerParty.hasMember(target.getUniqueId())) {
+                sender.sendMessage(LocaleLoader.getString("Party.NotInYourParty", targetName));
                 return true;
+            }
 
-            default:
-                sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "owner", "<" + LocaleLoader.getString("Commands.Usage.Player") + ">"));
-                return true;
+            PartyManager.setPartyLeader(target.getUniqueId(), playerParty);
+            return true;
         }
+        sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "owner", "<" + LocaleLoader.getString("Commands.Usage.Player") + ">"));
+        return true;
     }
 }

+ 18 - 18
src/main/java/com/gmail/nossr50/commands/party/PartyCommand.java

@@ -38,24 +38,24 @@ public class PartyCommand implements TabExecutor {
         PARTY_SUBCOMMANDS = ImmutableList.copyOf(subcommands);
     }
 
-    private CommandExecutor partyJoinCommand           = new PartyJoinCommand();
-    private CommandExecutor partyAcceptCommand         = new PartyAcceptCommand();
-    private CommandExecutor partyCreateCommand         = new PartyCreateCommand();
-    private CommandExecutor partyQuitCommand           = new PartyQuitCommand();
-    private CommandExecutor partyXpShareCommand        = new PartyXpShareCommand();
-    private CommandExecutor partyItemShareCommand      = new PartyItemShareCommand();
-    private CommandExecutor partyInviteCommand         = new PartyInviteCommand();
-    private CommandExecutor partyKickCommand           = new PartyKickCommand();
-    private CommandExecutor partyDisbandCommand        = new PartyDisbandCommand();
-    private CommandExecutor partyChangeOwnerCommand    = new PartyChangeOwnerCommand();
-    private CommandExecutor partyLockCommand           = new PartyLockCommand();
-    private CommandExecutor partyChangePasswordCommand = new PartyChangePasswordCommand();
-    private CommandExecutor partyRenameCommand         = new PartyRenameCommand();
-    private CommandExecutor partyInfoCommand           = new PartyInfoCommand();
-    private CommandExecutor partyHelpCommand           = new PartyHelpCommand();
-    private CommandExecutor partyTeleportCommand       = new PtpCommand();
-    private CommandExecutor partyChatCommand           = new PartyChatCommand();
-    private CommandExecutor partyAllianceCommand       = new PartyAllianceCommand();
+    private final CommandExecutor partyJoinCommand           = new PartyJoinCommand();
+    private final CommandExecutor partyAcceptCommand         = new PartyAcceptCommand();
+    private final CommandExecutor partyCreateCommand         = new PartyCreateCommand();
+    private final CommandExecutor partyQuitCommand           = new PartyQuitCommand();
+    private final CommandExecutor partyXpShareCommand        = new PartyXpShareCommand();
+    private final CommandExecutor partyItemShareCommand      = new PartyItemShareCommand();
+    private final CommandExecutor partyInviteCommand         = new PartyInviteCommand();
+    private final CommandExecutor partyKickCommand           = new PartyKickCommand();
+    private final CommandExecutor partyDisbandCommand        = new PartyDisbandCommand();
+    private final CommandExecutor partyChangeOwnerCommand    = new PartyChangeOwnerCommand();
+    private final CommandExecutor partyLockCommand           = new PartyLockCommand();
+    private final CommandExecutor partyChangePasswordCommand = new PartyChangePasswordCommand();
+    private final CommandExecutor partyRenameCommand         = new PartyRenameCommand();
+    private final CommandExecutor partyInfoCommand           = new PartyInfoCommand();
+    private final CommandExecutor partyHelpCommand           = new PartyHelpCommand();
+    private final CommandExecutor partyTeleportCommand       = new PtpCommand();
+    private final CommandExecutor partyChatCommand           = new PartyChatCommand();
+    private final CommandExecutor partyAllianceCommand       = new PartyAllianceCommand();
 
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {

+ 16 - 20
src/main/java/com/gmail/nossr50/commands/party/PartyDisbandCommand.java

@@ -13,31 +13,27 @@ import org.bukkit.entity.Player;
 public class PartyDisbandCommand implements CommandExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 1:
-                if(UserManager.getPlayer((Player) sender) == null)
-                {
-                    sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
-                    return true;
-                }
-
-                Party playerParty = UserManager.getPlayer((Player) sender).getParty();
-                String partyName = playerParty.getName();
+        if (args.length == 1) {
+            if (UserManager.getPlayer((Player) sender) == null) {
+                sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
+                return true;
+            }
 
-                for (Player member : playerParty.getOnlineMembers()) {
-                    if (!PartyManager.handlePartyChangeEvent(member, partyName, null, EventReason.KICKED_FROM_PARTY)) {
-                        return true;
-                    }
+            Party playerParty = UserManager.getPlayer((Player) sender).getParty();
+            String partyName = playerParty.getName();
 
-                    member.sendMessage(LocaleLoader.getString("Party.Disband"));
+            for (Player member : playerParty.getOnlineMembers()) {
+                if (!PartyManager.handlePartyChangeEvent(member, partyName, null, EventReason.KICKED_FROM_PARTY)) {
+                    return true;
                 }
 
-                PartyManager.disbandParty(playerParty);
-                return true;
+                member.sendMessage(LocaleLoader.getString("Party.Disband"));
+            }
 
-            default:
-                sender.sendMessage(LocaleLoader.getString("Commands.Usage.1", "party", "disband"));
-                return true;
+            PartyManager.disbandParty(playerParty);
+            return true;
         }
+        sender.sendMessage(LocaleLoader.getString("Commands.Usage.1", "party", "disband"));
+        return true;
     }
 }

+ 13 - 16
src/main/java/com/gmail/nossr50/commands/party/PartyHelpCommand.java

@@ -9,22 +9,19 @@ public class PartyHelpCommand implements CommandExecutor {
 
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 1:
-                sender.sendMessage(LocaleLoader.getString("Party.Help.3", "/party join", "/party quit"));
-                sender.sendMessage(LocaleLoader.getString("Party.Help.1", "/party create"));
-                sender.sendMessage(LocaleLoader.getString("Party.Help.4", "/party <lock|unlock>"));
-                sender.sendMessage(LocaleLoader.getString("Party.Help.5", "/party password"));
-                sender.sendMessage(LocaleLoader.getString("Party.Help.6", "/party kick"));
-                sender.sendMessage(LocaleLoader.getString("Party.Help.7", "/party leader"));
-                sender.sendMessage(LocaleLoader.getString("Party.Help.8", "/party disband"));
-                sender.sendMessage(LocaleLoader.getString("Party.Help.9", "/party itemshare"));
-                sender.sendMessage(LocaleLoader.getString("Party.Help.10", "/party xpshare"));
-                return true;
-
-            default:
-                sender.sendMessage(LocaleLoader.getString("Commands.Usage.1", "party", "help"));
-                return true;
+        if (args.length == 1) {
+            sender.sendMessage(LocaleLoader.getString("Party.Help.3", "/party join", "/party quit"));
+            sender.sendMessage(LocaleLoader.getString("Party.Help.1", "/party create"));
+            sender.sendMessage(LocaleLoader.getString("Party.Help.4", "/party <lock|unlock>"));
+            sender.sendMessage(LocaleLoader.getString("Party.Help.5", "/party password"));
+            sender.sendMessage(LocaleLoader.getString("Party.Help.6", "/party kick"));
+            sender.sendMessage(LocaleLoader.getString("Party.Help.7", "/party leader"));
+            sender.sendMessage(LocaleLoader.getString("Party.Help.8", "/party disband"));
+            sender.sendMessage(LocaleLoader.getString("Party.Help.9", "/party itemshare"));
+            sender.sendMessage(LocaleLoader.getString("Party.Help.10", "/party xpshare"));
+            return true;
         }
+        sender.sendMessage(LocaleLoader.getString("Commands.Usage.1", "party", "help"));
+        return true;
     }
 }

+ 38 - 43
src/main/java/com/gmail/nossr50/commands/party/PartyInviteCommand.java

@@ -15,60 +15,55 @@ import org.bukkit.entity.Player;
 public class PartyInviteCommand implements CommandExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 2:
-                String targetName = CommandUtils.getMatchedPlayerName(args[1]);
-                McMMOPlayer mcMMOTarget = UserManager.getOfflinePlayer(targetName);
+        if (args.length == 2) {
+            String targetName = CommandUtils.getMatchedPlayerName(args[1]);
+            McMMOPlayer mcMMOTarget = UserManager.getOfflinePlayer(targetName);
 
-                if (!CommandUtils.checkPlayerExistence(sender, targetName, mcMMOTarget)) {
-                    return false;
-                }
+            if (!CommandUtils.checkPlayerExistence(sender, targetName, mcMMOTarget)) {
+                return false;
+            }
 
-                Player target = mcMMOTarget.getPlayer();
+            Player target = mcMMOTarget.getPlayer();
 
-                if(UserManager.getPlayer((Player) sender) == null)
-                {
-                    sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
-                    return true;
-                }
-
-                Player player = (Player) sender;
-                McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
-                String playerName = player.getName();
-
-                if (player.equals(target)) {
-                    sender.sendMessage(LocaleLoader.getString("Party.Invite.Self"));
-                    return true;
-                }
+            if (UserManager.getPlayer((Player) sender) == null) {
+                sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
+                return true;
+            }
 
-                if (PartyManager.inSameParty(player, target)) {
-                    sender.sendMessage(LocaleLoader.getString("Party.Player.InSameParty", targetName));
-                    return true;
-                }
+            Player player = (Player) sender;
+            McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
+            String playerName = player.getName();
 
-                if (!PartyManager.canInvite(mcMMOPlayer)) {
-                    player.sendMessage(LocaleLoader.getString("Party.Locked"));
-                    return true;
-                }
+            if (player.equals(target)) {
+                sender.sendMessage(LocaleLoader.getString("Party.Invite.Self"));
+                return true;
+            }
 
-                Party playerParty = mcMMOPlayer.getParty();
+            if (PartyManager.inSameParty(player, target)) {
+                sender.sendMessage(LocaleLoader.getString("Party.Player.InSameParty", targetName));
+                return true;
+            }
 
-                if(PartyManager.isPartyFull(target, playerParty))
-                {
-                    player.sendMessage(LocaleLoader.getString("Commands.Party.PartyFull.Invite", target.getName(), playerParty.toString(), Config.getInstance().getPartyMaxSize()));
-                    return true;
-                }
+            if (!PartyManager.canInvite(mcMMOPlayer)) {
+                player.sendMessage(LocaleLoader.getString("Party.Locked"));
+                return true;
+            }
 
-                mcMMOTarget.setPartyInvite(playerParty);
+            Party playerParty = mcMMOPlayer.getParty();
 
-                sender.sendMessage(LocaleLoader.getString("Commands.Invite.Success"));
-                target.sendMessage(LocaleLoader.getString("Commands.Party.Invite.0", playerParty.getName(), playerName));
-                target.sendMessage(LocaleLoader.getString("Commands.Party.Invite.1"));
+            if (PartyManager.isPartyFull(target, playerParty)) {
+                player.sendMessage(LocaleLoader.getString("Commands.Party.PartyFull.Invite", target.getName(), playerParty.toString(), Config.getInstance().getPartyMaxSize()));
                 return true;
+            }
 
-            default:
-                sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "invite", "<" + LocaleLoader.getString("Commands.Usage.Player") + ">"));
-                return true;
+            mcMMOTarget.setPartyInvite(playerParty);
+
+            sender.sendMessage(LocaleLoader.getString("Commands.Invite.Success"));
+            target.sendMessage(LocaleLoader.getString("Commands.Party.Invite.0", playerParty.getName(), playerName));
+            target.sendMessage(LocaleLoader.getString("Commands.Party.Invite.1"));
+            return true;
         }
+        sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "invite", "<" + LocaleLoader.getString("Commands.Usage.Player") + ">"));
+        return true;
     }
 }

+ 24 - 28
src/main/java/com/gmail/nossr50/commands/party/PartyKickCommand.java

@@ -16,42 +16,38 @@ import org.bukkit.entity.Player;
 public class PartyKickCommand implements CommandExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 2:
-                if(UserManager.getPlayer((Player) sender) == null)
-                {
-                    sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
-                    return true;
-                }
-
-                Party playerParty = UserManager.getPlayer((Player) sender).getParty();
-                String targetName = CommandUtils.getMatchedPlayerName(args[1]);
+        if (args.length == 2) {
+            if (UserManager.getPlayer((Player) sender) == null) {
+                sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
+                return true;
+            }
 
-                if (!playerParty.hasMember(targetName)) {
-                    sender.sendMessage(LocaleLoader.getString("Party.NotInYourParty", targetName));
-                    return true;
-                }
+            Party playerParty = UserManager.getPlayer((Player) sender).getParty();
+            String targetName = CommandUtils.getMatchedPlayerName(args[1]);
 
-                OfflinePlayer target = mcMMO.p.getServer().getOfflinePlayer(targetName);
+            if (!playerParty.hasMember(targetName)) {
+                sender.sendMessage(LocaleLoader.getString("Party.NotInYourParty", targetName));
+                return true;
+            }
 
-                if (target.isOnline()) {
-                    Player onlineTarget = target.getPlayer();
-                    String partyName = playerParty.getName();
+            OfflinePlayer target = mcMMO.p.getServer().getOfflinePlayer(targetName);
 
-                    if (!PartyManager.handlePartyChangeEvent(onlineTarget, partyName, null, EventReason.KICKED_FROM_PARTY)) {
-                        return true;
-                    }
+            if (target.isOnline()) {
+                Player onlineTarget = target.getPlayer();
+                String partyName = playerParty.getName();
 
-                    PartyManager.processPartyLeaving(UserManager.getPlayer(onlineTarget));
-                    onlineTarget.sendMessage(LocaleLoader.getString("Commands.Party.Kick", partyName));
+                if (!PartyManager.handlePartyChangeEvent(onlineTarget, partyName, null, EventReason.KICKED_FROM_PARTY)) {
+                    return true;
                 }
 
-                PartyManager.removeFromParty(target, playerParty);
-                return true;
+                PartyManager.processPartyLeaving(UserManager.getPlayer(onlineTarget));
+                onlineTarget.sendMessage(LocaleLoader.getString("Commands.Party.Kick", partyName));
+            }
 
-            default:
-                sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "kick", "<" + LocaleLoader.getString("Commands.Usage.Player") + ">"));
-                return true;
+            PartyManager.removeFromParty(target, playerParty);
+            return true;
         }
+        sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "kick", "<" + LocaleLoader.getString("Commands.Usage.Player") + ">"));
+        return true;
     }
 }

+ 1 - 1
src/main/java/com/gmail/nossr50/commands/party/PartyLockCommand.java

@@ -67,7 +67,7 @@ public class PartyLockCommand implements CommandExecutor {
             return;
         }
 
-        if (lock ? party.isLocked() : !party.isLocked()) {
+        if (lock == party.isLocked()) {
             sender.sendMessage(LocaleLoader.getString("Party." + (lock ? "IsLocked" : "IsntLocked")));
             return;
         }

+ 15 - 19
src/main/java/com/gmail/nossr50/commands/party/PartyQuitCommand.java

@@ -14,30 +14,26 @@ import org.bukkit.entity.Player;
 public class PartyQuitCommand implements CommandExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 1:
-                Player player = (Player) sender;
+        if (args.length == 1) {
+            Player player = (Player) sender;
 
-                if(UserManager.getPlayer((Player) sender) == null)
-                {
-                    sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
-                    return true;
-                }
-
-                McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
-                Party playerParty = mcMMOPlayer.getParty();
+            if (UserManager.getPlayer((Player) sender) == null) {
+                sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
+                return true;
+            }
 
-                if (!PartyManager.handlePartyChangeEvent(player, playerParty.getName(), null, EventReason.LEFT_PARTY)) {
-                    return true;
-                }
+            McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
+            Party playerParty = mcMMOPlayer.getParty();
 
-                PartyManager.removeFromParty(mcMMOPlayer);
-                sender.sendMessage(LocaleLoader.getString("Commands.Party.Leave"));
+            if (!PartyManager.handlePartyChangeEvent(player, playerParty.getName(), null, EventReason.LEFT_PARTY)) {
                 return true;
+            }
 
-            default:
-                sender.sendMessage(LocaleLoader.getString("Commands.Usage.1", "party", "quit"));
-                return true;
+            PartyManager.removeFromParty(mcMMOPlayer);
+            sender.sendMessage(LocaleLoader.getString("Commands.Party.Leave"));
+            return true;
         }
+        sender.sendMessage(LocaleLoader.getString("Commands.Usage.1", "party", "quit"));
+        return true;
     }
 }

+ 32 - 36
src/main/java/com/gmail/nossr50/commands/party/PartyRenameCommand.java

@@ -14,53 +14,49 @@ import org.bukkit.entity.Player;
 public class PartyRenameCommand implements CommandExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 2:
-                if(UserManager.getPlayer((Player) sender) == null)
-                {
-                    sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
-                    return true;
-                }
+        if (args.length == 2) {
+            if (UserManager.getPlayer((Player) sender) == null) {
+                sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
+                return true;
+            }
 
-                McMMOPlayer mcMMOPlayer = UserManager.getPlayer((Player) sender);
-                Party playerParty = mcMMOPlayer.getParty();
+            McMMOPlayer mcMMOPlayer = UserManager.getPlayer((Player) sender);
+            Party playerParty = mcMMOPlayer.getParty();
 
-                String oldPartyName = playerParty.getName();
-                String newPartyName = args[1];
+            String oldPartyName = playerParty.getName();
+            String newPartyName = args[1];
 
-                // This is to prevent party leaders from spamming other players with the rename message
-                if (oldPartyName.equalsIgnoreCase(newPartyName)) {
-                    sender.sendMessage(LocaleLoader.getString("Party.Rename.Same"));
-                    return true;
-                }
-
-                Player player = mcMMOPlayer.getPlayer();
+            // This is to prevent party leaders from spamming other players with the rename message
+            if (oldPartyName.equalsIgnoreCase(newPartyName)) {
+                sender.sendMessage(LocaleLoader.getString("Party.Rename.Same"));
+                return true;
+            }
 
-                // Check to see if the party exists, and if it does cancel renaming the party
-                if (PartyManager.checkPartyExistence(player, newPartyName)) {
-                    return true;
-                }
+            Player player = mcMMOPlayer.getPlayer();
 
-                String leaderName = playerParty.getLeader().getPlayerName();
+            // Check to see if the party exists, and if it does cancel renaming the party
+            if (PartyManager.checkPartyExistence(player, newPartyName)) {
+                return true;
+            }
 
-                for (Player member : playerParty.getOnlineMembers()) {
-                    if (!PartyManager.handlePartyChangeEvent(member, oldPartyName, newPartyName, EventReason.CHANGED_PARTIES)) {
-                        return true;
-                    }
+            String leaderName = playerParty.getLeader().getPlayerName();
 
-                    if (!member.getName().equalsIgnoreCase(leaderName)) {
-                        member.sendMessage(LocaleLoader.getString("Party.InformedOnNameChange", leaderName, newPartyName));
-                    }
+            for (Player member : playerParty.getOnlineMembers()) {
+                if (!PartyManager.handlePartyChangeEvent(member, oldPartyName, newPartyName, EventReason.CHANGED_PARTIES)) {
+                    return true;
                 }
 
-                playerParty.setName(newPartyName);
+                if (!member.getName().equalsIgnoreCase(leaderName)) {
+                    member.sendMessage(LocaleLoader.getString("Party.InformedOnNameChange", leaderName, newPartyName));
+                }
+            }
 
-                sender.sendMessage(LocaleLoader.getString("Commands.Party.Rename", newPartyName));
-                return true;
+            playerParty.setName(newPartyName);
 
-            default:
-                sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "rename", "<" + LocaleLoader.getString("Commands.Usage.PartyName") + ">"));
-                return true;
+            sender.sendMessage(LocaleLoader.getString("Commands.Party.Rename", newPartyName));
+            return true;
         }
+        sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "rename", "<" + LocaleLoader.getString("Commands.Usage.PartyName") + ">"));
+        return true;
     }
 }

+ 11 - 16
src/main/java/com/gmail/nossr50/commands/party/PartyXpShareCommand.java

@@ -29,24 +29,19 @@ public class PartyXpShareCommand implements CommandExecutor {
             return true;
         }
 
-        switch (args.length) {
-            case 2:
-                if (args[1].equalsIgnoreCase("none") || CommandUtils.shouldDisableToggle(args[1])) {
-                    handleChangingShareMode(party, ShareMode.NONE);
-                }
-                else if (args[1].equalsIgnoreCase("equal") || args[1].equalsIgnoreCase("even") || CommandUtils.shouldEnableToggle(args[1])) {
-                    handleChangingShareMode(party, ShareMode.EQUAL);
-                }
-                else {
-                    sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "xpshare", "<NONE | EQUAL>"));
-                }
-
-                return true;
-
-            default:
+        if (args.length == 2) {
+            if (args[1].equalsIgnoreCase("none") || CommandUtils.shouldDisableToggle(args[1])) {
+                handleChangingShareMode(party, ShareMode.NONE);
+            } else if (args[1].equalsIgnoreCase("equal") || args[1].equalsIgnoreCase("even") || CommandUtils.shouldEnableToggle(args[1])) {
+                handleChangingShareMode(party, ShareMode.EQUAL);
+            } else {
                 sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "xpshare", "<NONE | EQUAL>"));
-                return true;
+            }
+
+            return true;
         }
+        sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "xpshare", "<NONE | EQUAL>"));
+        return true;
     }
 
     private void handleChangingShareMode(Party party, ShareMode mode) {

+ 18 - 22
src/main/java/com/gmail/nossr50/commands/party/alliance/PartyAllianceAcceptCommand.java

@@ -12,32 +12,28 @@ import org.bukkit.entity.Player;
 public class PartyAllianceAcceptCommand implements CommandExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 2:
-                if(UserManager.getPlayer((Player) sender) == null)
-                {
-                    sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
-                    return true;
-                }
-                Player player = (Player) sender;
-                McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
-
-                if (!mcMMOPlayer.hasPartyAllianceInvite()) {
-                    sender.sendMessage(LocaleLoader.getString("mcMMO.NoInvites"));
-                    return true;
-                }
-
-                if (mcMMOPlayer.getParty().getAlly() != null) {
-                    player.sendMessage(LocaleLoader.getString("Commands.Party.Alliance.AlreadyAllies"));
-                    return true;
-                }
+        if (args.length == 2) {
+            if (UserManager.getPlayer((Player) sender) == null) {
+                sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
+                return true;
+            }
+            Player player = (Player) sender;
+            McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
 
-                PartyManager.acceptAllianceInvite(mcMMOPlayer);
+            if (!mcMMOPlayer.hasPartyAllianceInvite()) {
+                sender.sendMessage(LocaleLoader.getString("mcMMO.NoInvites"));
                 return true;
+            }
 
-            default:
-                sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "alliance", "accept"));
+            if (mcMMOPlayer.getParty().getAlly() != null) {
+                player.sendMessage(LocaleLoader.getString("Commands.Party.Alliance.AlreadyAllies"));
                 return true;
+            }
+
+            PartyManager.acceptAllianceInvite(mcMMOPlayer);
+            return true;
         }
+        sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "alliance", "accept"));
+        return true;
     }
 }

+ 11 - 13
src/main/java/com/gmail/nossr50/commands/party/alliance/PartyAllianceCommand.java

@@ -27,9 +27,9 @@ public class PartyAllianceCommand implements TabExecutor {
 
     public static final List<String> ALLIANCE_SUBCOMMANDS = ImmutableList.of("invite", "accept", "disband");
 
-    private CommandExecutor partyAllianceInviteCommand = new PartyAllianceInviteCommand();
-    private CommandExecutor partyAllianceAcceptCommand = new PartyAllianceAcceptCommand();
-    private CommandExecutor partyAllianceDisbandCommand = new PartyAllianceDisbandCommand();
+    private final CommandExecutor partyAllianceInviteCommand = new PartyAllianceInviteCommand();
+    private final CommandExecutor partyAllianceAcceptCommand = new PartyAllianceAcceptCommand();
+    private final CommandExecutor partyAllianceDisbandCommand = new PartyAllianceDisbandCommand();
 
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
@@ -109,19 +109,17 @@ public class PartyAllianceCommand implements TabExecutor {
 
     @Override
     public List<String> onTabComplete(CommandSender commandSender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 1:
-                List<String> matches = StringUtil.copyPartialMatches(args[0], ALLIANCE_SUBCOMMANDS, new ArrayList<String>(ALLIANCE_SUBCOMMANDS.size()));
+        if (args.length == 1) {
+            List<String> matches = StringUtil.copyPartialMatches(args[0], ALLIANCE_SUBCOMMANDS, new ArrayList<String>(ALLIANCE_SUBCOMMANDS.size()));
 
-                if (matches.size() == 0) {
-                    List<String> playerNames = CommandUtils.getOnlinePlayerNames(commandSender);
-                    return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
-                }
+            if (matches.size() == 0) {
+                List<String> playerNames = CommandUtils.getOnlinePlayerNames(commandSender);
+                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
+            }
 
-                return matches;
-            default:
-                return ImmutableList.of();
+            return matches;
         }
+        return ImmutableList.of();
     }
 
     private void displayPartyHeader() {

+ 15 - 19
src/main/java/com/gmail/nossr50/commands/party/alliance/PartyAllianceDisbandCommand.java

@@ -13,28 +13,24 @@ import org.bukkit.entity.Player;
 public class PartyAllianceDisbandCommand implements CommandExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 2:
-                if(UserManager.getPlayer((Player) sender) == null)
-                {
-                    sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
-                    return true;
-                }
-                Player player = (Player) sender;
-                McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
-                Party party = mcMMOPlayer.getParty();
-
-                if (party.getAlly() == null) {
-                    sender.sendMessage(LocaleLoader.getString("Commands.Party.Alliance.None"));
-                    return true;
-                }
-
-                PartyManager.disbandAlliance(player, party, party.getAlly());
+        if (args.length == 2) {
+            if (UserManager.getPlayer((Player) sender) == null) {
+                sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
                 return true;
+            }
+            Player player = (Player) sender;
+            McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
+            Party party = mcMMOPlayer.getParty();
 
-            default:
-                sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "alliance", "disband"));
+            if (party.getAlly() == null) {
+                sender.sendMessage(LocaleLoader.getString("Commands.Party.Alliance.None"));
                 return true;
+            }
+
+            PartyManager.disbandAlliance(player, party, party.getAlly());
+            return true;
         }
+        sender.sendMessage(LocaleLoader.getString("Commands.Usage.2", "party", "alliance", "disband"));
+        return true;
     }
 }

+ 42 - 46
src/main/java/com/gmail/nossr50/commands/party/alliance/PartyAllianceInviteCommand.java

@@ -14,64 +14,60 @@ import org.bukkit.entity.Player;
 public class PartyAllianceInviteCommand implements CommandExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 3:
-                String targetName = CommandUtils.getMatchedPlayerName(args[2]);
-                McMMOPlayer mcMMOTarget = UserManager.getOfflinePlayer(targetName);
+        if (args.length == 3) {
+            String targetName = CommandUtils.getMatchedPlayerName(args[2]);
+            McMMOPlayer mcMMOTarget = UserManager.getOfflinePlayer(targetName);
 
-                if (!CommandUtils.checkPlayerExistence(sender, targetName, mcMMOTarget)) {
-                    return false;
-                }
+            if (!CommandUtils.checkPlayerExistence(sender, targetName, mcMMOTarget)) {
+                return false;
+            }
 
-                Player target = mcMMOTarget.getPlayer();
+            Player target = mcMMOTarget.getPlayer();
 
-                if(UserManager.getPlayer((Player) sender) == null)
-                {
-                    sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
-                    return true;
-                }
-
-                Player player = (Player) sender;
-                McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
-                String playerName = player.getName();
-
-                if (player.equals(target)) {
-                    sender.sendMessage(LocaleLoader.getString("Party.Invite.Self"));
-                    return true;
-                }
+            if (UserManager.getPlayer((Player) sender) == null) {
+                sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
+                return true;
+            }
 
-                if (!mcMMOTarget.inParty()) {
-                    player.sendMessage(LocaleLoader.getString("Party.PlayerNotInParty", targetName));
-                    return true;
-                }
+            Player player = (Player) sender;
+            McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
+            String playerName = player.getName();
 
-                if (PartyManager.inSameParty(player, target)) {
-                    sender.sendMessage(LocaleLoader.getString("Party.Player.InSameParty", targetName));
-                    return true;
-                }
+            if (player.equals(target)) {
+                sender.sendMessage(LocaleLoader.getString("Party.Invite.Self"));
+                return true;
+            }
 
-                if (!mcMMOTarget.getParty().getLeader().getUniqueId().equals(target.getUniqueId())) {
-                    player.sendMessage(LocaleLoader.getString("Party.Target.NotOwner", targetName));
-                    return true;
-                }
+            if (!mcMMOTarget.inParty()) {
+                player.sendMessage(LocaleLoader.getString("Party.PlayerNotInParty", targetName));
+                return true;
+            }
 
-                Party playerParty = mcMMOPlayer.getParty();
+            if (PartyManager.inSameParty(player, target)) {
+                sender.sendMessage(LocaleLoader.getString("Party.Player.InSameParty", targetName));
+                return true;
+            }
 
-                if (playerParty.getAlly() != null) {
-                    player.sendMessage(LocaleLoader.getString("Commands.Party.Alliance.AlreadyAllies"));
-                    return true;
-                }
+            if (!mcMMOTarget.getParty().getLeader().getUniqueId().equals(target.getUniqueId())) {
+                player.sendMessage(LocaleLoader.getString("Party.Target.NotOwner", targetName));
+                return true;
+            }
 
-                mcMMOTarget.setPartyAllianceInvite(playerParty);
+            Party playerParty = mcMMOPlayer.getParty();
 
-                sender.sendMessage(LocaleLoader.getString("Commands.Invite.Success"));
-                target.sendMessage(LocaleLoader.getString("Commands.Party.Alliance.Invite.0", playerParty.getName(), playerName));
-                target.sendMessage(LocaleLoader.getString("Commands.Party.Alliance.Invite.1"));
+            if (playerParty.getAlly() != null) {
+                player.sendMessage(LocaleLoader.getString("Commands.Party.Alliance.AlreadyAllies"));
                 return true;
+            }
 
-            default:
-                sender.sendMessage(LocaleLoader.getString("Commands.Usage.3", "party", "alliance", "invite", "<" + LocaleLoader.getString("Commands.Usage.Player") + ">"));
-                return true;
+            mcMMOTarget.setPartyAllianceInvite(playerParty);
+
+            sender.sendMessage(LocaleLoader.getString("Commands.Invite.Success"));
+            target.sendMessage(LocaleLoader.getString("Commands.Party.Alliance.Invite.0", playerParty.getName(), playerName));
+            target.sendMessage(LocaleLoader.getString("Commands.Party.Alliance.Invite.1"));
+            return true;
         }
+        sender.sendMessage(LocaleLoader.getString("Commands.Usage.3", "party", "alliance", "invite", "<" + LocaleLoader.getString("Commands.Usage.Player") + ">"));
+        return true;
     }
 }

+ 56 - 62
src/main/java/com/gmail/nossr50/commands/party/teleport/PtpCommand.java

@@ -33,9 +33,9 @@ import java.util.List;
 public class PtpCommand implements TabExecutor {
     public static final List<String> TELEPORT_SUBCOMMANDS = ImmutableList.of("toggle", "accept", "acceptany", "acceptall");
 
-    private CommandExecutor ptpToggleCommand = new PtpToggleCommand();
-    private CommandExecutor ptpAcceptAnyCommand = new PtpAcceptAnyCommand();
-    private CommandExecutor ptpAcceptCommand = new PtpAcceptCommand();
+    private final CommandExecutor ptpToggleCommand = new PtpToggleCommand();
+    private final CommandExecutor ptpAcceptAnyCommand = new PtpAcceptAnyCommand();
+    private final CommandExecutor ptpAcceptCommand = new PtpAcceptCommand();
 
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
@@ -80,85 +80,79 @@ public class PtpCommand implements TabExecutor {
             return true;
         }
 
-        switch (args.length) {
-            case 1:
-                if (args[0].equalsIgnoreCase("toggle")) {
-                    return ptpToggleCommand.onCommand(sender, command, label, args);
-                }
+        if (args.length == 1) {
+            if (args[0].equalsIgnoreCase("toggle")) {
+                return ptpToggleCommand.onCommand(sender, command, label, args);
+            }
 
-                if (args[0].equalsIgnoreCase("acceptany") || args[0].equalsIgnoreCase("acceptall")) {
-                    return ptpAcceptAnyCommand.onCommand(sender, command, label, args);
-                }
+            if (args[0].equalsIgnoreCase("acceptany") || args[0].equalsIgnoreCase("acceptall")) {
+                return ptpAcceptAnyCommand.onCommand(sender, command, label, args);
+            }
 
-                long recentlyHurt = mcMMOPlayer.getRecentlyHurt();
-                int hurtCooldown = Config.getInstance().getPTPCommandRecentlyHurtCooldown();
+            long recentlyHurt = mcMMOPlayer.getRecentlyHurt();
+            int hurtCooldown = Config.getInstance().getPTPCommandRecentlyHurtCooldown();
 
-                if (hurtCooldown > 0) {
-                    int timeRemaining = SkillUtils.calculateTimeLeft(recentlyHurt * Misc.TIME_CONVERSION_FACTOR, hurtCooldown, player);
+            if (hurtCooldown > 0) {
+                int timeRemaining = SkillUtils.calculateTimeLeft(recentlyHurt * Misc.TIME_CONVERSION_FACTOR, hurtCooldown, player);
 
-                    if (timeRemaining > 0) {
-                        player.sendMessage(LocaleLoader.getString("Item.Injured.Wait", timeRemaining));
-                        return true;
-                    }
+                if (timeRemaining > 0) {
+                    player.sendMessage(LocaleLoader.getString("Item.Injured.Wait", timeRemaining));
+                    return true;
                 }
+            }
 
-                if (args[0].equalsIgnoreCase("accept")) {
-                    return ptpAcceptCommand.onCommand(sender, command, label, args);
-                }
+            if (args[0].equalsIgnoreCase("accept")) {
+                return ptpAcceptCommand.onCommand(sender, command, label, args);
+            }
 
-                if (!Permissions.partyTeleportSend(sender)) {
-                    sender.sendMessage(command.getPermissionMessage());
-                    return true;
-                }
+            if (!Permissions.partyTeleportSend(sender)) {
+                sender.sendMessage(command.getPermissionMessage());
+                return true;
+            }
 
-                int ptpCooldown = Config.getInstance().getPTPCommandCooldown();
-                long ptpLastUse = mcMMOPlayer.getPartyTeleportRecord().getLastUse();
+            int ptpCooldown = Config.getInstance().getPTPCommandCooldown();
+            long ptpLastUse = mcMMOPlayer.getPartyTeleportRecord().getLastUse();
 
-                if (ptpCooldown > 0) {
-                    int timeRemaining = SkillUtils.calculateTimeLeft(ptpLastUse * Misc.TIME_CONVERSION_FACTOR, ptpCooldown, player);
+            if (ptpCooldown > 0) {
+                int timeRemaining = SkillUtils.calculateTimeLeft(ptpLastUse * Misc.TIME_CONVERSION_FACTOR, ptpCooldown, player);
 
-                    if (timeRemaining > 0) {
-                        player.sendMessage(LocaleLoader.getString("Item.Generic.Wait", timeRemaining));
-                        return true;
-                    }
+                if (timeRemaining > 0) {
+                    player.sendMessage(LocaleLoader.getString("Item.Generic.Wait", timeRemaining));
+                    return true;
                 }
+            }
 
-                sendTeleportRequest(sender, player, CommandUtils.getMatchedPlayerName(args[0]));
-                return true;
-
-            default:
-                return false;
+            sendTeleportRequest(sender, player, CommandUtils.getMatchedPlayerName(args[0]));
+            return true;
         }
+        return false;
     }
 
     @Override
     public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
-        switch (args.length) {
-            case 1:
-                List<String> matches = StringUtil.copyPartialMatches(args[0], TELEPORT_SUBCOMMANDS, new ArrayList<String>(TELEPORT_SUBCOMMANDS.size()));
-
-                if (matches.size() == 0) {
-                    if(UserManager.getPlayer((Player) sender) == null)
-                    {
-                        sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
-                        return ImmutableList.of();
-                    }
-
-                    Player player = (Player) sender;
-                    McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
-
-                    if (!mcMMOPlayer.inParty()) {
-                        return ImmutableList.of();
-                    }
-
-                    List<String> playerNames = mcMMOPlayer.getParty().getOnlinePlayerNames(player);
-                    return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
+        if (args.length == 1) {
+            List<String> matches = StringUtil.copyPartialMatches(args[0], TELEPORT_SUBCOMMANDS, new ArrayList<String>(TELEPORT_SUBCOMMANDS.size()));
+
+            if (matches.size() == 0) {
+                if (UserManager.getPlayer((Player) sender) == null) {
+                    sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
+                    return ImmutableList.of();
                 }
 
-                return matches;
-            default:
-                return ImmutableList.of();
+                Player player = (Player) sender;
+                McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
+
+                if (!mcMMOPlayer.inParty()) {
+                    return ImmutableList.of();
+                }
+
+                List<String> playerNames = mcMMOPlayer.getParty().getOnlinePlayerNames(player);
+                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
+            }
+
+            return matches;
         }
+        return ImmutableList.of();
     }
 
     private void sendTeleportRequest(CommandSender sender, Player player, String targetName) {

+ 51 - 58
src/main/java/com/gmail/nossr50/commands/player/InspectCommand.java

@@ -23,86 +23,79 @@ import java.util.List;
 public class InspectCommand implements TabExecutor {
     @Override
     public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
-        switch (args.length) {
-            case 1:
-                String playerName = CommandUtils.getMatchedPlayerName(args[0]);
-                McMMOPlayer mcMMOPlayer = UserManager.getOfflinePlayer(playerName);
+        if (args.length == 1) {
+            String playerName = CommandUtils.getMatchedPlayerName(args[0]);
+            McMMOPlayer mcMMOPlayer = UserManager.getOfflinePlayer(playerName);
 
-                // If the mcMMOPlayer doesn't exist, create a temporary profile and check if it's present in the database. If it's not, abort the process.
-                if (mcMMOPlayer == null) {
-                    PlayerProfile profile = mcMMO.getDatabaseManager().loadPlayerProfile(playerName, false); // Temporary Profile
+            // If the mcMMOPlayer doesn't exist, create a temporary profile and check if it's present in the database. If it's not, abort the process.
+            if (mcMMOPlayer == null) {
+                PlayerProfile profile = mcMMO.getDatabaseManager().loadPlayerProfile(playerName, false); // Temporary Profile
 
-                    if (!CommandUtils.isLoaded(sender, profile)) {
-                        return true;
-                    }
+                if (!CommandUtils.isLoaded(sender, profile)) {
+                    return true;
+                }
 
-                    if (Config.getInstance().getScoreboardsEnabled() && sender instanceof Player && Config.getInstance().getInspectUseBoard()) {
-                        ScoreboardManager.enablePlayerInspectScoreboard((Player) sender, profile);
+                if (Config.getInstance().getScoreboardsEnabled() && sender instanceof Player && Config.getInstance().getInspectUseBoard()) {
+                    ScoreboardManager.enablePlayerInspectScoreboard((Player) sender, profile);
 
-                        if (!Config.getInstance().getInspectUseChat()) {
-                            return true;
-                        }
+                    if (!Config.getInstance().getInspectUseChat()) {
+                        return true;
                     }
+                }
 
-                    sender.sendMessage(LocaleLoader.getString("Inspect.OfflineStats", playerName));
-
-                    sender.sendMessage(LocaleLoader.getString("Stats.Header.Gathering"));
-                    for (PrimarySkillType skill : PrimarySkillType.GATHERING_SKILLS) {
-                        sender.sendMessage(CommandUtils.displaySkill(profile, skill));
-                    }
+                sender.sendMessage(LocaleLoader.getString("Inspect.OfflineStats", playerName));
 
-                    sender.sendMessage(LocaleLoader.getString("Stats.Header.Combat"));
-                    for (PrimarySkillType skill : PrimarySkillType.COMBAT_SKILLS) {
-                        sender.sendMessage(CommandUtils.displaySkill(profile, skill));
-                    }
+                sender.sendMessage(LocaleLoader.getString("Stats.Header.Gathering"));
+                for (PrimarySkillType skill : PrimarySkillType.GATHERING_SKILLS) {
+                    sender.sendMessage(CommandUtils.displaySkill(profile, skill));
+                }
 
-                    sender.sendMessage(LocaleLoader.getString("Stats.Header.Misc"));
-                    for (PrimarySkillType skill : PrimarySkillType.MISC_SKILLS) {
-                        sender.sendMessage(CommandUtils.displaySkill(profile, skill));
-                    }
+                sender.sendMessage(LocaleLoader.getString("Stats.Header.Combat"));
+                for (PrimarySkillType skill : PrimarySkillType.COMBAT_SKILLS) {
+                    sender.sendMessage(CommandUtils.displaySkill(profile, skill));
+                }
 
+                sender.sendMessage(LocaleLoader.getString("Stats.Header.Misc"));
+                for (PrimarySkillType skill : PrimarySkillType.MISC_SKILLS) {
+                    sender.sendMessage(CommandUtils.displaySkill(profile, skill));
                 }
-                else {
-                    Player target = mcMMOPlayer.getPlayer();
 
-                    if (CommandUtils.hidden(sender, target, Permissions.inspectHidden(sender))) {
-                        sender.sendMessage(LocaleLoader.getString("Inspect.Offline"));
-                        return true;
-                    }
-                    else if (CommandUtils.tooFar(sender, target, Permissions.inspectFar(sender))) {
-                        return true;
-                    }
+            } else {
+                Player target = mcMMOPlayer.getPlayer();
 
-                    if (Config.getInstance().getScoreboardsEnabled() && sender instanceof Player && Config.getInstance().getInspectUseBoard()) {
-                        ScoreboardManager.enablePlayerInspectScoreboard((Player) sender, mcMMOPlayer.getProfile());
+                if (CommandUtils.hidden(sender, target, Permissions.inspectHidden(sender))) {
+                    sender.sendMessage(LocaleLoader.getString("Inspect.Offline"));
+                    return true;
+                } else if (CommandUtils.tooFar(sender, target, Permissions.inspectFar(sender))) {
+                    return true;
+                }
 
-                        if (!Config.getInstance().getInspectUseChat()) {
-                            return true;
-                        }
-                    }
+                if (Config.getInstance().getScoreboardsEnabled() && sender instanceof Player && Config.getInstance().getInspectUseBoard()) {
+                    ScoreboardManager.enablePlayerInspectScoreboard((Player) sender, mcMMOPlayer.getProfile());
 
-                    sender.sendMessage(LocaleLoader.getString("Inspect.Stats", target.getName()));
-                    CommandUtils.printGatheringSkills(target, sender);
-                    CommandUtils.printCombatSkills(target, sender);
-                    CommandUtils.printMiscSkills(target, sender);
-                    sender.sendMessage(LocaleLoader.getString("Commands.PowerLevel", mcMMOPlayer.getPowerLevel()));
+                    if (!Config.getInstance().getInspectUseChat()) {
+                        return true;
+                    }
                 }
 
-                return true;
+                sender.sendMessage(LocaleLoader.getString("Inspect.Stats", target.getName()));
+                CommandUtils.printGatheringSkills(target, sender);
+                CommandUtils.printCombatSkills(target, sender);
+                CommandUtils.printMiscSkills(target, sender);
+                sender.sendMessage(LocaleLoader.getString("Commands.PowerLevel", mcMMOPlayer.getPowerLevel()));
+            }
 
-            default:
-                return false;
+            return true;
         }
+        return false;
     }
 
     @Override
     public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
-        switch (args.length) {
-            case 1:
-                List<String> playerNames = CommandUtils.getOnlinePlayerNames(sender);
-                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
-            default:
-                return ImmutableList.of();
+        if (args.length == 1) {
+            List<String> playerNames = CommandUtils.getOnlinePlayerNames(sender);
+            return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
         }
+        return ImmutableList.of();
     }
 }

+ 26 - 31
src/main/java/com/gmail/nossr50/commands/player/MccooldownCommand.java

@@ -26,49 +26,44 @@ public class MccooldownCommand implements TabExecutor {
             return true;
         }
 
-        switch (args.length) {
-            case 0:
-                Player player = (Player) sender;
+        if (args.length == 0) {
+            Player player = (Player) sender;
 
-                if (Config.getInstance().getScoreboardsEnabled() && Config.getInstance().getCooldownUseBoard()) {
-                    ScoreboardManager.enablePlayerCooldownScoreboard(player);
+            if (Config.getInstance().getScoreboardsEnabled() && Config.getInstance().getCooldownUseBoard()) {
+                ScoreboardManager.enablePlayerCooldownScoreboard(player);
 
-                    if (!Config.getInstance().getCooldownUseChat()) {
-                        return true;
-                    }
-                }
-
-                if(UserManager.getPlayer(player) == null)
-                {
-                    player.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
+                if (!Config.getInstance().getCooldownUseChat()) {
                     return true;
                 }
+            }
 
-                McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
-
-                player.sendMessage(LocaleLoader.getString("Commands.Cooldowns.Header"));
-                player.sendMessage(LocaleLoader.getString("mcMMO.NoSkillNote"));
+            if (UserManager.getPlayer(player) == null) {
+                player.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
+                return true;
+            }
 
-                for (SuperAbilityType ability : SuperAbilityType.values()) {
-                    if (!ability.getPermissions(player)) {
-                        continue;
-                    }
+            McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
 
-                    int seconds = mcMMOPlayer.calculateTimeRemaining(ability);
+            player.sendMessage(LocaleLoader.getString("Commands.Cooldowns.Header"));
+            player.sendMessage(LocaleLoader.getString("mcMMO.NoSkillNote"));
 
-                    if (seconds <= 0) {
-                        player.sendMessage(LocaleLoader.getString("Commands.Cooldowns.Row.Y", ability.getName()));
-                    }
-                    else {
-                        player.sendMessage(LocaleLoader.getString("Commands.Cooldowns.Row.N", ability.getName(), seconds));
-                    }
+            for (SuperAbilityType ability : SuperAbilityType.values()) {
+                if (!ability.getPermissions(player)) {
+                    continue;
                 }
 
-                return true;
+                int seconds = mcMMOPlayer.calculateTimeRemaining(ability);
+
+                if (seconds <= 0) {
+                    player.sendMessage(LocaleLoader.getString("Commands.Cooldowns.Row.Y", ability.getName()));
+                } else {
+                    player.sendMessage(LocaleLoader.getString("Commands.Cooldowns.Row.N", ability.getName(), seconds));
+                }
+            }
 
-            default:
-                return false;
+            return true;
         }
+        return false;
     }
 
     @Override

+ 4 - 6
src/main/java/com/gmail/nossr50/commands/player/McrankCommand.java

@@ -73,13 +73,11 @@ public class McrankCommand implements TabExecutor {
 
     @Override
     public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
-        switch (args.length) {
-            case 1:
-                List<String> playerNames = CommandUtils.getOnlinePlayerNames(sender);
-                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
-            default:
-                return ImmutableList.of();
+        if (args.length == 1) {
+            List<String> playerNames = CommandUtils.getOnlinePlayerNames(sender);
+            return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
         }
+        return ImmutableList.of();
     }
 
     private void display(CommandSender sender, String playerName) {

+ 24 - 29
src/main/java/com/gmail/nossr50/commands/player/McstatsCommand.java

@@ -24,45 +24,40 @@ public class McstatsCommand implements TabExecutor {
             return true;
         }
 
-        switch (args.length) {
-            case 0:
-                if(UserManager.getPlayer((Player) sender) == null)
-                {
-                    sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
-                    return true;
-                }
+        if (args.length == 0) {
+            if (UserManager.getPlayer((Player) sender) == null) {
+                sender.sendMessage(LocaleLoader.getString("Profile.PendingLoad"));
+                return true;
+            }
 
-                Player player = (Player) sender;
+            Player player = (Player) sender;
 
-                if (Config.getInstance().getStatsUseBoard() && Config.getInstance().getScoreboardsEnabled()) {
-                    ScoreboardManager.enablePlayerStatsScoreboard(player);
+            if (Config.getInstance().getStatsUseBoard() && Config.getInstance().getScoreboardsEnabled()) {
+                ScoreboardManager.enablePlayerStatsScoreboard(player);
 
-                    if (!Config.getInstance().getStatsUseChat()) {
-                        return true;
-                    }
+                if (!Config.getInstance().getStatsUseChat()) {
+                    return true;
                 }
+            }
 
-                player.sendMessage(LocaleLoader.getString("Stats.Own.Stats"));
-                player.sendMessage(LocaleLoader.getString("mcMMO.NoSkillNote"));
+            player.sendMessage(LocaleLoader.getString("Stats.Own.Stats"));
+            player.sendMessage(LocaleLoader.getString("mcMMO.NoSkillNote"));
 
-                CommandUtils.printGatheringSkills(player);
-                CommandUtils.printCombatSkills(player);
-                CommandUtils.printMiscSkills(player);
+            CommandUtils.printGatheringSkills(player);
+            CommandUtils.printCombatSkills(player);
+            CommandUtils.printMiscSkills(player);
 
-                int powerLevelCap = Config.getInstance().getPowerLevelCap();
+            int powerLevelCap = Config.getInstance().getPowerLevelCap();
 
-                if (powerLevelCap != Integer.MAX_VALUE) {
-                    player.sendMessage(LocaleLoader.getString("Commands.PowerLevel.Capped", UserManager.getPlayer(player).getPowerLevel(), powerLevelCap));
-                }
-                else {
-                    player.sendMessage(LocaleLoader.getString("Commands.PowerLevel", UserManager.getPlayer(player).getPowerLevel()));
-                }
-
-                return true;
+            if (powerLevelCap != Integer.MAX_VALUE) {
+                player.sendMessage(LocaleLoader.getString("Commands.PowerLevel.Capped", UserManager.getPlayer(player).getPowerLevel(), powerLevelCap));
+            } else {
+                player.sendMessage(LocaleLoader.getString("Commands.PowerLevel", UserManager.getPlayer(player).getPowerLevel()));
+            }
 
-            default:
-                return false;
+            return true;
         }
+        return false;
     }
 
     @Override

+ 3 - 5
src/main/java/com/gmail/nossr50/commands/player/MctopCommand.java

@@ -67,12 +67,10 @@ public class MctopCommand implements TabExecutor {
 
     @Override
     public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
-        switch (args.length) {
-            case 1:
-                return StringUtil.copyPartialMatches(args[0], PrimarySkillType.SKILL_NAMES, new ArrayList<String>(PrimarySkillType.SKILL_NAMES.size()));
-            default:
-                return ImmutableList.of();
+        if (args.length == 1) {
+            return StringUtil.copyPartialMatches(args[0], PrimarySkillType.SKILL_NAMES, new ArrayList<String>(PrimarySkillType.SKILL_NAMES.size()));
         }
+        return ImmutableList.of();
     }
 
     private void display(int page, PrimarySkillType skill, CommandSender sender, Command command) {

+ 1 - 1
src/main/java/com/gmail/nossr50/commands/skills/AcrobaticsCommand.java

@@ -71,7 +71,7 @@ public class AcrobaticsCommand extends SkillCommand {
                 graceChance      = RandomChanceUtil.getRandomChanceExecutionChance(grace_rcs);
                 //damageThreshold  = AdvancedConfig.getInstance().getRollDamageThreshold();
 
-                String rollStrings[] = getAbilityDisplayValues(SkillActivationType.RANDOM_LINEAR_100_SCALE_WITH_CAP, player, SubSkillType.ACROBATICS_ROLL);
+                String[] rollStrings = getAbilityDisplayValues(SkillActivationType.RANDOM_LINEAR_100_SCALE_WITH_CAP, player, SubSkillType.ACROBATICS_ROLL);
 
                 //Format
                 double rollChanceLucky  = rollChance * 1.333D;

+ 25 - 30
src/main/java/com/gmail/nossr50/commands/skills/AprilCommand.java

@@ -29,44 +29,41 @@ public class AprilCommand implements TabExecutor {
 
         skillName = StringUtils.getCapitalized(label);
 
-        switch (args.length) {
-            case 0:
-                Player player = (Player) sender;
-                FakeSkillType fakeSkillType = FakeSkillType.getByName(skillName);
+        if (args.length == 0) {
+            Player player = (Player) sender;
+            FakeSkillType fakeSkillType = FakeSkillType.getByName(skillName);
 
-                float skillValue = Misc.getRandom().nextInt(99);
+            float skillValue = Misc.getRandom().nextInt(99);
 
-                player.sendMessage(LocaleLoader.getString("Skills.Header", skillName));
-                player.sendMessage(LocaleLoader.getString("Commands.XPGain", getXPGainString(fakeSkillType)));
-                player.sendMessage(LocaleLoader.getString("Effects.Level", (int) skillValue, Misc.getRandom().nextInt(1000), 1000 + Misc.getRandom().nextInt(1000)));
+            player.sendMessage(LocaleLoader.getString("Skills.Header", skillName));
+            player.sendMessage(LocaleLoader.getString("Commands.XPGain", getXPGainString(fakeSkillType)));
+            player.sendMessage(LocaleLoader.getString("Effects.Level", (int) skillValue, Misc.getRandom().nextInt(1000), 1000 + Misc.getRandom().nextInt(1000)));
 
 
-                List<String> effectMessages = effectsDisplay(fakeSkillType);
+            List<String> effectMessages = effectsDisplay(fakeSkillType);
 
-                if (!effectMessages.isEmpty()) {
-                    player.sendMessage(LocaleLoader.getString("Skills.Header", LocaleLoader.getString("Effects.Effects")));
+            if (!effectMessages.isEmpty()) {
+                player.sendMessage(LocaleLoader.getString("Skills.Header", LocaleLoader.getString("Effects.Effects")));
 
-                    for (String message : effectMessages) {
-                        player.sendMessage(message);
-                    }
+                for (String message : effectMessages) {
+                    player.sendMessage(message);
                 }
+            }
 
-                List<String> statsMessages = statsDisplay(fakeSkillType);
+            List<String> statsMessages = statsDisplay(fakeSkillType);
 
-                if (!statsMessages.isEmpty()) {
-                    player.sendMessage(LocaleLoader.getString("Skills.Header", LocaleLoader.getString("Commands.Stats.Self")));
+            if (!statsMessages.isEmpty()) {
+                player.sendMessage(LocaleLoader.getString("Skills.Header", LocaleLoader.getString("Commands.Stats.Self")));
 
-                    for (String message : statsMessages) {
-                        player.sendMessage(message);
-                    }
+                for (String message : statsMessages) {
+                    player.sendMessage(message);
                 }
+            }
 
-                player.sendMessage(LocaleLoader.formatString("[[DARK_AQUA]]Guide for {0} available - type /APRIL FOOLS ! :D", skillName));
-                return true;
-
-            default:
-                return true;
+            player.sendMessage(LocaleLoader.formatString("[[DARK_AQUA]]Guide for {0} available - type /APRIL FOOLS ! :D", skillName));
+            return true;
         }
+        return true;
     }
 
     private String getXPGainString(FakeSkillType fakeSkillType) {
@@ -102,12 +99,10 @@ public class AprilCommand implements TabExecutor {
 
     @Override
     public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
-        switch (args.length) {
-            case 1:
-                return ImmutableList.of("?");
-            default:
-                return ImmutableList.of();
+        if (args.length == 1) {
+            return ImmutableList.of("?");
         }
+        return ImmutableList.of();
     }
 
     private List<String> effectsDisplay(FakeSkillType fakeSkillType) {

+ 1 - 1
src/main/java/com/gmail/nossr50/commands/skills/ExcavationCommand.java

@@ -29,7 +29,7 @@ public class ExcavationCommand extends SkillCommand {
     protected void dataCalculations(Player player, float skillValue) {
         // GIGA DRILL BREAKER
         if (canGigaDrill) {
-            String gigaDrillStrings[] = calculateLengthDisplayValues(player, skillValue);
+            String[] gigaDrillStrings = calculateLengthDisplayValues(player, skillValue);
             gigaDrillBreakerLength = gigaDrillStrings[0];
             gigaDrillBreakerLengthEndurance = gigaDrillStrings[1];
         }

+ 1 - 1
src/main/java/com/gmail/nossr50/commands/skills/HerbalismCommand.java

@@ -45,7 +45,7 @@ public class HerbalismCommand extends SkillCommand {
         
         // DOUBLE DROPS
         if (canDoubleDrop) {
-            String[] doubleDropStrings = getAbilityDisplayValues(SkillActivationType.RANDOM_LINEAR_100_SCALE_WITH_CAP, player, SubSkillType.HERBALISM_DOUBLE_DROPS);;
+            String[] doubleDropStrings = getAbilityDisplayValues(SkillActivationType.RANDOM_LINEAR_100_SCALE_WITH_CAP, player, SubSkillType.HERBALISM_DOUBLE_DROPS);
             doubleDropChance = doubleDropStrings[0];
             doubleDropChanceLucky = doubleDropStrings[1];
         }

+ 3 - 5
src/main/java/com/gmail/nossr50/commands/skills/MmoInfoCommand.java

@@ -62,12 +62,10 @@ public class MmoInfoCommand implements TabExecutor {
 
     @Override
     public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
-        switch (args.length) {
-            case 1:
-                return StringUtil.copyPartialMatches(args[0], PrimarySkillType.SUBSKILL_NAMES, new ArrayList<String>(PrimarySkillType.SUBSKILL_NAMES.size()));
-            default:
-                return ImmutableList.of();
+        if (args.length == 1) {
+            return StringUtil.copyPartialMatches(args[0], PrimarySkillType.SUBSKILL_NAMES, new ArrayList<String>(PrimarySkillType.SUBSKILL_NAMES.size()));
         }
+        return ImmutableList.of();
     }
 
     private void displayInfo(Player player, String subSkillName)

+ 39 - 45
src/main/java/com/gmail/nossr50/commands/skills/SkillCommand.java

@@ -35,12 +35,12 @@ import java.util.Set;
 
 public abstract class SkillCommand implements TabExecutor {
     protected PrimarySkillType skill;
-    private String skillName;
+    private final String skillName;
 
     protected DecimalFormat percent = new DecimalFormat("##0.00%");
     protected DecimalFormat decimal = new DecimalFormat("##0.00");
 
-    private CommandExecutor skillGuideCommand;
+    private final CommandExecutor skillGuideCommand;
 
     public SkillCommand(PrimarySkillType skill) {
         this.skill = skill;
@@ -64,64 +64,60 @@ public abstract class SkillCommand implements TabExecutor {
             return true;
         }
 
-        switch (args.length) {
-            case 0:
-                Player player = (Player) sender;
-                McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
+        if (args.length == 0) {
+            Player player = (Player) sender;
+            McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);
 
-                boolean isLucky = Permissions.lucky(player, skill);
-                boolean hasEndurance = (PerksUtils.handleActivationPerks(player, 0, 0) != 0);
-                float skillValue = mcMMOPlayer.getSkillLevel(skill);
+            boolean isLucky = Permissions.lucky(player, skill);
+            boolean hasEndurance = (PerksUtils.handleActivationPerks(player, 0, 0) != 0);
+            float skillValue = mcMMOPlayer.getSkillLevel(skill);
 
-                //Send the players a few blank lines to make finding the top of the skill command easier
-                if(AdvancedConfig.getInstance().doesSkillCommandSendBlankLines())
-                    for(int i = 0; i < 2; i++)
-                    {
-                        player.sendMessage("");
-                    }
+            //Send the players a few blank lines to make finding the top of the skill command easier
+            if (AdvancedConfig.getInstance().doesSkillCommandSendBlankLines())
+                for (int i = 0; i < 2; i++) {
+                    player.sendMessage("");
+                }
 
-                permissionsCheck(player);
-                dataCalculations(player, skillValue);
+            permissionsCheck(player);
+            dataCalculations(player, skillValue);
 
-                sendSkillCommandHeader(player, mcMMOPlayer, (int) skillValue);
+            sendSkillCommandHeader(player, mcMMOPlayer, (int) skillValue);
 
-                //Make JSON text components
-                List<TextComponent> subskillTextComponents = getTextComponents(player);
+            //Make JSON text components
+            List<TextComponent> subskillTextComponents = getTextComponents(player);
 
-                //Subskills Header
-                player.sendMessage(LocaleLoader.getString("Skills.Overhaul.Header", LocaleLoader.getString("Effects.SubSkills.Overhaul")));
+            //Subskills Header
+            player.sendMessage(LocaleLoader.getString("Skills.Overhaul.Header", LocaleLoader.getString("Effects.SubSkills.Overhaul")));
 
-                //Send JSON text components
+            //Send JSON text components
 
-                TextComponentFactory.sendPlayerSubSkillList(player, subskillTextComponents);
+            TextComponentFactory.sendPlayerSubSkillList(player, subskillTextComponents);
 
                 /*for(TextComponent tc : subskillTextComponents)
                 {
                     player.spigot().sendMessage(new TextComponent[]{tc, new TextComponent(": TESTING")});
                 }*/
 
-                //Stats
-                getStatMessages(player, isLucky, hasEndurance, skillValue);
+            //Stats
+            getStatMessages(player, isLucky, hasEndurance, skillValue);
 
-                //Header
+            //Header
 
 
-                //Link Header
-                if(Config.getInstance().getUrlLinksEnabled())
-                {
-                    player.sendMessage(LocaleLoader.getString("Overhaul.mcMMO.Header"));
-                    TextComponentFactory.sendPlayerUrlHeader(player);
-                }
+            //Link Header
+            if (Config.getInstance().getUrlLinksEnabled()) {
+                player.sendMessage(LocaleLoader.getString("Overhaul.mcMMO.Header"));
+                TextComponentFactory.sendPlayerUrlHeader(player);
+            }
 
 
-                if (Config.getInstance().getScoreboardsEnabled() && Config.getInstance().getSkillUseBoard()) {
-                    ScoreboardManager.enablePlayerSkillScoreboard(player, skill);
-                }
+            if (Config.getInstance().getScoreboardsEnabled() && Config.getInstance().getSkillUseBoard()) {
+                ScoreboardManager.enablePlayerSkillScoreboard(player, skill);
+            }
 
-                return true;
-            default:
-                return skillGuideCommand.onCommand(sender, command, label, args);
+            return true;
         }
+        return skillGuideCommand.onCommand(sender, command, label, args);
     }
 
     private void getStatMessages(Player player, boolean isLucky, boolean hasEndurance, float skillValue) {
@@ -170,7 +166,7 @@ public abstract class SkillCommand implements TabExecutor {
             //TODO: Add JSON here
             for (PrimarySkillType parent : parents) {
                 parentList.add(parent);
-                /*player.sendMessage(parent.getName() + " - " + LocaleLoader.getString("Effects.Level.Overhaul", mcMMOPlayer.getSkillLevel(parent), mcMMOPlayer.getSkillXpLevel(parent), mcMMOPlayer.getXpToLevel(parent)))*/;
+                /*player.sendMessage(parent.getName() + " - " + LocaleLoader.getString("Effects.Level.Overhaul", mcMMOPlayer.getSkillLevel(parent), mcMMOPlayer.getSkillXpLevel(parent), mcMMOPlayer.getXpToLevel(parent)))*/
             }
 
             String parentMessage = "";
@@ -216,12 +212,10 @@ public abstract class SkillCommand implements TabExecutor {
 
     @Override
     public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
-        switch (args.length) {
-            case 1:
-                return ImmutableList.of("?");
-            default:
-                return ImmutableList.of();
+        if (args.length == 1) {
+            return ImmutableList.of("?");
         }
+        return ImmutableList.of();
     }
 
     protected int calculateRank(float skillValue, int maxLevel, int rankChangeLevel) {

+ 3 - 3
src/main/java/com/gmail/nossr50/commands/skills/SkillGuideCommand.java

@@ -11,10 +11,10 @@ import java.util.ArrayList;
 import java.util.Arrays;
 
 public class SkillGuideCommand implements CommandExecutor {
-    private String header;
-    private ArrayList<String> guide;
+    private final String header;
+    private final ArrayList<String> guide;
 
-    private String invalidPage = LocaleLoader.getString("Guides.Page.Invalid");
+    private final String invalidPage = LocaleLoader.getString("Guides.Page.Invalid");
 
     public SkillGuideCommand(PrimarySkillType skill) {
         header = LocaleLoader.getString("Guides.Header", skill.getName());

+ 2 - 2
src/main/java/com/gmail/nossr50/commands/skills/UnarmedCommand.java

@@ -40,7 +40,7 @@ public class UnarmedCommand extends SkillCommand {
     protected void dataCalculations(Player player, float skillValue) {
         // UNARMED_ARROW_DEFLECT
         if (canDeflect) {
-            String[] deflectStrings = getAbilityDisplayValues(SkillActivationType.RANDOM_LINEAR_100_SCALE_WITH_CAP, player, SubSkillType.UNARMED_ARROW_DEFLECT);;
+            String[] deflectStrings = getAbilityDisplayValues(SkillActivationType.RANDOM_LINEAR_100_SCALE_WITH_CAP, player, SubSkillType.UNARMED_ARROW_DEFLECT);
             deflectChance = deflectStrings[0];
             deflectChanceLucky = deflectStrings[1];
         }
@@ -54,7 +54,7 @@ public class UnarmedCommand extends SkillCommand {
 
         // UNARMED_DISARM
         if (canDisarm) {
-            String[] disarmStrings = getAbilityDisplayValues(SkillActivationType.RANDOM_LINEAR_100_SCALE_WITH_CAP, player, SubSkillType.UNARMED_DISARM);;
+            String[] disarmStrings = getAbilityDisplayValues(SkillActivationType.RANDOM_LINEAR_100_SCALE_WITH_CAP, player, SubSkillType.UNARMED_DISARM);
             disarmChance = disarmStrings[0];
             disarmChanceLucky = disarmStrings[1];
         }

+ 1 - 1
src/main/java/com/gmail/nossr50/commands/skills/WoodcuttingCommand.java

@@ -46,7 +46,7 @@ public class WoodcuttingCommand extends SkillCommand {
     }
 
     private void setDoubleDropClassicChanceStrings(Player player) {
-        String[] doubleDropStrings = getAbilityDisplayValues(SkillActivationType.RANDOM_LINEAR_100_SCALE_WITH_CAP, player, SubSkillType.WOODCUTTING_HARVEST_LUMBER);;
+        String[] doubleDropStrings = getAbilityDisplayValues(SkillActivationType.RANDOM_LINEAR_100_SCALE_WITH_CAP, player, SubSkillType.WOODCUTTING_HARVEST_LUMBER);
         doubleDropChance = doubleDropStrings[0];
         doubleDropChanceLucky = doubleDropStrings[1];
     }

+ 1 - 2
src/main/java/com/gmail/nossr50/config/AdvancedConfig.java

@@ -687,9 +687,8 @@ public class AdvancedConfig extends AutoUpdateConfigLoader {
     }
 
     public double getMaximumProbability(SubSkillType subSkillType) {
-        double maximumProbability = config.getDouble(subSkillType.getAdvConfigAddress() + ".ChanceMax", 100.0D);
 
-        return maximumProbability;
+        return config.getDouble(subSkillType.getAdvConfigAddress() + ".ChanceMax", 100.0D);
     }
 
     public double getMaximumProbability(AbstractSubSkill abstractSubSkill)

+ 1 - 1
src/main/java/com/gmail/nossr50/config/ConfigLoader.java

@@ -10,7 +10,7 @@ import java.util.List;
 public abstract class ConfigLoader {
     protected static final mcMMO plugin = mcMMO.p;
     protected String fileName;
-    private File configFile;
+    private final File configFile;
     protected FileConfiguration config;
 
     public ConfigLoader(String relativePath, String fileName) {

+ 1 - 1
src/main/java/com/gmail/nossr50/config/HiddenConfig.java

@@ -7,7 +7,7 @@ import java.io.InputStreamReader;
 
 public class HiddenConfig {
     private static HiddenConfig instance;
-    private String fileName;
+    private final String fileName;
     private YamlConfiguration config;
     private boolean chunkletsEnabled;
     private int conversionRate;

+ 1 - 1
src/main/java/com/gmail/nossr50/config/RankConfig.java

@@ -13,7 +13,7 @@ public class RankConfig extends AutoUpdateConfigLoader {
     {
         super("skillranks.yml");
         validate();
-        this.instance = this;
+        instance = this;
     }
 
     @Override

+ 1 - 1
src/main/java/com/gmail/nossr50/config/SoundConfig.java

@@ -9,7 +9,7 @@ public class SoundConfig extends AutoUpdateConfigLoader {
     {
         super("sounds.yml");
         validate();
-        this.instance = this;
+        instance = this;
     }
 
     @Override

+ 1 - 1
src/main/java/com/gmail/nossr50/config/WorldBlacklist.java

@@ -11,7 +11,7 @@ import java.util.ArrayList;
  */
 public class WorldBlacklist {
     private static ArrayList<String> blacklist;
-    private mcMMO plugin;
+    private final mcMMO plugin;
 
     private final String blackListFileName = "world_blacklist.txt";
 

+ 10 - 11
src/main/java/com/gmail/nossr50/config/skills/alchemy/PotionConfig.java

@@ -18,16 +18,16 @@ import java.util.Map;
 public class PotionConfig extends ConfigLoader {
     private static PotionConfig instance;
 
-    private List<ItemStack> concoctionsIngredientsTierOne = new ArrayList<ItemStack>();
-    private List<ItemStack> concoctionsIngredientsTierTwo = new ArrayList<ItemStack>();
-    private List<ItemStack> concoctionsIngredientsTierThree = new ArrayList<ItemStack>();
-    private List<ItemStack> concoctionsIngredientsTierFour = new ArrayList<ItemStack>();
-    private List<ItemStack> concoctionsIngredientsTierFive = new ArrayList<ItemStack>();
-    private List<ItemStack> concoctionsIngredientsTierSix = new ArrayList<ItemStack>();
-    private List<ItemStack> concoctionsIngredientsTierSeven = new ArrayList<ItemStack>();
-    private List<ItemStack> concoctionsIngredientsTierEight = new ArrayList<ItemStack>();
+    private final List<ItemStack> concoctionsIngredientsTierOne = new ArrayList<ItemStack>();
+    private final List<ItemStack> concoctionsIngredientsTierTwo = new ArrayList<ItemStack>();
+    private final List<ItemStack> concoctionsIngredientsTierThree = new ArrayList<ItemStack>();
+    private final List<ItemStack> concoctionsIngredientsTierFour = new ArrayList<ItemStack>();
+    private final List<ItemStack> concoctionsIngredientsTierFive = new ArrayList<ItemStack>();
+    private final List<ItemStack> concoctionsIngredientsTierSix = new ArrayList<ItemStack>();
+    private final List<ItemStack> concoctionsIngredientsTierSeven = new ArrayList<ItemStack>();
+    private final List<ItemStack> concoctionsIngredientsTierEight = new ArrayList<ItemStack>();
 
-    private Map<String, AlchemyPotion> potionMap = new HashMap<String, AlchemyPotion>();
+    private final Map<String, AlchemyPotion> potionMap = new HashMap<String, AlchemyPotion>();
 
     private PotionConfig() {
         super("potions.yml");
@@ -280,8 +280,7 @@ public class PotionConfig extends ConfigLoader {
             green += color.getGreen();
             blue += color.getBlue();
         }
-        Color color = Color.fromRGB(red/colors.size(), green/colors.size(), blue/colors.size());
-        return color;
+        return Color.fromRGB(red/colors.size(), green/colors.size(), blue/colors.size());
     }
     
 }

+ 1 - 1
src/main/java/com/gmail/nossr50/config/skills/repair/RepairConfig.java

@@ -15,7 +15,7 @@ import java.util.*;
 
 public class RepairConfig extends ConfigLoader {
     private List<Repairable> repairables;
-    private HashSet<String> notSupported;
+    private final HashSet<String> notSupported;
 
     public RepairConfig(String fileName) {
         super(fileName);

+ 1 - 1
src/main/java/com/gmail/nossr50/config/skills/salvage/SalvageConfig.java

@@ -18,7 +18,7 @@ import java.util.*;
 
 public class SalvageConfig extends ConfigLoader {
     private List<Salvageable> salvageables;
-    private HashSet<String> notSupported;
+    private final HashSet<String> notSupported;
 
     public SalvageConfig(String fileName) {
         super(fileName);

+ 19 - 19
src/main/java/com/gmail/nossr50/database/DatabaseManager.java

@@ -12,19 +12,19 @@ import java.util.UUID;
 
 public interface DatabaseManager {
     // One month in milliseconds
-    public final long PURGE_TIME = 2630000000L * Config.getInstance().getOldUsersCutoff();
+    long PURGE_TIME = 2630000000L * Config.getInstance().getOldUsersCutoff();
     // During convertUsers, how often to output a status
-    public final int progressInterval = 200;
+    int progressInterval = 200;
 
     /**
      * Purge users with 0 power level from the database.
      */
-    public void purgePowerlessUsers();
+    void purgePowerlessUsers();
 
     /**
      * Purge users who haven't logged on in over a certain time frame from the database.
      */
-    public void purgeOldUsers();
+    void purgeOldUsers();
 
     /**
      * Remove a user from the database.
@@ -33,14 +33,14 @@ public interface DatabaseManager {
      * @param uuid player UUID, can be null
      * @return true if the user was successfully removed, false otherwise
      */
-    public boolean removeUser(String playerName, UUID uuid);
+    boolean removeUser(String playerName, UUID uuid);
 
     /**
      * Removes any cache used for faster lookups
      * Currently only used for SQL
      * @param uuid target UUID to cleanup
      */
-    public void cleanupUser(UUID uuid);
+    void cleanupUser(UUID uuid);
 
     /**
      * Save a user to the database.
@@ -48,7 +48,7 @@ public interface DatabaseManager {
      * @param profile The profile of the player to save
      * @return true if successful, false on failure
      */
-    public boolean saveUser(PlayerProfile profile);
+    boolean saveUser(PlayerProfile profile);
 
     /**
     * Retrieve leaderboard info.
@@ -58,7 +58,7 @@ public interface DatabaseManager {
     * @param statsPerPage The number of stats per page
     * @return the requested leaderboard information
     */
-    public List<PlayerStat> readLeaderboard(PrimarySkillType skill, int pageNumber, int statsPerPage);
+    List<PlayerStat> readLeaderboard(PrimarySkillType skill, int pageNumber, int statsPerPage);
 
     /**
      * Retrieve rank info into a HashMap from PrimarySkillType to the rank.
@@ -69,7 +69,7 @@ public interface DatabaseManager {
      * @param playerName The name of the user to retrieve the rankings for
      * @return the requested rank information
      */
-    public Map<PrimarySkillType, Integer> readRank(String playerName);
+    Map<PrimarySkillType, Integer> readRank(String playerName);
 
     /**
      * Add a new user to the database.
@@ -77,7 +77,7 @@ public interface DatabaseManager {
      * @param playerName The name of the player to be added to the database
      * @param uuid The uuid of the player to be added to the database
      */
-    public void newUser(String playerName, UUID uuid);
+    void newUser(String playerName, UUID uuid);
 
     /**
      * Load a player from the database.
@@ -91,7 +91,7 @@ public interface DatabaseManager {
      *          and createNew is false
      */
     @Deprecated
-    public PlayerProfile loadPlayerProfile(String playerName, boolean createNew);
+    PlayerProfile loadPlayerProfile(String playerName, boolean createNew);
 
     /**
      * Load a player from the database.
@@ -99,7 +99,7 @@ public interface DatabaseManager {
      * @param uuid The uuid of the player to load from the database
      * @return The player's data, or an unloaded PlayerProfile if not found
      */
-    public PlayerProfile loadPlayerProfile(UUID uuid);
+    PlayerProfile loadPlayerProfile(UUID uuid);
 
     /**
      * Load a player from the database. Attempt to use uuid, fall back on playername
@@ -111,14 +111,14 @@ public interface DatabaseManager {
      * @return The player's data, or an unloaded PlayerProfile if not found
      *          and createNew is false
      */
-    public PlayerProfile loadPlayerProfile(String playerName, UUID uuid, boolean createNew);
+    PlayerProfile loadPlayerProfile(String playerName, UUID uuid, boolean createNew);
 
     /**
      * Get all users currently stored in the database.
      *
      * @return list of playernames
      */
-    public List<String> getStoredUsers();
+    List<String> getStoredUsers();
 
     /**
      * Convert all users from this database to the provided database using
@@ -126,21 +126,21 @@ public interface DatabaseManager {
      *
      * @param destination The DatabaseManager to save to
      */
-    public void convertUsers(DatabaseManager destination);
+    void convertUsers(DatabaseManager destination);
 
-    public boolean saveUserUUID(String userName, UUID uuid);
+    boolean saveUserUUID(String userName, UUID uuid);
 
-    public boolean saveUserUUIDs(Map<String, UUID> fetchedUUIDs);
+    boolean saveUserUUIDs(Map<String, UUID> fetchedUUIDs);
 
     /**
      * Retrieve the type of database in use. Custom databases should return CUSTOM.
      *
      * @return The type of database
      */
-    public DatabaseType getDatabaseType();
+    DatabaseType getDatabaseType();
 
     /**
      * Called when the plugin disables
      */
-    public void onDisable();
+    void onDisable();
 }

+ 14 - 14
src/main/java/com/gmail/nossr50/database/FlatfileDatabaseManager.java

@@ -809,20 +809,20 @@ public final class FlatfileDatabaseManager implements DatabaseManager {
 
         SkillComparator c = new SkillComparator();
 
-        Collections.sort(mining, c);
-        Collections.sort(woodcutting, c);
-        Collections.sort(repair, c);
-        Collections.sort(unarmed, c);
-        Collections.sort(herbalism, c);
-        Collections.sort(excavation, c);
-        Collections.sort(archery, c);
-        Collections.sort(swords, c);
-        Collections.sort(axes, c);
-        Collections.sort(acrobatics, c);
-        Collections.sort(taming, c);
-        Collections.sort(fishing, c);
-        Collections.sort(alchemy, c);
-        Collections.sort(powerLevels, c);
+        mining.sort(c);
+        woodcutting.sort(c);
+        repair.sort(c);
+        unarmed.sort(c);
+        herbalism.sort(c);
+        excavation.sort(c);
+        archery.sort(c);
+        swords.sort(c);
+        axes.sort(c);
+        acrobatics.sort(c);
+        taming.sort(c);
+        fishing.sort(c);
+        alchemy.sort(c);
+        powerLevels.sort(c);
 
         playerStatHash.put(PrimarySkillType.MINING, mining);
         playerStatHash.put(PrimarySkillType.WOODCUTTING, woodcutting);

+ 3 - 4
src/main/java/com/gmail/nossr50/database/SQLDatabaseManager.java

@@ -23,7 +23,7 @@ import java.util.concurrent.locks.ReentrantLock;
 
 public final class SQLDatabaseManager implements DatabaseManager {
     private static final String ALL_QUERY_VERSION = "total";
-    private String tablePrefix = Config.getInstance().getMySQLTablePrefix();
+    private final String tablePrefix = Config.getInstance().getMySQLTablePrefix();
 
     private final Map<UUID, Integer> cachedUserIDs = new HashMap<UUID, Integer>();
 
@@ -33,7 +33,7 @@ public final class SQLDatabaseManager implements DatabaseManager {
 
     private boolean debug = false;
 
-    private ReentrantLock massUpdateLock = new ReentrantLock();
+    private final ReentrantLock massUpdateLock = new ReentrantLock();
 
     protected SQLDatabaseManager() {
         String connectionString = "jdbc:mysql://" + Config.getInstance().getMySQLServerName()
@@ -1488,9 +1488,8 @@ public final class SQLDatabaseManager implements DatabaseManager {
             resultSet = statement.executeQuery();
 
             if (resultSet.next()) {
-                int id = resultSet.getInt("id");
 
-                return id;
+                return resultSet.getInt("id");
             }
         }
         catch (SQLException ex) {

+ 1 - 1
src/main/java/com/gmail/nossr50/datatypes/BlockSnapshot.java

@@ -9,7 +9,7 @@ import org.bukkit.block.Block;
  */
 public class BlockSnapshot {
     private final Material oldType;
-    private Block blockRef;
+    private final Block blockRef;
 
     public BlockSnapshot(Material oldType, Block blockRef) {
         this.oldType = oldType;

+ 1 - 1
src/main/java/com/gmail/nossr50/datatypes/MobHealthbarType.java

@@ -3,5 +3,5 @@ package com.gmail.nossr50.datatypes;
 public enum MobHealthbarType {
     HEARTS,
     BAR,
-    DISABLED;
+    DISABLED
 }

+ 3 - 3
src/main/java/com/gmail/nossr50/datatypes/chat/ChatMode.java

@@ -6,10 +6,10 @@ public enum ChatMode {
     ADMIN(LocaleLoader.getString("Commands.AdminChat.On"), LocaleLoader.getString("Commands.AdminChat.Off")),
     PARTY(LocaleLoader.getString("Commands.Party.Chat.On"), LocaleLoader.getString("Commands.Party.Chat.Off"));
 
-    private String enabledMessage;
-    private String disabledMessage;
+    private final String enabledMessage;
+    private final String disabledMessage;
 
-    private ChatMode(String enabledMessage, String disabledMessage) {
+    ChatMode(String enabledMessage, String disabledMessage) {
         this.enabledMessage  = enabledMessage;
         this.disabledMessage = disabledMessage;
     }

+ 3 - 3
src/main/java/com/gmail/nossr50/datatypes/mods/CustomBlock.java

@@ -1,9 +1,9 @@
 package com.gmail.nossr50.datatypes.mods;
 
 public class CustomBlock {
-    private int xpGain;
-    private boolean canDoubleDrop;
-    private int smeltingXpGain;
+    private final int xpGain;
+    private final boolean canDoubleDrop;
+    private final int smeltingXpGain;
 
     public CustomBlock(int xpGain, boolean canDoubleDrop, int smeltingXpGain) {
         this.xpGain = xpGain;

+ 6 - 6
src/main/java/com/gmail/nossr50/datatypes/mods/CustomEntity.java

@@ -3,12 +3,12 @@ package com.gmail.nossr50.datatypes.mods;
 import org.bukkit.inventory.ItemStack;
 
 public class CustomEntity {
-    private double xpMultiplier;
-    private boolean canBeTamed;
-    private int tamingXP;
-    private boolean canBeSummoned;
-    private ItemStack callOfTheWildItem;
-    private int callOfTheWildAmount;
+    private final double xpMultiplier;
+    private final boolean canBeTamed;
+    private final int tamingXP;
+    private final boolean canBeSummoned;
+    private final ItemStack callOfTheWildItem;
+    private final int callOfTheWildAmount;
 
     public CustomEntity(double xpMultiplier, boolean canBeTamed, int tamingXP, boolean canBeSummoned, ItemStack callOfTheWildItem, int callOfTheWildAmount) {
         this.xpMultiplier = xpMultiplier;

+ 3 - 3
src/main/java/com/gmail/nossr50/datatypes/mods/CustomTool.java

@@ -1,9 +1,9 @@
 package com.gmail.nossr50.datatypes.mods;
 
 public class CustomTool {
-    private double xpMultiplier;
-    private boolean abilityEnabled;
-    private int tier;
+    private final double xpMultiplier;
+    private final boolean abilityEnabled;
+    private final int tier;
 
     public CustomTool(int tier, boolean abilityEnabled, double xpMultiplier) {
         this.xpMultiplier = xpMultiplier;

+ 2 - 2
src/main/java/com/gmail/nossr50/datatypes/party/PartyLeader.java

@@ -3,8 +3,8 @@ package com.gmail.nossr50.datatypes.party;
 import java.util.UUID;
 
 public class PartyLeader {
-    private UUID uuid;
-    private String playerName;
+    private final UUID uuid;
+    private final String playerName;
 
     public PartyLeader(UUID uuid, String playerName) {
         this.uuid = uuid;

+ 4 - 4
src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java

@@ -65,11 +65,11 @@ import java.util.Set;
 import java.util.UUID;
 
 public class McMMOPlayer {
-    private Player        player;
-    private PlayerProfile profile;
+    private final Player        player;
+    private final PlayerProfile profile;
 
     private final Map<PrimarySkillType, SkillManager> skillManagers = new HashMap<PrimarySkillType, SkillManager>();
-    private ExperienceBarManager experienceBarManager;
+    private final ExperienceBarManager experienceBarManager;
 
     private Party   party;
     private Party   invite;
@@ -102,7 +102,7 @@ public class McMMOPlayer {
 
     private boolean isUsingUnarmed;
     private final FixedMetadataValue playerMetadata;
-    private String playerName;
+    private final String playerName;
 
     public McMMOPlayer(Player player, PlayerProfile profile) {
         this.playerName = player.getName();

+ 3 - 5
src/main/java/com/gmail/nossr50/datatypes/player/PlayerProfile.java

@@ -38,8 +38,8 @@ public class PlayerProfile {
     private final Map<UniqueDataType, Integer> uniquePlayerData = new HashMap<>(); //Misc data that doesn't fit into other categories (chimaera wing, etc..)
 
     // Store previous XP gains for diminished returns
-    private DelayQueue<SkillXpGain> gainedSkillsXp = new DelayQueue<SkillXpGain>();
-    private HashMap<PrimarySkillType, Float> rollingSkillsXp = new HashMap<PrimarySkillType, Float>();
+    private final DelayQueue<SkillXpGain> gainedSkillsXp = new DelayQueue<SkillXpGain>();
+    private final HashMap<PrimarySkillType, Float> rollingSkillsXp = new HashMap<PrimarySkillType, Float>();
 
     @Deprecated
     public PlayerProfile(String playerName) {
@@ -248,9 +248,7 @@ public class PlayerProfile {
     protected void resetCooldowns() {
         markProfileDirty();
 
-        for (SuperAbilityType ability : abilityDATS.keySet()) {
-            abilityDATS.put(ability, 0);
-        }
+        abilityDATS.replaceAll((a, v) -> 0);
     }
 
     /*

+ 1 - 1
src/main/java/com/gmail/nossr50/datatypes/skills/ItemType.java

@@ -3,5 +3,5 @@ package com.gmail.nossr50.datatypes.skills;
 public enum ItemType {
     ARMOR,
     TOOL,
-    OTHER;
+    OTHER
 }

+ 7 - 7
src/main/java/com/gmail/nossr50/datatypes/skills/PrimarySkillType.java

@@ -65,11 +65,11 @@ public enum PrimarySkillType {
     WOODCUTTING(WoodcuttingManager.class, Color.OLIVE, SuperAbilityType.TREE_FELLER, ToolType.AXE,
             ImmutableList.of(SubSkillType.WOODCUTTING_LEAF_BLOWER, SubSkillType.WOODCUTTING_TREE_FELLER, SubSkillType.WOODCUTTING_HARVEST_LUMBER));
 
-    private Class<? extends SkillManager> managerClass;
-    private Color skillColor;
-    private SuperAbilityType ability;
-    private ToolType tool;
-    private List<SubSkillType> subSkillTypes;
+    private final Class<? extends SkillManager> managerClass;
+    private final Color skillColor;
+    private final SuperAbilityType ability;
+    private final ToolType tool;
+    private final List<SubSkillType> subSkillTypes;
 
     public static final List<String> SKILL_NAMES;
     public static final List<String> SUBSKILL_NAMES;
@@ -110,11 +110,11 @@ public enum PrimarySkillType {
         NON_CHILD_SKILLS = ImmutableList.copyOf(nonChildSkills);
     }
 
-    private PrimarySkillType(Class<? extends SkillManager> managerClass, Color skillColor, List<SubSkillType> subSkillTypes) {
+    PrimarySkillType(Class<? extends SkillManager> managerClass, Color skillColor, List<SubSkillType> subSkillTypes) {
         this(managerClass, skillColor, null, null, subSkillTypes);
     }
 
-    private PrimarySkillType(Class<? extends SkillManager> managerClass, Color skillColor, SuperAbilityType ability, ToolType tool, List<SubSkillType> subSkillTypes) {
+    PrimarySkillType(Class<? extends SkillManager> managerClass, Color skillColor, SuperAbilityType ability, ToolType tool, List<SubSkillType> subSkillTypes) {
         this.managerClass = managerClass;
         this.skillColor = skillColor;
         this.ability = ability;

+ 4 - 6
src/main/java/com/gmail/nossr50/datatypes/skills/SubSkillType.java

@@ -189,7 +189,7 @@ public enum SubSkillType {
         String subskillNameWithoutPrefix = subSkillName.substring(subStringIndex);
         if(subskillNameWithoutPrefix.contains("_"))
         {
-            String splitStrings[] = subskillNameWithoutPrefix.split("_");
+            String[] splitStrings = subskillNameWithoutPrefix.split("_");
 
             for(String string : splitStrings)
             {
@@ -215,7 +215,7 @@ public enum SubSkillType {
         String subskillNameWithoutPrefix = subSkillName.substring(subStringIndex);
         if(subskillNameWithoutPrefix.contains("_"))
         {
-            String splitStrings[] = subskillNameWithoutPrefix.split("_");
+            String[] splitStrings = subskillNameWithoutPrefix.split("_");
 
             for(int i = 0; i < splitStrings.length; i++)
             {
@@ -295,14 +295,12 @@ public enum SubSkillType {
 
     public String getLocaleStat(String... vars)
     {
-        String statMsg = LocaleLoader.getString("Ability.Generic.Template", (Object[]) vars);
-        return statMsg;
+        return LocaleLoader.getString("Ability.Generic.Template", (Object[]) vars);
     }
 
     public String getCustomLocaleStat(String... vars)
     {
-        String statMsg = LocaleLoader.getString("Ability.Generic.Template.Custom", (Object[]) vars);
-        return statMsg;
+        return LocaleLoader.getString("Ability.Generic.Template.Custom", (Object[]) vars);
     }
 
     private String getFromLocaleSubAddress(String s) {

+ 6 - 6
src/main/java/com/gmail/nossr50/datatypes/skills/SuperAbilityType.java

@@ -85,14 +85,14 @@ public enum SuperAbilityType {
         BLAST_MINING.subSkillTypeDefinition         = SubSkillType.MINING_BLAST_MINING;
     }
 
-    private String abilityOn;
-    private String abilityOff;
-    private String abilityPlayer;
-    private String abilityRefresh;
-    private String abilityPlayerOff;
+    private final String abilityOn;
+    private final String abilityOff;
+    private final String abilityPlayer;
+    private final String abilityRefresh;
+    private final String abilityPlayerOff;
     private SubSkillType subSkillTypeDefinition;
 
-    private SuperAbilityType(String abilityOn, String abilityOff, String abilityPlayer, String abilityRefresh, String abilityPlayerOff) {
+    SuperAbilityType(String abilityOn, String abilityOff, String abilityPlayer, String abilityRefresh, String abilityPlayerOff) {
         this.abilityOn = abilityOn;
         this.abilityOff = abilityOff;
         this.abilityPlayer = abilityPlayer;

+ 3 - 3
src/main/java/com/gmail/nossr50/datatypes/skills/ToolType.java

@@ -12,10 +12,10 @@ public enum ToolType {
     SHOVEL("Excavation.Ability.Lower", "Excavation.Ability.Ready"),
     SWORD("Swords.Ability.Lower", "Swords.Ability.Ready");
 
-    private String lowerTool;
-    private String raiseTool;
+    private final String lowerTool;
+    private final String raiseTool;
 
-    private ToolType(String lowerTool, String raiseTool) {
+    ToolType(String lowerTool, String raiseTool) {
         this.lowerTool = lowerTool;
         this.raiseTool = raiseTool;
     }

+ 1 - 1
src/main/java/com/gmail/nossr50/datatypes/skills/alchemy/AlchemyPotion.java

@@ -14,7 +14,7 @@ import java.util.Map;
 import java.util.Map.Entry;
 
 public class AlchemyPotion {
-    private Material material;
+    private final Material material;
     private PotionData data;
     private String name;
     private List<String> lore;

+ 1 - 1
src/main/java/com/gmail/nossr50/datatypes/skills/alchemy/PotionStage.java

@@ -16,7 +16,7 @@ public enum PotionStage {
 
     int numerical;
 
-    private PotionStage(int numerical) {
+    PotionStage(int numerical) {
         this.numerical = numerical;
     }
 

+ 18 - 26
src/main/java/com/gmail/nossr50/datatypes/skills/subskills/acrobatics/Roll.java

@@ -65,31 +65,24 @@ public class Roll extends AcrobaticsSubSkill {
         if(!EventUtils.isRealPlayerDamaged(entityDamageEvent))
             return false;
 
-        switch (entityDamageEvent.getCause()) {
-            case FALL:
-
-                //Grab the player
-                McMMOPlayer mcMMOPlayer = EventUtils.getMcMMOPlayer(entityDamageEvent.getEntity());
-
-                if(mcMMOPlayer == null)
-                    break;
-
-                /*
-                 * Check for success
-                 */
-                Player player = (Player) ((EntityDamageEvent) event).getEntity();
-                if (canRoll(player)) {
-                    entityDamageEvent.setDamage(rollCheck(player, mcMMOPlayer, entityDamageEvent.getDamage()));
-
-                    if (entityDamageEvent.getFinalDamage() == 0) {
-                        entityDamageEvent.setCancelled(true);
-                        return true;
-                    }
+        if (entityDamageEvent.getCause() == EntityDamageEvent.DamageCause.FALL) {//Grab the player
+            McMMOPlayer mcMMOPlayer = EventUtils.getMcMMOPlayer(entityDamageEvent.getEntity());
+
+            if (mcMMOPlayer == null)
+                return false;
+
+            /*
+             * Check for success
+             */
+            Player player = (Player) ((EntityDamageEvent) event).getEntity();
+            if (canRoll(player)) {
+                entityDamageEvent.setDamage(rollCheck(player, mcMMOPlayer, entityDamageEvent.getDamage()));
+
+                if (entityDamageEvent.getFinalDamage() == 0) {
+                    entityDamageEvent.setCancelled(true);
+                    return true;
                 }
-                break;
-
-            default:
-                break;
+            }
         }
 
         return false;
@@ -420,8 +413,7 @@ public class Roll extends AcrobaticsSubSkill {
         playerChanceRoll        = RandomChanceUtil.getRandomChanceExecutionChance(roll);
         playerChanceGrace       = RandomChanceUtil.getRandomChanceExecutionChance(graceful);
 
-        Double[] stats = { playerChanceRoll, playerChanceGrace }; //DEBUG
-        return stats;
+        return new Double[]{ playerChanceRoll, playerChanceGrace };
     }
 
     public void addFallLocation(Player player)

+ 6 - 6
src/main/java/com/gmail/nossr50/datatypes/skills/subskills/taming/TamingSummon.java

@@ -8,12 +8,12 @@ import org.bukkit.entity.EntityType;
  */
 public class TamingSummon {
 
-    private Material itemType;
-    private int itemAmountRequired;
-    private int entitiesSummoned;
-    private int summonLifespan;
-    private int summonCap;
-    private CallOfTheWildType callOfTheWildType;
+    private final Material itemType;
+    private final int itemAmountRequired;
+    private final int entitiesSummoned;
+    private final int summonLifespan;
+    private final int summonCap;
+    private final CallOfTheWildType callOfTheWildType;
     private EntityType entityType;
 
     public TamingSummon(CallOfTheWildType callOfTheWildType, Material itemType, int itemAmountRequired, int entitiesSummoned, int summonLifespan, int summonCap) {

+ 2 - 2
src/main/java/com/gmail/nossr50/events/chat/McMMOChatEvent.java

@@ -7,8 +7,8 @@ import org.bukkit.plugin.Plugin;
 
 public abstract class McMMOChatEvent extends Event implements Cancellable {
     private boolean cancelled;
-    private Plugin plugin;
-    private String sender;
+    private final Plugin plugin;
+    private final String sender;
     private String displayName;
     private String message;
 

+ 1 - 1
src/main/java/com/gmail/nossr50/events/chat/McMMOPartyChatEvent.java

@@ -6,7 +6,7 @@ import org.bukkit.plugin.Plugin;
  * Called when a chat is sent to a party channel
  */
 public class McMMOPartyChatEvent extends McMMOChatEvent {
-    private String party;
+    private final String party;
 
     public McMMOPartyChatEvent(Plugin plugin, String sender, String displayName, String party, String message) {
         super(plugin, sender, displayName, message);

+ 1 - 1
src/main/java/com/gmail/nossr50/events/hardcore/McMMOPlayerVampirismEvent.java

@@ -5,7 +5,7 @@ import org.bukkit.entity.Player;
 import java.util.HashMap;
 
 public class McMMOPlayerVampirismEvent extends McMMOPlayerDeathPenaltyEvent {
-    private boolean isVictim;
+    private final boolean isVictim;
 
     public McMMOPlayerVampirismEvent(Player player, boolean isVictim, HashMap<String, Integer> levelChanged, HashMap<String, Float> experienceChanged) {
         super(player, levelChanged, experienceChanged);

+ 4 - 4
src/main/java/com/gmail/nossr50/events/party/McMMOPartyAllianceChangeEvent.java

@@ -6,9 +6,9 @@ import org.bukkit.event.HandlerList;
 import org.bukkit.event.player.PlayerEvent;
 
 public class McMMOPartyAllianceChangeEvent extends PlayerEvent implements Cancellable {
-    private String oldAlly;
-    private String newAlly;
-    private EventReason reason;
+    private final String oldAlly;
+    private final String newAlly;
+    private final EventReason reason;
     private boolean cancelled;
 
     public McMMOPartyAllianceChangeEvent(Player player, String oldAlly, String newAlly, EventReason reason) {
@@ -62,7 +62,7 @@ public class McMMOPartyAllianceChangeEvent extends PlayerEvent implements Cancel
         /**
          * Any reason that doesn't fit elsewhere.
          */
-        CUSTOM;
+        CUSTOM
     }
 
     /** Following are required for Cancellable **/

+ 4 - 4
src/main/java/com/gmail/nossr50/events/party/McMMOPartyChangeEvent.java

@@ -9,9 +9,9 @@ import org.bukkit.event.player.PlayerEvent;
  * Called when a player attempts to join, leave, or change parties.
  */
 public class McMMOPartyChangeEvent extends PlayerEvent implements Cancellable {
-    private String oldParty;
-    private String newParty;
-    private EventReason reason;
+    private final String oldParty;
+    private final String newParty;
+    private final EventReason reason;
     private boolean cancelled;
 
     public McMMOPartyChangeEvent(Player player, String oldParty, String newParty, EventReason reason) {
@@ -75,7 +75,7 @@ public class McMMOPartyChangeEvent extends PlayerEvent implements Cancellable {
         /**
          * Any reason that doesn't fit elsewhere.
          */
-        CUSTOM;
+        CUSTOM
     }
 
     /** Following are required for Cancellable **/

+ 1 - 1
src/main/java/com/gmail/nossr50/events/party/McMMOPartyLevelUpEvent.java

@@ -6,7 +6,7 @@ import org.bukkit.event.Event;
 import org.bukkit.event.HandlerList;
 
 public class McMMOPartyLevelUpEvent extends Event implements Cancellable {
-    private Party party;
+    private final Party party;
     private int levelsChanged;
     private boolean cancelled;
 

+ 2 - 2
src/main/java/com/gmail/nossr50/events/party/McMMOPartyTeleportEvent.java

@@ -8,8 +8,8 @@ import org.bukkit.event.player.PlayerTeleportEvent;
  * Called just before a player teleports using the /ptp command.
  */
 public class McMMOPartyTeleportEvent extends PlayerTeleportEvent {
-    private String party;
-    private Player target;
+    private final String party;
+    private final Player target;
 
     public McMMOPartyTeleportEvent(Player player, Player target, String party) {
         super(player, player.getLocation(), target.getLocation(), TeleportCause.COMMAND);

+ 1 - 1
src/main/java/com/gmail/nossr50/events/party/McMMOPartyXpGainEvent.java

@@ -6,7 +6,7 @@ import org.bukkit.event.Event;
 import org.bukkit.event.HandlerList;
 
 public class McMMOPartyXpGainEvent extends Event implements Cancellable {
-    private Party party;
+    private final Party party;
     private float xpGained;
     private boolean cancelled;
 

+ 2 - 2
src/main/java/com/gmail/nossr50/events/players/McMMOPlayerProfileLoadEvent.java

@@ -9,8 +9,8 @@ import org.bukkit.event.HandlerList;
 
 public class McMMOPlayerProfileLoadEvent extends Event implements Cancellable {
     private boolean cancelled;
-    private PlayerProfile profile;
-    private Player player;
+    private final PlayerProfile profile;
+    private final Player player;
     public McMMOPlayerProfileLoadEvent(Player player, PlayerProfile profile){
         super(!Bukkit.isPrimaryThread());
 

+ 1 - 1
src/main/java/com/gmail/nossr50/events/skills/abilities/McMMOPlayerAbilityEvent.java

@@ -6,7 +6,7 @@ import com.gmail.nossr50.events.skills.McMMOPlayerSkillEvent;
 import org.bukkit.entity.Player;
 
 public class McMMOPlayerAbilityEvent extends McMMOPlayerSkillEvent {
-    private SuperAbilityType ability;
+    private final SuperAbilityType ability;
 
     protected McMMOPlayerAbilityEvent(Player player, PrimarySkillType skill) {
         super(player, skill);

+ 1 - 1
src/main/java/com/gmail/nossr50/events/skills/alchemy/McMMOPlayerBrewEvent.java

@@ -9,7 +9,7 @@ import org.bukkit.entity.Player;
 import org.bukkit.event.Cancellable;
 
 public class McMMOPlayerBrewEvent extends McMMOPlayerSkillEvent implements Cancellable {
-    private BlockState brewingStand;
+    private final BlockState brewingStand;
 
     private boolean cancelled;
 

+ 1 - 1
src/main/java/com/gmail/nossr50/events/skills/fishing/McMMOPlayerMagicHunterEvent.java

@@ -7,7 +7,7 @@ import org.bukkit.inventory.ItemStack;
 import java.util.Map;
 
 public class McMMOPlayerMagicHunterEvent extends McMMOPlayerFishingTreasureEvent {
-    private Map<Enchantment, Integer> enchants;
+    private final Map<Enchantment, Integer> enchants;
 
     public McMMOPlayerMagicHunterEvent(Player player, ItemStack treasure, int xp, Map<Enchantment, Integer> enchants) {
         super(player, treasure, xp);

+ 3 - 3
src/main/java/com/gmail/nossr50/events/skills/repair/McMMOPlayerRepairCheckEvent.java

@@ -10,9 +10,9 @@ import org.bukkit.inventory.ItemStack;
  * Called just before a player repairs an object with mcMMO.
  */
 public class McMMOPlayerRepairCheckEvent extends McMMOPlayerSkillEvent implements Cancellable {
-    private short repairAmount;
-    private ItemStack repairMaterial;
-    private ItemStack repairedObject;
+    private final short repairAmount;
+    private final ItemStack repairMaterial;
+    private final ItemStack repairedObject;
     private boolean cancelled;
 
     public McMMOPlayerRepairCheckEvent(Player player, short repairAmount, ItemStack repairMaterial, ItemStack repairedObject) {

+ 3 - 3
src/main/java/com/gmail/nossr50/events/skills/salvage/McMMOPlayerSalvageCheckEvent.java

@@ -10,9 +10,9 @@ import org.bukkit.inventory.ItemStack;
  * Called just before a player salvages an item with mcMMO.
  */
 public class McMMOPlayerSalvageCheckEvent extends McMMOPlayerSkillEvent implements Cancellable {
-    private ItemStack salvageItem;
-    private ItemStack salvageResults;
-    private ItemStack enchantedBook;
+    private final ItemStack salvageItem;
+    private final ItemStack salvageResults;
+    private final ItemStack enchantedBook;
     private boolean cancelled;
 
     public McMMOPlayerSalvageCheckEvent(Player player, ItemStack salvageItem, ItemStack salvageResults, ItemStack enchantedBook) {

+ 1 - 1
src/main/java/com/gmail/nossr50/events/skills/unarmed/McMMOPlayerDisarmEvent.java

@@ -7,7 +7,7 @@ import org.bukkit.event.Cancellable;
 
 public class McMMOPlayerDisarmEvent extends McMMOPlayerSkillEvent implements Cancellable {
     private boolean cancelled;
-    private Player defender;
+    private final Player defender;
 
     public McMMOPlayerDisarmEvent(Player defender) {
         super(defender, PrimarySkillType.UNARMED);

+ 2 - 4
src/main/java/com/gmail/nossr50/listeners/InteractionManager.java

@@ -39,8 +39,7 @@ public class InteractionManager {
             subSkillList.add(abstractSubSkill);
 
         //Init ArrayList
-        if(interactRegister.get(abstractSubSkill.getInteractType()) == null)
-            interactRegister.put(abstractSubSkill.getInteractType(), new ArrayList<>());
+        interactRegister.computeIfAbsent(abstractSubSkill.getInteractType(), k -> new ArrayList<>());
 
         //Registration array reference
         ArrayList<Interaction> arrayRef = interactRegister.get(abstractSubSkill.getInteractType());
@@ -51,8 +50,7 @@ public class InteractionManager {
         String lowerCaseName = abstractSubSkill.getConfigKeyName().toLowerCase(Locale.ENGLISH);
 
         //Register in name map
-        if(subSkillNameMap.get(lowerCaseName) == null)
-            subSkillNameMap.put(lowerCaseName, abstractSubSkill);
+        subSkillNameMap.putIfAbsent(lowerCaseName, abstractSubSkill);
 
         mcMMO.p.getLogger().info("Registered subskill: "+ abstractSubSkill.getConfigKeyName());
     }

+ 1 - 1
src/main/java/com/gmail/nossr50/locale/LocaleLoader.java

@@ -20,7 +20,7 @@ public final class LocaleLoader {
     private static ResourceBundle filesystemBundle = null;
     private static ResourceBundle enBundle = null;
 
-    private LocaleLoader() {};
+    private LocaleLoader() {}
 
     public static String getString(String key) {
         return getString(key, (Object[]) null);

+ 1 - 2
src/main/java/com/gmail/nossr50/mcMMO.java

@@ -506,7 +506,6 @@ public class mcMMO extends JavaPlugin {
         new ChildConfig();
 
         List<Repairable> repairables = new ArrayList<Repairable>();
-        List<Salvageable> salvageables = new ArrayList<Salvageable>();
 
         if (Config.getInstance().getToolModsEnabled()) {
             new ToolConfigManager(this);
@@ -532,7 +531,7 @@ public class mcMMO extends JavaPlugin {
 
         // Load salvage configs, make manager and register them at this time
         SalvageConfigManager sManager = new SalvageConfigManager(this);
-        salvageables.addAll(sManager.getLoadedSalvageables());
+        List<Salvageable> salvageables = new ArrayList<Salvageable>(sManager.getLoadedSalvageables());
         salvageableManager = new SimpleSalvageableManager(salvageables.size());
         salvageableManager.registerSalvageables(salvageables);
     }

+ 3 - 3
src/main/java/com/gmail/nossr50/party/PartyManager.java

@@ -33,9 +33,9 @@ import java.util.Map.Entry;
 import java.util.UUID;
 
 public final class PartyManager {
-    private static String partiesFilePath = mcMMO.getFlatFileDirectory() + "parties.yml";
-    private static List<Party> parties = new ArrayList<Party>();
-    private static File partyFile = new File(partiesFilePath);
+    private static final String partiesFilePath = mcMMO.getFlatFileDirectory() + "parties.yml";
+    private static final List<Party> parties = new ArrayList<Party>();
+    private static final File partyFile = new File(partiesFilePath);
 
     private PartyManager() {}
 

+ 1 - 1
src/main/java/com/gmail/nossr50/runnables/MobHealthDisplayUpdaterTask.java

@@ -5,7 +5,7 @@ import org.bukkit.entity.LivingEntity;
 import org.bukkit.scheduler.BukkitRunnable;
 
 public class MobHealthDisplayUpdaterTask extends BukkitRunnable {
-    private LivingEntity target;
+    private final LivingEntity target;
 
     public MobHealthDisplayUpdaterTask(LivingEntity target) {
         this.target = target;

+ 3 - 3
src/main/java/com/gmail/nossr50/runnables/PistonTrackerTask.java

@@ -9,9 +9,9 @@ import org.bukkit.scheduler.BukkitRunnable;
 import java.util.List;
 
 public class PistonTrackerTask extends BukkitRunnable {
-    private List<Block> blocks;
-    private BlockFace direction;
-    private Block futureEmptyBlock;
+    private final List<Block> blocks;
+    private final BlockFace direction;
+    private final Block futureEmptyBlock;
 
     public PistonTrackerTask(List<Block> blocks, BlockFace direction, Block futureEmptyBlock) {
         this.blocks = blocks;

+ 3 - 3
src/main/java/com/gmail/nossr50/runnables/StickyPistonTrackerTask.java

@@ -7,9 +7,9 @@ import org.bukkit.block.BlockFace;
 import org.bukkit.scheduler.BukkitRunnable;
 
 public class StickyPistonTrackerTask extends BukkitRunnable {
-    private BlockFace direction;
-    private Block block;
-    private Block movedBlock;
+    private final BlockFace direction;
+    private final Block block;
+    private final Block movedBlock;
 
     public StickyPistonTrackerTask(BlockFace direction, Block block, Block movedBlock) {
         this.direction = direction;

+ 1 - 5
src/main/java/com/gmail/nossr50/runnables/backups/CleanBackupsTask.java

@@ -58,11 +58,7 @@ public class CleanBackupsTask extends BukkitRunnable {
                 continue;
             }
             else {
-                List<Integer> savedWeeks = savedYearsWeeks.get(year);
-                if (savedWeeks == null) {
-                    savedWeeks = new ArrayList<Integer>();
-                    savedYearsWeeks.put(year, savedWeeks);
-                }
+                List<Integer> savedWeeks = savedYearsWeeks.computeIfAbsent(year, k -> new ArrayList<Integer>());
 
                 if (!savedWeeks.contains(weekOfYear) && Config.getInstance().getKeepWeeklyPastMonth()) {
                     // Keep one backup of each week

+ 1 - 1
src/main/java/com/gmail/nossr50/runnables/commands/McScoreboardKeepTask.java

@@ -5,7 +5,7 @@ import org.bukkit.entity.Player;
 import org.bukkit.scheduler.BukkitRunnable;
 
 public class McScoreboardKeepTask extends BukkitRunnable {
-    private Player player;
+    private final Player player;
 
     public McScoreboardKeepTask(Player player) {
         this.player = player;

部分文件因为文件数量过多而无法显示