Better way to get the HUD type.

This commit is contained in:
GJ 2013-04-04 23:15:37 -04:00
parent 431429a29c
commit 25dfa6d34d
3 changed files with 18 additions and 32 deletions

View File

@ -14,16 +14,15 @@ public class MchudCommand extends SpoutCommand {
@Override
protected boolean oneArgument(Command command, CommandSender sender, String[] args) {
for (HudType hudType : HudType.values()) {
if (hudType.toString().equalsIgnoreCase(args[0])) {
playerProfile.setHudType(hudType);
spoutHud.initializeXpBar();
spoutHud.updateXpBar();
return true;
}
try {
playerProfile.setHudType(HudType.valueOf(args[0].toUpperCase().trim()));
spoutHud.initializeXpBar();
spoutHud.updateXpBar();
return true;
}
catch (IllegalArgumentException ex) {
sender.sendMessage(LocaleLoader.getString("Commands.mchud.Invalid"));
return true;
}
sender.sendMessage(LocaleLoader.getString("Commands.mchud.Invalid"));
return true;
}
}

View File

@ -6,11 +6,9 @@ import com.gmail.nossr50.datatypes.spout.huds.HudType;
public class SpoutConfig extends ConfigLoader {
private static SpoutConfig instance;
public HudType defaultHudType;
private SpoutConfig() {
super("spout.yml");
loadKeys();
}
public static SpoutConfig getInstance() {
@ -24,17 +22,14 @@ public class SpoutConfig extends ConfigLoader {
@Override
protected void loadKeys() {
// Setup default HUD
String temp = config.getString("Spout.HUD.Default", "STANDARD");
}
for (HudType hudType : HudType.values()) {
if (hudType.toString().equalsIgnoreCase(temp)) {
defaultHudType = hudType;
break;
}
public HudType getDefaultHudType() {
try {
return HudType.valueOf(config.getString("Spout.HUD.Default", "STANDARD").toUpperCase().trim());
}
if (defaultHudType == null) {
defaultHudType = HudType.STANDARD;
catch (IllegalArgumentException ex) {
return HudType.STANDARD;
}
}

View File

@ -46,7 +46,7 @@ public class PlayerProfile {
mobHealthbarType = Config.getInstance().getMobHealthbarDefault();
if (mcMMO.spoutEnabled) {
hudType = SpoutConfig.getInstance().defaultHudType;
hudType = SpoutConfig.getInstance().getDefaultHudType();
}
else {
hudType = HudType.DISABLED;
@ -94,11 +94,7 @@ public class PlayerProfile {
DatabaseManager.write("INSERT INTO " + tablePrefix + "huds (user_id) VALUES (" + userId + ")");
}
else {
for (HudType type : HudType.values()) {
if (type.toString().equalsIgnoreCase(huds.get(1).get(0))) {
hudType = type;
}
}
hudType = HudType.valueOf(huds.get(1).get(0));
}
mobHealthbarType = MobHealthbarType.valueOf(DatabaseManager.read("SELECT mobhealthbar FROM " + tablePrefix + "huds WHERE user_id = " + userId).get(1).get(0));
@ -312,11 +308,7 @@ public class PlayerProfile {
}
if (character.length > 33) {
for (HudType type : HudType.values()) {
if (type.toString().equalsIgnoreCase(character[33])) {
hudType = type;
}
}
hudType = HudType.valueOf(character[33]);
}
if (character.length > 34) {