summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsnowleo <schneeleo@gmail.com>2011-11-20 16:43:38 +0100
committersnowleo <schneeleo@gmail.com>2011-11-20 16:43:38 +0100
commitdacad38dd95e851cc6387bcb2a3b57204b4dee9b (patch)
treedd01534436a0258b88c159dfc9a39ff0d4b3aca3
parent26590fa7b8c9aa3e83a96be697c97fb54091b706 (diff)
downloadEssentials-dacad38dd95e851cc6387bcb2a3b57204b4dee9b.tar
Essentials-dacad38dd95e851cc6387bcb2a3b57204b4dee9b.tar.gz
Essentials-dacad38dd95e851cc6387bcb2a3b57204b4dee9b.tar.lz
Essentials-dacad38dd95e851cc6387bcb2a3b57204b4dee9b.tar.xz
Essentials-dacad38dd95e851cc6387bcb2a3b57204b4dee9b.zip
Fix long prefix breaking setPlayerListName(), because they are too long.
If Essentials detects, that the player name would be too long with prefix and suffix to fit in the player list, it will only update the name without prefix and suffix but with nickname and opcolor.
-rw-r--r--Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java8
-rw-r--r--Essentials/src/com/earth2me/essentials/User.java13
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandnick.java4
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandwhois.java6
4 files changed, 18 insertions, 13 deletions
diff --git a/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java b/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java
index 2768b566e..e09eb9679 100644
--- a/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java
+++ b/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java
@@ -39,7 +39,7 @@ public class EssentialsPlayerListener extends PlayerListener
updateCompass(user);
if (ess.getSettings().changeDisplayName())
{
- user.setDisplayNick(user.getNick());
+ user.setDisplayNick();
}
}
@@ -65,7 +65,7 @@ public class EssentialsPlayerListener extends PlayerListener
user.updateActivity(true);
if (ess.getSettings().changeDisplayName())
{
- user.setDisplayNick(user.getNick());
+ user.setDisplayNick();
}
}
@@ -155,7 +155,7 @@ public class EssentialsPlayerListener extends PlayerListener
if (ess.getSettings().changeDisplayName())
{
- user.setDisplayNick(user.getNick());
+ user.setDisplayNick();
}
user.setLastLoginAddress(user.getAddress().getAddress().getHostAddress());
user.updateActivity(false);
@@ -248,7 +248,7 @@ public class EssentialsPlayerListener extends PlayerListener
final User user = ess.getUser(event.getPlayer());
if (ess.getSettings().changeDisplayName())
{
- user.setDisplayNick(user.getNick());
+ user.setDisplayNick();
}
updateCompass(user);
}
diff --git a/Essentials/src/com/earth2me/essentials/User.java b/Essentials/src/com/earth2me/essentials/User.java
index f4ded533c..8a5dd3138 100644
--- a/Essentials/src/com/earth2me/essentials/User.java
+++ b/Essentials/src/com/earth2me/essentials/User.java
@@ -235,7 +235,7 @@ public class User extends UserData implements Comparable<User>, IReplyTo, IUser
return teleportRequestHere;
}
- public String getNick()
+ public String getNick(boolean addprefixsuffix)
{
final StringBuilder nickname = new StringBuilder();
final String nick = getNickname();
@@ -259,7 +259,7 @@ public class User extends UserData implements Comparable<User>, IReplyTo, IUser
}
}
- if (ess.getSettings().addPrefixSuffix())
+ if (addprefixsuffix && ess.getSettings().addPrefixSuffix())
{
if (!ess.getSettings().disablePrefix())
{
@@ -284,11 +284,16 @@ public class User extends UserData implements Comparable<User>, IReplyTo, IUser
return nickname.toString();
}
- public void setDisplayNick(String name)
+ public void setDisplayNick()
{
+ String name = getNick(true);
setDisplayName(name);
if (name.length() > 16)
{
+ name = getNick(false);
+ }
+ if (name.length() > 16)
+ {
name = name.substring(0, name.charAt(15) == '§' ? 15 : 16);
}
try
@@ -306,7 +311,7 @@ public class User extends UserData implements Comparable<User>, IReplyTo, IUser
{
if (!(base instanceof OfflinePlayer) && ess.getSettings().changeDisplayName())
{
- setDisplayNick(getNick());
+ setDisplayNick();
}
return super.getDisplayName() == null ? super.getName() : super.getDisplayName();
}
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandnick.java b/Essentials/src/com/earth2me/essentials/commands/Commandnick.java
index e3e9d0b67..fa46cf3d4 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandnick.java
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandnick.java
@@ -61,8 +61,8 @@ public class Commandnick extends EssentialsCommand
}
else if ("off".equalsIgnoreCase(nick) || target.getName().equalsIgnoreCase(nick))
{
- target.setDisplayNick(target.getName());
target.setNickname(null);
+ target.setDisplayNick();
target.sendMessage(Util.i18n("nickNoMore"));
}
else
@@ -83,8 +83,8 @@ public class Commandnick extends EssentialsCommand
}
}
- target.setDisplayNick(ess.getSettings().getNicknamePrefix() + formattedNick);
target.setNickname(formattedNick);
+ target.setDisplayNick();
target.sendMessage(Util.format("nickSet", target.getDisplayName() + "§7."));
}
}
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandwhois.java b/Essentials/src/com/earth2me/essentials/commands/Commandwhois.java
index b8081d04e..c99503eef 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandwhois.java
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandwhois.java
@@ -43,9 +43,9 @@ public class Commandwhois extends EssentialsCommand
{
continue;
}
- final String displayName = ChatColor.stripColor(user.getNick());
- if (!whois.equalsIgnoreCase(displayName)
- && !whois.equalsIgnoreCase(displayName.substring(prefixLength))
+ final String nickName = ChatColor.stripColor(user.getNickname());
+ if (!whois.equalsIgnoreCase(nickName)
+ && !whois.substring(prefixLength).equalsIgnoreCase(nickName)
&& !whois.equalsIgnoreCase(user.getName()))
{
continue;