Tweak to player login event.

This commit is contained in:
KHobbits 2014-05-18 13:26:04 +01:00
parent 429a7275ee
commit b145ec59ea

View file

@ -340,8 +340,11 @@ public class EssentialsPlayerListener implements Listener
@EventHandler(priority = EventPriority.LOWEST) @EventHandler(priority = EventPriority.LOWEST)
public void onPlayerLogin2(final PlayerLoginEvent event) public void onPlayerLogin2(final PlayerLoginEvent event)
{ {
if (event.getResult() != Result.KICK_BANNED) switch (event.getResult())
{ {
case KICK_BANNED:
break;
default:
return; return;
} }
@ -352,20 +355,19 @@ public class EssentialsPlayerListener implements Listener
@EventHandler(priority = EventPriority.HIGH) @EventHandler(priority = EventPriority.HIGH)
public void onPlayerLogin(final PlayerLoginEvent event) public void onPlayerLogin(final PlayerLoginEvent event)
{ {
if (event.getResult() == Result.KICK_FULL) switch (event.getResult())
{ {
final User user = ess.getUser(event.getPlayer()); case KICK_FULL:
if (user.isAuthorized("essentials.joinfullserver")) final User kfuser = ess.getUser(event.getPlayer());
if (kfuser.isAuthorized("essentials.joinfullserver"))
{ {
event.allow(); event.allow();
return; return;
} }
event.disallow(Result.KICK_FULL, tl("serverFull")); event.disallow(Result.KICK_FULL, tl("serverFull"));
return; break;
}
if (event.getResult() == Result.KICK_BANNED || event.getPlayer().isBanned()) case KICK_BANNED:
{
final User user = ess.getUser(event.getPlayer()); final User user = ess.getUser(event.getPlayer());
final boolean banExpired = user.checkBanTimeout(System.currentTimeMillis()); final boolean banExpired = user.checkBanTimeout(System.currentTimeMillis());
if (banExpired) if (banExpired)
@ -384,6 +386,10 @@ public class EssentialsPlayerListener implements Listener
banReason += "\n\n" + "Expires in " + DateUtil.formatDateDiff(user.getBanTimeout()); banReason += "\n\n" + "Expires in " + DateUtil.formatDateDiff(user.getBanTimeout());
} }
event.disallow(Result.KICK_BANNED, banReason); event.disallow(Result.KICK_BANNED, banReason);
break;
default:
break;
} }
} }