summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKHobbits <rob@khobbits.co.uk>2012-12-20 22:47:49 +0000
committerKHobbits <rob@khobbits.co.uk>2012-12-20 22:53:52 +0000
commitadb75b69c299c37365e52b1429ebe34de2243e03 (patch)
tree1f301df86108b0eb30f5f1f64edba606ececbf6e
parent6f28540d592c40d9397b39660b394de68b1336b4 (diff)
downloadEssentials-adb75b69c299c37365e52b1429ebe34de2243e03.tar
Essentials-adb75b69c299c37365e52b1429ebe34de2243e03.tar.gz
Essentials-adb75b69c299c37365e52b1429ebe34de2243e03.tar.lz
Essentials-adb75b69c299c37365e52b1429ebe34de2243e03.tar.xz
Essentials-adb75b69c299c37365e52b1429ebe34de2243e03.zip
Allow certain commands while in jail, but only if the user normally has access to that command.
Notes
Notes: essentials.jail.allow.<command>
-rw-r--r--Essentials/src/com/earth2me/essentials/Essentials.java15
-rw-r--r--Essentials/src/com/earth2me/essentials/User.java5
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandseen.java11
3 files changed, 20 insertions, 11 deletions
diff --git a/Essentials/src/com/earth2me/essentials/Essentials.java b/Essentials/src/com/earth2me/essentials/Essentials.java
index 4bd878828..5e9fbee56 100644
--- a/Essentials/src/com/earth2me/essentials/Essentials.java
+++ b/Essentials/src/com/earth2me/essentials/Essentials.java
@@ -368,6 +368,19 @@ public class Essentials extends JavaPlugin implements IEssentials
return true;
}
+ if (user != null && user.isJailed() && !user.isAuthorized(cmd, "essentials.jail.allow."))
+ {
+ if (user.getJailTimeout() > 0)
+ {
+ user.sendMessage(_("playerJailedFor", user.getName(), Util.formatDateDiff(user.getJailTimeout())));
+ }
+ else
+ {
+ user.sendMessage(_("jailMessage"));
+ }
+ return true;
+ }
+
// Run the command
try
{
@@ -471,7 +484,7 @@ public class Essentials extends JavaPlugin implements IEssentials
}
return null;
}
-
+
@Override
public User getOfflineUser(final String name)
{
diff --git a/Essentials/src/com/earth2me/essentials/User.java b/Essentials/src/com/earth2me/essentials/User.java
index 1c5d04530..bb1e290f4 100644
--- a/Essentials/src/com/earth2me/essentials/User.java
+++ b/Essentials/src/com/earth2me/essentials/User.java
@@ -80,11 +80,6 @@ public class User extends UserData implements Comparable<User>, IReplyTo, IUser
return false;
}
- if (isJailed())
- {
- return false;
- }
-
try
{
return ess.getPermissionsHandler().hasPermission(base, node);
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandseen.java b/Essentials/src/com/earth2me/essentials/commands/Commandseen.java
index fc5a1f033..5c204fda5 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandseen.java
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandseen.java
@@ -45,10 +45,10 @@ public class Commandseen extends EssentialsCommand
: _("true")
: _("false"))));
sender.sendMessage(_("whoisMuted", (user.isMuted()
- ? user.getMuteTimeout() > 0
- ? Util.formatDateDiff(user.getMuteTimeout())
- : _("true")
- : _("false"))));
+ ? user.getMuteTimeout() > 0
+ ? Util.formatDateDiff(user.getMuteTimeout())
+ : _("true")
+ : _("false"))));
if (extra)
{
sender.sendMessage(_("whoisIPAddress", user.getAddress().getAddress().toString()));
@@ -71,7 +71,8 @@ public class Commandseen extends EssentialsCommand
{
sender.sendMessage(_("whoisIPAddress", player.getLastLoginAddress()));
final Location loc = player.getLastLocation();
- if (loc != null) {
+ if (loc != null)
+ {
sender.sendMessage(_("whoisLocation", loc.getWorld().getName(), loc.getBlockX(), loc.getBlockY(), loc.getBlockZ()));
}
}