From 9307e0cb71cadb5b0f92b4a2057259971e3f39e1 Mon Sep 17 00:00:00 2001 From: "@ArkhamNetwork" Date: Sat, 17 May 2014 03:49:48 +0100 Subject: Optimize PlayerLoginEvent --- .../essentials/EssentialsPlayerListener.java | 55 ++++++++++------------ 1 file changed, 24 insertions(+), 31 deletions(-) diff --git a/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java b/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java index 639220f6e..bc4703276 100644 --- a/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java +++ b/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java @@ -340,11 +340,8 @@ public class EssentialsPlayerListener implements Listener @EventHandler(priority = EventPriority.LOWEST) public void onPlayerLogin2(final PlayerLoginEvent event) { - switch (event.getResult()) + if (event.getResult() != Result.KICK_BANNED) { - case KICK_BANNED: - break; - default: return; } @@ -355,43 +352,39 @@ public class EssentialsPlayerListener implements Listener @EventHandler(priority = EventPriority.HIGH) public void onPlayerLogin(final PlayerLoginEvent event) { - switch (event.getResult()) + if (event.getResult() == Result.KICK_FULL) { - case KICK_FULL: - case KICK_BANNED: - break; - default: + final User user = ess.getUser(event.getPlayer()); + if (user.isAuthorized("essentials.joinfullserver")) + { + event.allow(); + return; + } + event.disallow(Result.KICK_FULL, tl("serverFull")); return; } - final User user = ess.getUser(event.getPlayer()); - - if (event.getResult() == Result.KICK_BANNED || user.getBase().isBanned()) + if (event.getResult() == Result.KICK_BANNED || event.getPlayer().isBanned()) { + final User user = ess.getUser(event.getPlayer()); final boolean banExpired = user.checkBanTimeout(System.currentTimeMillis()); - if (!banExpired) + if (banExpired) { - String banReason = user.getBanReason(); - if (banReason == null || banReason.isEmpty() || banReason.equalsIgnoreCase("ban")) - { - banReason = event.getKickMessage(); - } - if (user.getBanTimeout() > 0) - { - //TODO: TL This - banReason += "\n\n" + "Expires in " + DateUtil.formatDateDiff(user.getBanTimeout()); - } - event.disallow(Result.KICK_BANNED, banReason); + event.allow(); return; } + String banReason = user.getBanReason(); + if (banReason == null || banReason.isEmpty() || banReason.equalsIgnoreCase("ban")) + { + banReason = event.getKickMessage(); + } + if (user.getBanTimeout() > 0) + { + //TODO: TL This + banReason += "\n\n" + "Expires in " + DateUtil.formatDateDiff(user.getBanTimeout()); + } + event.disallow(Result.KICK_BANNED, banReason); } - - if (event.getResult() == Result.KICK_FULL && !user.isAuthorized("essentials.joinfullserver")) - { - event.disallow(Result.KICK_FULL, tl("serverFull")); - return; - } - event.allow(); } @EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true) -- cgit v1.2.3