summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsnowleo <schneeleo@gmail.com>2012-10-15 21:02:02 +0200
committersnowleo <schneeleo@gmail.com>2012-10-15 21:02:02 +0200
commit7c8f7ba3ed428ea3779e3edfaeeb131e47d3e27d (patch)
tree47ac629cc3e7e9c535144b14d19b93c73b718909
parentb86ca14295fdf8df914081e6bf38161c7d16c42a (diff)
downloadEssentials-7c8f7ba3ed428ea3779e3edfaeeb131e47d3e27d.tar
Essentials-7c8f7ba3ed428ea3779e3edfaeeb131e47d3e27d.tar.gz
Essentials-7c8f7ba3ed428ea3779e3edfaeeb131e47d3e27d.tar.lz
Essentials-7c8f7ba3ed428ea3779e3edfaeeb131e47d3e27d.tar.xz
Essentials-7c8f7ba3ed428ea3779e3edfaeeb131e47d3e27d.zip
Fix changeDisplayname and related code
-rw-r--r--Essentials/src/net/ess3/api/IPlugin.java6
-rw-r--r--Essentials/src/net/ess3/bukkit/BukkitPlugin.java50
-rw-r--r--Essentials/src/net/ess3/commands/Commandafk.java1
-rw-r--r--Essentials/src/net/ess3/commands/Commandhelpop.java1
-rw-r--r--Essentials/src/net/ess3/commands/Commandlist.java2
-rw-r--r--Essentials/src/net/ess3/commands/Commandme.java5
-rw-r--r--Essentials/src/net/ess3/commands/Commandrealname.java1
-rw-r--r--Essentials/src/net/ess3/commands/Commandsuicide.java1
-rw-r--r--Essentials/src/net/ess3/commands/Commandwhois.java1
-rw-r--r--Essentials/src/net/ess3/listener/EssentialsPluginListener.java4
-rw-r--r--Essentials/src/net/ess3/settings/Chat.java2
-rw-r--r--Essentials/src/net/ess3/user/User.java15
-rw-r--r--Essentials/src/net/ess3/utils/textreader/KeywordReplacer.java1
13 files changed, 61 insertions, 29 deletions
diff --git a/Essentials/src/net/ess3/api/IPlugin.java b/Essentials/src/net/ess3/api/IPlugin.java
index 6316f13f0..d93476dba 100644
--- a/Essentials/src/net/ess3/api/IPlugin.java
+++ b/Essentials/src/net/ess3/api/IPlugin.java
@@ -31,4 +31,10 @@ public interface IPlugin extends Plugin {
Location callRespawnEvent(Player player, Location loc, boolean bedSpawn);
void callSuicideEvent(Player player);
+
+ public boolean isModuleEnabled(String name);
+
+ public void onPluginEnable(Plugin plugin);
+
+ public void onPluginDisable(Plugin plugin);
}
diff --git a/Essentials/src/net/ess3/bukkit/BukkitPlugin.java b/Essentials/src/net/ess3/bukkit/BukkitPlugin.java
index 526b0821b..fa5f00a4c 100644
--- a/Essentials/src/net/ess3/bukkit/BukkitPlugin.java
+++ b/Essentials/src/net/ess3/bukkit/BukkitPlugin.java
@@ -1,6 +1,9 @@
package net.ess3.bukkit;
import java.io.File;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Map;
import java.util.logging.Level;
import net.ess3.Essentials;
import static net.ess3.I18n._;
@@ -21,15 +24,17 @@ import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerRespawnEvent;
+import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.plugin.java.JavaPluginLoader;
public class BukkitPlugin extends JavaPlugin implements IPlugin
-{
+{
private Essentials ess;
-
+ private Map<String, Plugin> modules = Collections.synchronizedMap(new HashMap<String, Plugin>());
+
@Override
public void onEnable()
{
@@ -75,7 +80,7 @@ public class BukkitPlugin extends JavaPlugin implements IPlugin
this.setEnabled(false);
return;
}
-
+
final EssentialsPluginListener serverListener = new EssentialsPluginListener(ess);
pm.registerEvents(serverListener, this);
ess.addReloadListener(serverListener);
@@ -89,7 +94,7 @@ public class BukkitPlugin extends JavaPlugin implements IPlugin
final EssentialsEntityListener entityListener = new EssentialsEntityListener(ess);
pm.registerEvents(entityListener, this);
-
+
final MetricsStarter metricsStarter = new MetricsStarter(ess);
if (metricsStarter.getStart() != null && metricsStarter.getStart() == true)
{
@@ -116,7 +121,7 @@ public class BukkitPlugin extends JavaPlugin implements IPlugin
{
return ess.getCommandHandler().handleCommand(sender, command, label, args);
}
-
+
@Override
public int scheduleAsyncDelayedTask(final Runnable run)
{
@@ -128,7 +133,7 @@ public class BukkitPlugin extends JavaPlugin implements IPlugin
{
return getServer().getScheduler().scheduleSyncDelayedTask(this, run);
}
-
+
@Override
public int scheduleAsyncDelayedTask(final Runnable run, final long delay)
{
@@ -179,7 +184,7 @@ public class BukkitPlugin extends JavaPlugin implements IPlugin
}
@Override
- public Location callRespawnEvent(Player player, Location loc, boolean bedSpawn)
+ public Location callRespawnEvent(final Player player, final Location loc, final boolean bedSpawn)
{
final PlayerRespawnEvent pre = new PlayerRespawnEvent(player, loc, bedSpawn);
getServer().getPluginManager().callEvent(pre);
@@ -187,7 +192,7 @@ public class BukkitPlugin extends JavaPlugin implements IPlugin
}
@Override
- public void callSuicideEvent(Player player)
+ public void callSuicideEvent(final Player player)
{
EntityDamageEvent ede = new EntityDamageEvent(player, EntityDamageEvent.DamageCause.SUICIDE, 1000);
getServer().getPluginManager().callEvent(ede);
@@ -198,4 +203,33 @@ public class BukkitPlugin extends JavaPlugin implements IPlugin
{
return ess;
}
+
+ @Override
+ public boolean isModuleEnabled(final String name)
+ {
+ return modules.containsKey(name);
+ }
+
+ @Override
+ public void onPluginEnable(final Plugin plugin)
+ {
+ if (plugin.getName().equals(this.getName())
+ || !plugin.getName().startsWith("Essentials"))
+ {
+ return;
+ }
+ // Remove "Essentials" from name
+ modules.put(plugin.getName().substring(10), plugin);
+ }
+
+ @Override
+ public void onPluginDisable(final Plugin plugin)
+ {
+ if (plugin.getName().equals(this.getName())
+ || !plugin.getName().startsWith("Essentials"))
+ {
+ return;
+ }
+ modules.remove(plugin.getName().substring(10));
+ }
}
diff --git a/Essentials/src/net/ess3/commands/Commandafk.java b/Essentials/src/net/ess3/commands/Commandafk.java
index b535cf5e2..3d49df694 100644
--- a/Essentials/src/net/ess3/commands/Commandafk.java
+++ b/Essentials/src/net/ess3/commands/Commandafk.java
@@ -26,7 +26,6 @@ public class Commandafk extends EssentialsCommand
private void toggleAfk(IUser user)
{
- user.setDisplayNick();
if (!user.toggleAfk())
{
//user.sendMessage(_("markedAsNotAway"));
diff --git a/Essentials/src/net/ess3/commands/Commandhelpop.java b/Essentials/src/net/ess3/commands/Commandhelpop.java
index 95fb30569..55bdd77e4 100644
--- a/Essentials/src/net/ess3/commands/Commandhelpop.java
+++ b/Essentials/src/net/ess3/commands/Commandhelpop.java
@@ -17,7 +17,6 @@ public class Commandhelpop extends EssentialsCommand
{
throw new NotEnoughArgumentsException();
}
- user.setDisplayNick();
final String message = _("helpOp", user.getPlayer().getDisplayName(), FormatUtil.stripFormat(getFinalArg(args, 0)));
logger.log(Level.INFO, message);
for (Player player : server.getOnlinePlayers())
diff --git a/Essentials/src/net/ess3/commands/Commandlist.java b/Essentials/src/net/ess3/commands/Commandlist.java
index e5376c0df..6fe865d3b 100644
--- a/Essentials/src/net/ess3/commands/Commandlist.java
+++ b/Essentials/src/net/ess3/commands/Commandlist.java
@@ -106,7 +106,6 @@ public class Commandlist extends EssentialsCommand
{
groupString.append(_("listHiddenTag"));
}
- user.setDisplayNick();
groupString.append(user.getPlayer().getDisplayName());
groupString.append("§f");
}
@@ -155,7 +154,6 @@ public class Commandlist extends EssentialsCommand
{
onlineUsers.append(_("listHiddenTag"));
}
- user.setDisplayNick();
onlineUsers.append(user.getPlayer().getDisplayName());
onlineUsers.append("§f");
}
diff --git a/Essentials/src/net/ess3/commands/Commandme.java b/Essentials/src/net/ess3/commands/Commandme.java
index 7652dad24..3b5c28075 100644
--- a/Essentials/src/net/ess3/commands/Commandme.java
+++ b/Essentials/src/net/ess3/commands/Commandme.java
@@ -26,12 +26,11 @@ public class Commandme extends EssentialsCommand
{
message = FormatUtil.replaceFormat(message);
}
- else {
+ else
+ {
message = FormatUtil.stripColor(message);
}
-
- user.setDisplayNick();
ess.broadcastMessage(user, _("action", user.getPlayer().getDisplayName(), message));
}
}
diff --git a/Essentials/src/net/ess3/commands/Commandrealname.java b/Essentials/src/net/ess3/commands/Commandrealname.java
index b1372bd19..1cbf7732c 100644
--- a/Essentials/src/net/ess3/commands/Commandrealname.java
+++ b/Essentials/src/net/ess3/commands/Commandrealname.java
@@ -28,7 +28,6 @@ public class Commandrealname extends EssentialsCommand
{
continue;
}
- u.setDisplayNick();
final String displayName = FormatUtil.stripFormat(u.getPlayer().getDisplayName()).toLowerCase(Locale.ENGLISH);
if (!whois.equals(displayName)
&& !displayName.equals(FormatUtil.stripFormat(settings.getData().getChat().getNicknamePrefix()) + whois)
diff --git a/Essentials/src/net/ess3/commands/Commandsuicide.java b/Essentials/src/net/ess3/commands/Commandsuicide.java
index 03f80bb25..b1eb14b30 100644
--- a/Essentials/src/net/ess3/commands/Commandsuicide.java
+++ b/Essentials/src/net/ess3/commands/Commandsuicide.java
@@ -12,7 +12,6 @@ public class Commandsuicide extends EssentialsCommand
ess.getPlugin().callSuicideEvent(user.getPlayer());
user.getPlayer().damage(Short.MAX_VALUE);
user.sendMessage(_("suicideMessage"));
- user.setDisplayNick();
ess.broadcastMessage(user,_("suicideSuccess", user.getPlayer().getDisplayName()));
}
}
diff --git a/Essentials/src/net/ess3/commands/Commandwhois.java b/Essentials/src/net/ess3/commands/Commandwhois.java
index 38ed8fd2e..2a431cbd5 100644
--- a/Essentials/src/net/ess3/commands/Commandwhois.java
+++ b/Essentials/src/net/ess3/commands/Commandwhois.java
@@ -56,7 +56,6 @@ public class Commandwhois extends EssentialsCommand
}
foundPlayer = true;
sender.sendMessage(_("whoisTop", user.getName()));
- user.setDisplayNick();
sender.sendMessage(_("whoisIs", user.getPlayer().getDisplayName(), user.getName()));
sender.sendMessage(_("whoisHealth", user.getPlayer().getHealth()));
sender.sendMessage(_("whoisExp", SetExpFix.getTotalExperience(user.getPlayer()), user.getPlayer().getLevel()));
diff --git a/Essentials/src/net/ess3/listener/EssentialsPluginListener.java b/Essentials/src/net/ess3/listener/EssentialsPluginListener.java
index 3d51e1ff7..f3c47389e 100644
--- a/Essentials/src/net/ess3/listener/EssentialsPluginListener.java
+++ b/Essentials/src/net/ess3/listener/EssentialsPluginListener.java
@@ -31,7 +31,7 @@ public class EssentialsPluginListener implements Listener, IReload
public void onPluginEnable(final PluginEnableEvent event)
{
checkGroups();
- //ess.getPermissionsHandler().checkPermissions();
+ ess.getPlugin().onPluginEnable(event.getPlugin());
ess.getCommandHandler().addPlugin(event.getPlugin());
if (!Methods.hasMethod() && Methods.setMethod(ess.getServer().getPluginManager()))
{
@@ -46,7 +46,7 @@ public class EssentialsPluginListener implements Listener, IReload
public void onPluginDisable(final PluginDisableEvent event)
{
checkGroups();
- //ess.getPermissionsHandler().checkPermissions();
+ ess.getPlugin().onPluginDisable(event.getPlugin());
ess.getCommandHandler().removePlugin(event.getPlugin());
// Check to see if the plugin thats being disabled is the one we are using
if (Methods.hasMethod() && Methods.checkDisabled(event.getPlugin()))
diff --git a/Essentials/src/net/ess3/settings/Chat.java b/Essentials/src/net/ess3/settings/Chat.java
index 78b970582..6f527bdcf 100644
--- a/Essentials/src/net/ess3/settings/Chat.java
+++ b/Essentials/src/net/ess3/settings/Chat.java
@@ -17,7 +17,7 @@ public class Chat implements StorageObject
"Disable this if you have any other plugin, that modifies the displayname of a user.",
"If it is not set, it will be enabled if EssentialsChat is installed, otherwise not."
})
- private Boolean changeDisplayname = true;
+ private Boolean changeDisplayname;
private String displaynameFormat = "{PREFIX}{NICKNAMEPREFIX}{NAME}{SUFFIX}";
@Comment(
{
diff --git a/Essentials/src/net/ess3/user/User.java b/Essentials/src/net/ess3/user/User.java
index 8e98bcaa3..753069874 100644
--- a/Essentials/src/net/ess3/user/User.java
+++ b/Essentials/src/net/ess3/user/User.java
@@ -40,8 +40,8 @@ public class User extends UserBase implements IUser
private transient long lastOnlineActivity;
private transient long lastActivity = System.currentTimeMillis();
/*@Getter
- @Setter
- private boolean hidden = false;*/
+ @Setter
+ private boolean hidden = false;*/
@Getter
private transient boolean vanished;
@Getter
@@ -211,15 +211,15 @@ public class User extends UserBase implements IUser
if (displayname.contains("{PREFIX}"))
{
- displayname = displayname.replace("{PREFIX}", groups.getPrefix(this));
+ displayname = displayname.replace("{PREFIX}", addprefixsuffix ? groups.getPrefix(this) : "");
}
if (displayname.contains("{SUFFIX}"))
{
- displayname = displayname.replace("{SUFFIX}", groups.getSuffix(this));
+ displayname = displayname.replace("{SUFFIX}", addprefixsuffix ? groups.getSuffix(this) : "");
}
displayname = displayname.replace("{WORLDNAME}", this.getPlayer().getWorld().getName());
displayname = displayname.replace('&', '\u00a7');
- displayname = displayname.concat("\u00a7f");
+ displayname = displayname.concat("\u00a7r");
return displayname;
}
@@ -250,8 +250,9 @@ public class User extends UserBase implements IUser
@Override
public void updateDisplayName()
{
- final ISettings settings = ess.getSettings();
- if (isOnline() && settings.getData().getChat().getChangeDisplayname())
+ final Boolean changeDisplayname = ess.getSettings().getData().getChat().getChangeDisplayname();
+
+ if (isOnline() && (changeDisplayname == true || (changeDisplayname == null && ess.getPlugin().isModuleEnabled("Chat"))));
{
setDisplayNick();
}
diff --git a/Essentials/src/net/ess3/utils/textreader/KeywordReplacer.java b/Essentials/src/net/ess3/utils/textreader/KeywordReplacer.java
index e9d487790..dc78a14a9 100644
--- a/Essentials/src/net/ess3/utils/textreader/KeywordReplacer.java
+++ b/Essentials/src/net/ess3/utils/textreader/KeywordReplacer.java
@@ -37,7 +37,6 @@ public class KeywordReplacer implements IText
if (sender instanceof IUser)
{
final IUser user = (IUser)sender;
- user.setDisplayNick();
displayName = user.getPlayer().getDisplayName();
userName = user.getPlayer().getName();
ipAddress = user.getPlayer().getAddress() == null || user.getPlayer().getAddress().getAddress() == null ? "" : user.getPlayer().getAddress().getAddress().toString();