Improved PlayerManager's getPlayerByCreatureFirstName function

This commit is contained in:
Obique
2015-02-28 13:39:45 -06:00
committed by Obique
parent 6f78aa6aa7
commit 9581c575c2
+7 -2
View File
@@ -109,13 +109,18 @@ public class PlayerManager extends Manager {
}
public Player getPlayerByCreatureFirstName(String name) {
if (name == null || name.isEmpty())
return null;
name = name.trim().toLowerCase(Locale.ENGLISH);
synchronized (players) {
for (Player p : players.values()) {
if (p.getCreatureObject() != null) {
String cName = p.getCharacterName().toLowerCase(Locale.ENGLISH);
if (cName.startsWith(name) && (cName.length() == name.length() || cName.charAt(name.length()) == ' ')) {
if (cName.equals(name))
return p;
int spaceIndex = cName.indexOf(' ');
if (spaceIndex != -1 && cName.substring(0, spaceIndex).equals(name))
return p;
}
}
}
}