mirror of
				https://github.com/mcMMO-Dev/mcMMO.git
				synced 2025-11-03 18:43:43 +01:00 
			
		
		
		
	Don't provide direct access to the players map.
This commit is contained in:
		@@ -57,7 +57,7 @@ public class KrakenCommand implements TabExecutor {
 | 
				
			|||||||
    public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
 | 
					    public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
 | 
				
			||||||
        switch (args.length) {
 | 
					        switch (args.length) {
 | 
				
			||||||
            case 1:
 | 
					            case 1:
 | 
				
			||||||
                Set<String> playerNames = UserManager.getPlayers().keySet();
 | 
					                Set<String> playerNames = UserManager.getPlayerNames();
 | 
				
			||||||
                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
 | 
					                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
 | 
				
			||||||
            default:
 | 
					            default:
 | 
				
			||||||
                return ImmutableList.of();
 | 
					                return ImmutableList.of();
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -70,7 +70,7 @@ public abstract class ToggleCommand implements TabExecutor {
 | 
				
			|||||||
    public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
 | 
					    public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
 | 
				
			||||||
        switch (args.length) {
 | 
					        switch (args.length) {
 | 
				
			||||||
            case 1:
 | 
					            case 1:
 | 
				
			||||||
                Set<String> playerNames = UserManager.getPlayers().keySet();
 | 
					                Set<String> playerNames = UserManager.getPlayerNames();
 | 
				
			||||||
                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
 | 
					                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
 | 
				
			||||||
            default:
 | 
					            default:
 | 
				
			||||||
                return ImmutableList.of();
 | 
					                return ImmutableList.of();
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -43,7 +43,7 @@ public class McremoveCommand implements TabExecutor {
 | 
				
			|||||||
    public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
 | 
					    public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
 | 
				
			||||||
        switch (args.length) {
 | 
					        switch (args.length) {
 | 
				
			||||||
            case 1:
 | 
					            case 1:
 | 
				
			||||||
                Set<String> playerNames = UserManager.getPlayers().keySet();
 | 
					                Set<String> playerNames = UserManager.getPlayerNames();
 | 
				
			||||||
                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
 | 
					                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
 | 
				
			||||||
            default:
 | 
					            default:
 | 
				
			||||||
                return ImmutableList.of();
 | 
					                return ImmutableList.of();
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -97,7 +97,7 @@ public abstract class ExperienceCommand implements TabExecutor {
 | 
				
			|||||||
    public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
 | 
					    public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
 | 
				
			||||||
        switch (args.length) {
 | 
					        switch (args.length) {
 | 
				
			||||||
            case 1:
 | 
					            case 1:
 | 
				
			||||||
                Set<String> playerNames = UserManager.getPlayers().keySet();
 | 
					                Set<String> playerNames = UserManager.getPlayerNames();
 | 
				
			||||||
                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
 | 
					                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
 | 
				
			||||||
            case 2:
 | 
					            case 2:
 | 
				
			||||||
                return StringUtil.copyPartialMatches(args[1], SkillType.SKILL_NAMES, new ArrayList<String>(SkillType.SKILL_NAMES.size()));
 | 
					                return StringUtil.copyPartialMatches(args[1], SkillType.SKILL_NAMES, new ArrayList<String>(SkillType.SKILL_NAMES.size()));
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -176,7 +176,7 @@ public class PartyCommand implements TabExecutor {
 | 
				
			|||||||
                    case INVITE:
 | 
					                    case INVITE:
 | 
				
			||||||
                    case KICK:
 | 
					                    case KICK:
 | 
				
			||||||
                    case OWNER:
 | 
					                    case OWNER:
 | 
				
			||||||
                        Set<String> playerNames = UserManager.getPlayers().keySet();
 | 
					                        Set<String> playerNames = UserManager.getPlayerNames();
 | 
				
			||||||
                        return StringUtil.copyPartialMatches(args[1], playerNames, new ArrayList<String>(playerNames.size()));
 | 
					                        return StringUtil.copyPartialMatches(args[1], playerNames, new ArrayList<String>(playerNames.size()));
 | 
				
			||||||
                    case EXPSHARE:
 | 
					                    case EXPSHARE:
 | 
				
			||||||
                        return StringUtil.copyPartialMatches(args[1], EXPSHARE_COMPLETIONS, new ArrayList<String>(EXPSHARE_COMPLETIONS.size()));
 | 
					                        return StringUtil.copyPartialMatches(args[1], EXPSHARE_COMPLETIONS, new ArrayList<String>(EXPSHARE_COMPLETIONS.size()));
 | 
				
			||||||
@@ -191,7 +191,7 @@ public class PartyCommand implements TabExecutor {
 | 
				
			|||||||
                        List<String> matches = StringUtil.copyPartialMatches(args[1], PtpCommand.TELEPORT_SUBCOMMANDS, new ArrayList<String>(PtpCommand.TELEPORT_SUBCOMMANDS.size()));
 | 
					                        List<String> matches = StringUtil.copyPartialMatches(args[1], PtpCommand.TELEPORT_SUBCOMMANDS, new ArrayList<String>(PtpCommand.TELEPORT_SUBCOMMANDS.size()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                        if (matches.size() == 0) {
 | 
					                        if (matches.size() == 0) {
 | 
				
			||||||
                            playerNames = UserManager.getPlayers().keySet();
 | 
					                            playerNames = UserManager.getPlayerNames();
 | 
				
			||||||
                            return StringUtil.copyPartialMatches(args[1], playerNames, new ArrayList<String>(playerNames.size()));
 | 
					                            return StringUtil.copyPartialMatches(args[1], playerNames, new ArrayList<String>(playerNames.size()));
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -102,7 +102,7 @@ public class PtpCommand implements TabExecutor {
 | 
				
			|||||||
                List<String> matches = StringUtil.copyPartialMatches(args[0], TELEPORT_SUBCOMMANDS, new ArrayList<String>(TELEPORT_SUBCOMMANDS.size()));
 | 
					                List<String> matches = StringUtil.copyPartialMatches(args[0], TELEPORT_SUBCOMMANDS, new ArrayList<String>(TELEPORT_SUBCOMMANDS.size()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                if (matches.size() == 0) {
 | 
					                if (matches.size() == 0) {
 | 
				
			||||||
                    Set<String> playerNames = UserManager.getPlayers().keySet();
 | 
					                    Set<String> playerNames = UserManager.getPlayerNames();
 | 
				
			||||||
                    return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
 | 
					                    return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -103,7 +103,7 @@ public class InspectCommand implements TabExecutor {
 | 
				
			|||||||
    public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
 | 
					    public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
 | 
				
			||||||
        switch (args.length) {
 | 
					        switch (args.length) {
 | 
				
			||||||
            case 1:
 | 
					            case 1:
 | 
				
			||||||
                Set<String> playerNames = UserManager.getPlayers().keySet();
 | 
					                Set<String> playerNames = UserManager.getPlayerNames();
 | 
				
			||||||
                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
 | 
					                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
 | 
				
			||||||
            default:
 | 
					            default:
 | 
				
			||||||
                return ImmutableList.of();
 | 
					                return ImmutableList.of();
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -82,7 +82,7 @@ public class McrankCommand implements TabExecutor {
 | 
				
			|||||||
    public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
 | 
					    public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
 | 
				
			||||||
        switch (args.length) {
 | 
					        switch (args.length) {
 | 
				
			||||||
            case 1:
 | 
					            case 1:
 | 
				
			||||||
                Set<String> playerNames = UserManager.getPlayers().keySet();
 | 
					                Set<String> playerNames = UserManager.getPlayerNames();
 | 
				
			||||||
                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
 | 
					                return StringUtil.copyPartialMatches(args[0], playerNames, new ArrayList<String>(playerNames.size()));
 | 
				
			||||||
            default:
 | 
					            default:
 | 
				
			||||||
                return ImmutableList.of();
 | 
					                return ImmutableList.of();
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,7 +14,7 @@ public class SaveTimerTask extends BukkitRunnable {
 | 
				
			|||||||
        // All player data will be saved periodically through this
 | 
					        // All player data will be saved periodically through this
 | 
				
			||||||
        int count = 1;
 | 
					        int count = 1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        for (McMMOPlayer mcMMOPlayer : UserManager.getPlayers().values()) {
 | 
					        for (McMMOPlayer mcMMOPlayer : UserManager.getPlayers()) {
 | 
				
			||||||
            new PlayerProfileSaveTask(mcMMOPlayer.getProfile()).runTaskLater(mcMMO.p, count);
 | 
					            new PlayerProfileSaveTask(mcMMOPlayer.getProfile()).runTaskLater(mcMMO.p, count);
 | 
				
			||||||
            count++;
 | 
					            count++;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,8 +1,10 @@
 | 
				
			|||||||
package com.gmail.nossr50.util.player;
 | 
					package com.gmail.nossr50.util.player;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.Collection;
 | 
				
			||||||
import java.util.HashMap;
 | 
					import java.util.HashMap;
 | 
				
			||||||
import java.util.List;
 | 
					import java.util.List;
 | 
				
			||||||
import java.util.Map;
 | 
					import java.util.Map;
 | 
				
			||||||
 | 
					import java.util.Set;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import org.bukkit.OfflinePlayer;
 | 
					import org.bukkit.OfflinePlayer;
 | 
				
			||||||
import org.bukkit.entity.Player;
 | 
					import org.bukkit.entity.Player;
 | 
				
			||||||
@@ -61,8 +63,12 @@ public final class UserManager {
 | 
				
			|||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public static Map<String, McMMOPlayer> getPlayers() {
 | 
					    public static Set<String> getPlayerNames() {
 | 
				
			||||||
        return players;
 | 
					        return players.keySet();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public static Collection<McMMOPlayer> getPlayers() {
 | 
				
			||||||
 | 
					        return players.values();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user