package net.sourceforge.pain.tinylib.logic.event.console; import net.sourceforge.pain.tinylib.*; import net.sourceforge.pain.tinylib.data.*; import net.sourceforge.pain.tinylib.logic.event.*; import net.sourceforge.pain.tinylib.logic.fn.*; public final class LoginEvent extends AbstractEvent { public Object execute(Object param) throws Exception { Console c = (Console) param; if (checkBan(c)) { return null; } new LoginShell().run(c); return null; } private boolean checkBan(Console c) { BanRegistry br = Mudlib.getWorld().getBanRegistry(); SiteBan ban = br.getSiteBan(c.getRemoteAddr(), BanRegistry.SITE_BAN_ALL); if (ban != null) { MessageOutFn.outln(c, "Your site has been banned from this mud."); ConsoleFn.forceDisconnect(c); return true; } return false; } }