allowed partial name matching

By: Tahg <tahgtahv@gmail.com>
This commit is contained in:
CraftBukkit/Spigot 2011-01-17 15:50:37 -05:00
parent 49d67847a7
commit 9f88190ab1

View file

@ -17,12 +17,12 @@ import org.bukkit.plugin.SimpleCommandManager;
import org.bukkit.plugin.SimplePluginManager; import org.bukkit.plugin.SimplePluginManager;
import org.bukkit.plugin.java.JavaPluginLoader; import org.bukkit.plugin.java.JavaPluginLoader;
public final class CraftServer implements Server { public final class CraftServer implements Server
{
private final String serverName = "Craftbukkit"; private final String serverName = "Craftbukkit";
private final String serverVersion = "1.2_01"; private final String serverVersion = "1.2_01";
private final PluginManager pluginManager = new SimplePluginManager(this); private final PluginManager pluginManager = new SimplePluginManager(this);
private final CommandManager commandManager = new SimpleCommandManager(); private final CommandManager commandManager = new SimpleCommandManager();
protected final MinecraftServer console; protected final MinecraftServer console;
protected final ServerConfigurationManager server; protected final ServerConfigurationManager server;
@ -77,13 +77,20 @@ public final class CraftServer implements Server {
public Player getPlayer(final String name) { public Player getPlayer(final String name) {
Player[] players = getOnlinePlayers(); Player[] players = getOnlinePlayers();
Player found = null;
String lowerName = name.toLowerCase();
int delta = Integer.MAX_VALUE;
for (Player player : players) { for (Player player : players) {
if (player.getName().equalsIgnoreCase(name)) { if (player.getName().toLowerCase().startsWith(lowerName)) {
return player; int curDelta = player.getName().length() - lowerName.length();
if(curDelta == 0) break;
if (curDelta < delta) {
found = player;
delta = curDelta;
} }
} }
}
return null; return found;
} }
public int broadcastMessage(String message) { public int broadcastMessage(String message) {