UUID support for parties

This commit is contained in:
TfT_02
2014-07-12 19:44:47 +02:00
parent d62c68a490
commit 2dd8e719c8
14 changed files with 264 additions and 79 deletions

View File

@ -4,6 +4,7 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map.Entry;
import java.util.UUID;
import org.bukkit.OfflinePlayer;
import org.bukkit.scheduler.BukkitRunnable;
@ -19,21 +20,21 @@ public class PartyAutoKickTask extends BukkitRunnable {
@Override
public void run() {
HashMap<OfflinePlayer, Party> toRemove = new HashMap<OfflinePlayer, Party>();
List<String> processedPlayers = new ArrayList<String>();
List<UUID> processedPlayers = new ArrayList<UUID>();
long currentTime = System.currentTimeMillis();
for (Party party : PartyManager.getParties()) {
for (String memberName : party.getMembers()) {
OfflinePlayer member = mcMMO.p.getServer().getOfflinePlayer(memberName);
boolean isProcessed = processedPlayers.contains(memberName);
for (UUID memberUniqueId : party.getMembers().keySet()) {
OfflinePlayer member = mcMMO.p.getServer().getOfflinePlayer(memberUniqueId);
boolean isProcessed = processedPlayers.contains(memberUniqueId);
if ((!member.isOnline() && (currentTime - member.getLastPlayed() > KICK_TIME)) || isProcessed) {
toRemove.put(member, party);
}
if (!isProcessed) {
processedPlayers.add(memberName);
processedPlayers.add(memberUniqueId);
}
}
}

View File

@ -31,7 +31,7 @@ public class PartyChatTask extends BukkitRunnable {
@Override
public void run() {
if (Config.getInstance().getPartyChatColorLeaderName() && senderName.equalsIgnoreCase(party.getLeader())) {
if (Config.getInstance().getPartyChatColorLeaderName() && senderName.equalsIgnoreCase(party.getLeader().getPlayerName())) {
message = message.replaceFirst(Pattern.quote(displayName), ChatColor.GOLD + Matcher.quoteReplacement(displayName) + ChatColor.RESET);
}