Prechádzať zdrojové kódy

ACTUALLY fix our CME.

GJ 12 rokov pred
rodič
commit
0118346aaf

+ 9 - 2
src/main/java/com/gmail/nossr50/runnables/party/PartyAutoKickTask.java

@@ -1,7 +1,9 @@
 package com.gmail.nossr50.runnables.party;
 
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.Iterator;
+import java.util.Map.Entry;
 
 import org.bukkit.OfflinePlayer;
 import org.bukkit.scheduler.BukkitRunnable;
@@ -17,6 +19,8 @@ public class PartyAutoKickTask extends BukkitRunnable {
     }
 
     private void updatePartyMembers() {
+        HashMap<OfflinePlayer, Party> toRemove = new HashMap<OfflinePlayer, Party>();
+
         long currentTime = System.currentTimeMillis();
         long kickTime = 24L * 60L * 60L * 1000L * Config.getInstance().getAutoPartyKickTime();
 
@@ -24,11 +28,14 @@ public class PartyAutoKickTask extends BukkitRunnable {
             Party party = partyIterator.next();
 
             for (OfflinePlayer member : new ArrayList<OfflinePlayer>(party.getMembers())) {
-
                 if (currentTime - member.getLastPlayed() > kickTime) {
-                    PartyManager.removeFromParty(member, party);
+                    toRemove.put(member, party);
                 }
             }
         }
+
+        for (Entry<OfflinePlayer, Party> entry : toRemove.entrySet()) {
+            PartyManager.removeFromParty(entry.getKey(), entry.getValue());
+        }
     }
 }