diff --git a/Changelog.txt b/Changelog.txt
index 0696b54d7..2cb3b1d80 100644
--- a/Changelog.txt
+++ b/Changelog.txt
@@ -1,3 +1,8 @@
+Version 2.1.82
+ Added proper error handling when loading parties file
+ Updated Chinese locale (thanks to the user named 89009332 from github)
+ Added some redundancy checks when loading profiles (NPC checks to be specific)
+
Version 2.1.81
Fixed a bug where Arrow Deflect would never trigger outside of PVP
Fixed a bug where failing to salvage enchantments incorrectly colored the text
diff --git a/pom.xml b/pom.xml
index 65095a77f..91db71530 100755
--- a/pom.xml
+++ b/pom.xml
@@ -2,7 +2,7 @@
4.0.0
com.gmail.nossr50.mcMMO
mcMMO
- 2.1.81
+ 2.1.82-SNAPSHOT
mcMMO
https://github.com/mcMMO-Dev/mcMMO
diff --git a/src/main/java/com/gmail/nossr50/party/PartyManager.java b/src/main/java/com/gmail/nossr50/party/PartyManager.java
index 33913f13c..f27390613 100644
--- a/src/main/java/com/gmail/nossr50/party/PartyManager.java
+++ b/src/main/java/com/gmail/nossr50/party/PartyManager.java
@@ -591,45 +591,53 @@ public final class PartyManager {
return;
}
- YamlConfiguration partiesFile = YamlConfiguration.loadConfiguration(partyFile);
+ try {
+ YamlConfiguration partiesFile;
+ partiesFile = YamlConfiguration.loadConfiguration(partyFile);
- ArrayList hasAlly = new ArrayList();
+ ArrayList hasAlly = new ArrayList();
- for (String partyName : partiesFile.getConfigurationSection("").getKeys(false)) {
- Party party = new Party(partyName);
+ for (String partyName : partiesFile.getConfigurationSection("").getKeys(false)) {
+ Party party = new Party(partyName);
- String[] leaderSplit = partiesFile.getString(partyName + ".Leader").split("[|]");
- party.setLeader(new PartyLeader(UUID.fromString(leaderSplit[0]), leaderSplit[1]));
- party.setPassword(partiesFile.getString(partyName + ".Password"));
- party.setLocked(partiesFile.getBoolean(partyName + ".Locked"));
- party.setLevel(partiesFile.getInt(partyName + ".Level"));
- party.setXp(partiesFile.getInt(partyName + ".Xp"));
+ String[] leaderSplit = partiesFile.getString(partyName + ".Leader").split("[|]");
+ party.setLeader(new PartyLeader(UUID.fromString(leaderSplit[0]), leaderSplit[1]));
+ party.setPassword(partiesFile.getString(partyName + ".Password"));
+ party.setLocked(partiesFile.getBoolean(partyName + ".Locked"));
+ party.setLevel(partiesFile.getInt(partyName + ".Level"));
+ party.setXp(partiesFile.getInt(partyName + ".Xp"));
- if (partiesFile.getString(partyName + ".Ally") != null) {
- hasAlly.add(party);
+ if (partiesFile.getString(partyName + ".Ally") != null) {
+ hasAlly.add(party);
+ }
+
+ party.setXpShareMode(ShareMode.getShareMode(partiesFile.getString(partyName + ".ExpShareMode", "NONE")));
+ party.setItemShareMode(ShareMode.getShareMode(partiesFile.getString(partyName + ".ItemShareMode", "NONE")));
+
+ for (ItemShareType itemShareType : ItemShareType.values()) {
+ party.setSharingDrops(itemShareType, partiesFile.getBoolean(partyName + ".ItemShareType." + itemShareType.toString(), true));
+ }
+
+ LinkedHashMap members = party.getMembers();
+
+ for (String memberEntry : partiesFile.getStringList(partyName + ".Members")) {
+ String[] memberSplit = memberEntry.split("[|]");
+ members.put(UUID.fromString(memberSplit[0]), memberSplit[1]);
+ }
+
+ parties.add(party);
}
- party.setXpShareMode(ShareMode.getShareMode(partiesFile.getString(partyName + ".ExpShareMode", "NONE")));
- party.setItemShareMode(ShareMode.getShareMode(partiesFile.getString(partyName + ".ItemShareMode", "NONE")));
+ mcMMO.p.debug("Loaded (" + parties.size() + ") Parties...");
- for (ItemShareType itemShareType : ItemShareType.values()) {
- party.setSharingDrops(itemShareType, partiesFile.getBoolean(partyName + ".ItemShareType." + itemShareType.toString(), true));
+ for (Party party : hasAlly) {
+ party.setAlly(PartyManager.getParty(partiesFile.getString(party.getName() + ".Ally")));
}
- LinkedHashMap members = party.getMembers();
-
- for (String memberEntry : partiesFile.getStringList(partyName + ".Members")) {
- String[] memberSplit = memberEntry.split("[|]");
- members.put(UUID.fromString(memberSplit[0]), memberSplit[1]);
- }
-
- parties.add(party);
+ } catch (Exception e) {
+ e.printStackTrace();
}
- mcMMO.p.debug("Loaded (" + parties.size() + ") Parties...");
- for (Party party : hasAlly) {
- party.setAlly(PartyManager.getParty(partiesFile.getString(party.getName() + ".Ally")));
- }
}
/**