From 0c52b3016c224634b986ee17f88082e83794b2d3 Mon Sep 17 00:00:00 2001 From: GJ Date: Tue, 21 May 2013 10:02:09 -0400 Subject: [PATCH] We've got these functions, might as well use them. --- .../com/gmail/nossr50/api/ExperienceAPI.java | 6 +- .../database/FlatfileDatabaseManager.java | 6 +- .../nossr50/database/SQLDatabaseManager.java | 6 +- .../nossr50/datatypes/player/McMMOPlayer.java | 6 +- .../datatypes/player/PlayerProfile.java | 6 +- .../commands/McrankCommandDisplayTask.java | 4 +- .../nossr50/skills/child/ChildConfig.java | 60 +++++++++---------- .../gmail/nossr50/util/HardcoreManager.java | 12 +--- .../util/scoreboards/ScoreboardManager.java | 24 +++----- .../gmail/nossr50/util/spout/SpoutUtils.java | 6 +- 10 files changed, 47 insertions(+), 89 deletions(-) diff --git a/src/main/java/com/gmail/nossr50/api/ExperienceAPI.java b/src/main/java/com/gmail/nossr50/api/ExperienceAPI.java index 3d239ea79..8217584b9 100644 --- a/src/main/java/com/gmail/nossr50/api/ExperienceAPI.java +++ b/src/main/java/com/gmail/nossr50/api/ExperienceAPI.java @@ -506,11 +506,7 @@ public final class ExperienceAPI { int powerLevel = 0; PlayerProfile profile = getOfflineProfile(playerName); - for (SkillType type : SkillType.values()) { - if (type.isChildSkill()) { - continue; - } - + for (SkillType type : SkillType.nonChildSkills()) { powerLevel += profile.getSkillLevel(type); } diff --git a/src/main/java/com/gmail/nossr50/database/FlatfileDatabaseManager.java b/src/main/java/com/gmail/nossr50/database/FlatfileDatabaseManager.java index 0b0921e78..33d6f2102 100644 --- a/src/main/java/com/gmail/nossr50/database/FlatfileDatabaseManager.java +++ b/src/main/java/com/gmail/nossr50/database/FlatfileDatabaseManager.java @@ -294,11 +294,7 @@ public final class FlatfileDatabaseManager { Map skills = new HashMap(); - for (SkillType skill : SkillType.values()) { - if (skill.isChildSkill()) { - continue; - } - + for (SkillType skill : SkillType.nonChildSkills()) { skills.put(skill.name(), getPlayerRank(playerName, playerStatHash.get(skill))); } diff --git a/src/main/java/com/gmail/nossr50/database/SQLDatabaseManager.java b/src/main/java/com/gmail/nossr50/database/SQLDatabaseManager.java index b59fd9fdd..5c9dc55f6 100644 --- a/src/main/java/com/gmail/nossr50/database/SQLDatabaseManager.java +++ b/src/main/java/com/gmail/nossr50/database/SQLDatabaseManager.java @@ -415,11 +415,7 @@ public final class SQLDatabaseManager { if (checkConnected()) { try { - for (SkillType skillType : SkillType.values()) { - if (skillType.isChildSkill()) { - continue; - } - + for (SkillType skillType : SkillType.nonChildSkills()) { String skillName = skillType.name().toLowerCase(); String sql = "SELECT COUNT(*) AS rank FROM " + tablePrefix + "users JOIN " + tablePrefix + "skills ON user_id = id WHERE " + skillName + " > 0 " + "AND " + skillName + " > (SELECT " + skillName + " FROM " + tablePrefix + "users JOIN " + tablePrefix + "skills ON user_id = id " + diff --git a/src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java b/src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java index 36408f4f7..c8c45e270 100644 --- a/src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java +++ b/src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java @@ -441,11 +441,7 @@ public class McMMOPlayer { public int getPowerLevel() { int powerLevel = 0; - for (SkillType type : SkillType.values()) { - if (type.isChildSkill()) { - continue; - } - + for (SkillType type : SkillType.nonChildSkills()) { if (Permissions.skillEnabled(player, type)) { powerLevel += profile.getSkillLevel(type); } diff --git a/src/main/java/com/gmail/nossr50/datatypes/player/PlayerProfile.java b/src/main/java/com/gmail/nossr50/datatypes/player/PlayerProfile.java index c3c00aa3f..328e6f8e7 100644 --- a/src/main/java/com/gmail/nossr50/datatypes/player/PlayerProfile.java +++ b/src/main/java/com/gmail/nossr50/datatypes/player/PlayerProfile.java @@ -49,11 +49,7 @@ public class PlayerProfile { skillsDATS.put(abilityType, 0); } - for (SkillType skillType : SkillType.values()) { - if (skillType.isChildSkill()) { - continue; - } - + for (SkillType skillType : SkillType.nonChildSkills()) { skills.put(skillType, 0); skillsXp.put(skillType, 0F); } diff --git a/src/main/java/com/gmail/nossr50/runnables/commands/McrankCommandDisplayTask.java b/src/main/java/com/gmail/nossr50/runnables/commands/McrankCommandDisplayTask.java index d5c5053cc..f86752918 100644 --- a/src/main/java/com/gmail/nossr50/runnables/commands/McrankCommandDisplayTask.java +++ b/src/main/java/com/gmail/nossr50/runnables/commands/McrankCommandDisplayTask.java @@ -31,8 +31,8 @@ public class McrankCommandDisplayTask extends BukkitRunnable { sender.sendMessage(LocaleLoader.getString("Commands.mcrank.Heading")); sender.sendMessage(LocaleLoader.getString("Commands.mcrank.Player", playerName)); - for (SkillType skill : SkillType.values()) { - if (skill.isChildSkill() || (player != null && !Permissions.skillEnabled(player, skill))) { + for (SkillType skill : SkillType.nonChildSkills()) { + if (player != null && !Permissions.skillEnabled(player, skill)) { continue; } diff --git a/src/main/java/com/gmail/nossr50/skills/child/ChildConfig.java b/src/main/java/com/gmail/nossr50/skills/child/ChildConfig.java index 6f53ff422..c74b38112 100644 --- a/src/main/java/com/gmail/nossr50/skills/child/ChildConfig.java +++ b/src/main/java/com/gmail/nossr50/skills/child/ChildConfig.java @@ -19,44 +19,42 @@ public class ChildConfig extends AutoUpdateConfigLoader { protected void loadKeys() { config.setDefaults(YamlConfiguration.loadConfiguration(plugin.getResource("child.yml"))); - for (SkillType skill : SkillType.values()) { - if (skill.isChildSkill()) { - plugin.debug("Finding parents of " + skill.name()); + for (SkillType skill : SkillType.childSkills()) { + plugin.debug("Finding parents of " + skill.name()); - List parentNames = config.getStringList(StringUtils.getCapitalized(skill.name())); - EnumSet parentSkills = EnumSet.noneOf(SkillType.class); - boolean useDefaults = false; // If we had an error we back out and use defaults + List parentNames = config.getStringList(StringUtils.getCapitalized(skill.name())); + EnumSet parentSkills = EnumSet.noneOf(SkillType.class); + boolean useDefaults = false; // If we had an error we back out and use defaults - for (String name : parentNames) { - try { - SkillType parentSkill = Enum.valueOf(SkillType.class, name.toUpperCase()); - FamilyTree.enforceNotChildSkill(parentSkill); - parentSkills.add(parentSkill); - } - catch (IllegalArgumentException ex) { - plugin.getLogger().warning(name + " is not a valid skill type, or is a child skill!"); - useDefaults = true; - break; - } + for (String name : parentNames) { + try { + SkillType parentSkill = SkillType.valueOf(name.toUpperCase()); + FamilyTree.enforceNotChildSkill(parentSkill); + parentSkills.add(parentSkill); } - - if (useDefaults) { - parentSkills.clear(); - for (String name : config.getDefaults().getStringList(StringUtils.getCapitalized(skill.name()))) { - /* We do less checks in here because it's from inside our jar. - * If they're dedicated enough to have modified it, they can have the errors it may produce. - * Alternatively, this can be used to allow child skills to be parent skills, provided there are no circular dependencies this is an advanced sort of configuration. - */ - parentSkills.add(SkillType.valueOf(name.toUpperCase())); - } + catch (IllegalArgumentException ex) { + plugin.getLogger().warning(name + " is not a valid skill type, or is a child skill!"); + useDefaults = true; + break; } + } - // Register them - for (SkillType parentSkill : parentSkills) { - plugin.debug("Registering " + parentSkill.name() + " as parent of " + skill.name()); - FamilyTree.registerParent(skill, parentSkill); + if (useDefaults) { + parentSkills.clear(); + for (String name : config.getDefaults().getStringList(StringUtils.getCapitalized(skill.name()))) { + /* We do less checks in here because it's from inside our jar. + * If they're dedicated enough to have modified it, they can have the errors it may produce. + * Alternatively, this can be used to allow child skills to be parent skills, provided there are no circular dependencies this is an advanced sort of configuration. + */ + parentSkills.add(SkillType.valueOf(name.toUpperCase())); } } + + // Register them + for (SkillType parentSkill : parentSkills) { + plugin.debug("Registering " + parentSkill.name() + " as parent of " + skill.name()); + FamilyTree.registerParent(skill, parentSkill); + } } FamilyTree.closeRegistration(); diff --git a/src/main/java/com/gmail/nossr50/util/HardcoreManager.java b/src/main/java/com/gmail/nossr50/util/HardcoreManager.java index 8170b8b3a..cebc27388 100644 --- a/src/main/java/com/gmail/nossr50/util/HardcoreManager.java +++ b/src/main/java/com/gmail/nossr50/util/HardcoreManager.java @@ -21,11 +21,7 @@ public final class HardcoreManager { PlayerProfile playerProfile = UserManager.getPlayer(player).getProfile(); int totalLost = 0; - for (SkillType skillType : SkillType.values()) { - if (skillType.isChildSkill()) { - continue; - } - + for (SkillType skillType : SkillType.nonChildSkills()) { int playerSkillLevel = playerProfile.getSkillLevel(skillType); if (playerSkillLevel <= 0) { @@ -52,11 +48,7 @@ public final class HardcoreManager { PlayerProfile victimProfile = UserManager.getPlayer(victim).getProfile(); int totalStolen = 0; - for (SkillType skillType : SkillType.values()) { - if (skillType.isChildSkill()) { - continue; - } - + for (SkillType skillType : SkillType.nonChildSkills()) { int killerSkillLevel = killerProfile.getSkillLevel(skillType); int victimSkillLevel = victimProfile.getSkillLevel(skillType); diff --git a/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardManager.java b/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardManager.java index aa9ab263f..f6d0b167d 100644 --- a/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardManager.java +++ b/src/main/java/com/gmail/nossr50/util/scoreboards/ScoreboardManager.java @@ -182,8 +182,8 @@ public class ScoreboardManager { PlayerProfile profile = mcMMOPlayer.getProfile(); Server server = mcMMO.p.getServer(); - for (SkillType skill : SkillType.values()) { - if (skill.isChildSkill() || !Permissions.skillEnabled(player, skill)) { + for (SkillType skill : SkillType.nonChildSkills()) { + if (!Permissions.skillEnabled(player, skill)) { continue; } @@ -201,8 +201,8 @@ public class ScoreboardManager { Map skills = Config.getInstance().getUseMySQL() ? SQLDatabaseManager.readSQLRank(playerName) : FlatfileDatabaseManager.getPlayerRanks(playerName); - for (SkillType skill : SkillType.values()) { - if (skill.isChildSkill() || !Permissions.skillEnabled(player, skill)) { + for (SkillType skill : SkillType.nonChildSkills()) { + if (!Permissions.skillEnabled(player, skill)) { continue; } @@ -228,11 +228,7 @@ public class ScoreboardManager { Map skills = Config.getInstance().getUseMySQL() ? SQLDatabaseManager.readSQLRank(targetName) : FlatfileDatabaseManager.getPlayerRanks(targetName); - for (SkillType skill : SkillType.values()) { - if (skill.isChildSkill()) { - continue; - } - + for (SkillType skill : SkillType.nonChildSkills()) { rank = skills.get(skill.name()); if (rank != null) { @@ -257,8 +253,8 @@ public class ScoreboardManager { int powerLevel = 0; int skillLevel; - for (SkillType skill : SkillType.values()) { - if (skill.isChildSkill() || !Permissions.skillEnabled(target, skill)) { + for (SkillType skill : SkillType.nonChildSkills()) { + if (!Permissions.skillEnabled(target, skill)) { continue; } @@ -277,11 +273,7 @@ public class ScoreboardManager { int powerLevel = 0; int skillLevel; - for (SkillType skill : SkillType.values()) { - if (skill.isChildSkill()) { - continue; - } - + for (SkillType skill : SkillType.nonChildSkills()) { skillLevel = targetProfile.getSkillLevel(skill); objective.getScore(server.getOfflinePlayer(SkillUtils.getSkillName(skill))).setScore(skillLevel); powerLevel += skillLevel; diff --git a/src/main/java/com/gmail/nossr50/util/spout/SpoutUtils.java b/src/main/java/com/gmail/nossr50/util/spout/SpoutUtils.java index 3e6e096fe..fb394bdad 100644 --- a/src/main/java/com/gmail/nossr50/util/spout/SpoutUtils.java +++ b/src/main/java/com/gmail/nossr50/util/spout/SpoutUtils.java @@ -204,11 +204,7 @@ public class SpoutUtils { } // Standard XP Icons - for (SkillType skillType : SkillType.values()) { - if (skillType.isChildSkill()) { - continue; - } - + for (SkillType skillType : SkillType.nonChildSkills()) { String skillName = StringUtils.getCapitalized(skillType.toString()); files.add(writeFile(skillName + ".png", hudStandardDirectory));