diff --git a/src/main/java/client/Client.java b/src/main/java/client/Client.java index 45e7966a04..5d9d2586ca 100644 --- a/src/main/java/client/Client.java +++ b/src/main/java/client/Client.java @@ -86,10 +86,6 @@ public class Client extends ChannelInboundHandlerAdapter { private static final int MAX_FAILED_LOGIN_ATTEMPTS = 5; private static final int MAX_CHR_SLOTS = 15; - public static final int LOGIN_NOTLOGGEDIN = 0; - public static final int LOGIN_SERVER_TRANSITION = 1; - public static final int LOGIN_LOGGEDIN = 2; - private final Type type; private final long sessionId; private final PacketProcessor packetProcessor; @@ -460,11 +456,11 @@ public class Client extends ChannelInboundHandlerAdapter { public boolean finishLogin() { encoderLock.lock(); try { - if (getLoginState() > LOGIN_NOTLOGGEDIN) { // 0 = LOGIN_NOTLOGGEDIN, 1= LOGIN_SERVER_TRANSITION, 2 = LOGIN_LOGGEDIN + if (getLoginState() > LoginState.NOT_LOGGED_IN) { // 0 = LOGIN_NOTLOGGEDIN, 1= LOGIN_SERVER_TRANSITION, 2 = LOGIN_LOGGEDIN loggedIn = false; return false; } - updateLoginState(Client.LOGIN_LOGGEDIN); + updateLoginState(LoginState.LOGGED_IN); } finally { encoderLock.unlock(); } @@ -621,7 +617,7 @@ public class Client extends ChannelInboundHandlerAdapter { e.printStackTrace(); } - if (newState == LOGIN_NOTLOGGEDIN) { + if (newState == LoginState.NOT_LOGGED_IN) { loggedIn = false; serverTransition = false; setAccID(0); @@ -682,19 +678,19 @@ public class Client extends ChannelInboundHandlerAdapter { } state = rs.getInt("loggedin"); - if (state == LOGIN_SERVER_TRANSITION) { + if (state == LoginState.SERVER_TRANSITION) { if (rs.getTimestamp("lastlogin").getTime() + 30000 < Server.getInstance().getCurrentTime()) { int accountId = accId; - state = LOGIN_NOTLOGGEDIN; - updateLoginState(Client.LOGIN_NOTLOGGEDIN); // ACCID = 0, issue found thanks to Tochi & K u ssss o & Thora & Omo Oppa + state = LoginState.NOT_LOGGED_IN; + updateLoginState(LoginState.NOT_LOGGED_IN); // ACCID = 0, issue found thanks to Tochi & K u ssss o & Thora & Omo Oppa this.setAccID(accountId); } } } } - if (state == LOGIN_LOGGEDIN) { + if (state == LoginState.LOGGED_IN) { loggedIn = true; - } else if (state == LOGIN_SERVER_TRANSITION) { + } else if (state == LoginState.SERVER_TRANSITION) { try (PreparedStatement ps2 = con.prepareStatement("UPDATE accounts SET loggedin = 0 WHERE id = ?")) { ps2.setInt(1, getAccID()); ps2.executeUpdate(); @@ -746,7 +742,7 @@ public class Client extends ChannelInboundHandlerAdapter { } public void setCharacterOnSessionTransitionState(int cid) { - this.updateLoginState(Client.LOGIN_SERVER_TRANSITION); + this.updateLoginState(LoginState.SERVER_TRANSITION); this.inTransition = true; Server.getInstance().setCharacteridInTransition(this, cid); } @@ -822,7 +818,7 @@ public class Client extends ChannelInboundHandlerAdapter { if (lastPong < pingedAt) { if (ioChannel.isActive()) { log.info("Disconnected {} due to idling. Reason: {}", remoteAddress, event.state()); - updateLoginState(Client.LOGIN_NOTLOGGEDIN); + updateLoginState(LoginState.NOT_LOGGED_IN); disconnectSession(); } } diff --git a/src/main/java/net/server/channel/handlers/PlayerLoggedinHandler.java b/src/main/java/net/server/channel/handlers/PlayerLoggedinHandler.java index d0df689da0..248d4ad8a3 100644 --- a/src/main/java/net/server/channel/handlers/PlayerLoggedinHandler.java +++ b/src/main/java/net/server/channel/handlers/PlayerLoggedinHandler.java @@ -28,6 +28,7 @@ import client.Client; import client.Disease; import client.Family; import client.FamilyEntry; +import client.LoginState; import client.Mount; import client.SkillFactory; import client.inventory.Equip; @@ -174,7 +175,7 @@ public final class PlayerLoggedinHandler extends AbstractPacketHandler { boolean allowLogin = true; /* is this check really necessary? - if (state == Client.LOGIN_SERVER_TRANSITION || state == Client.LOGIN_NOTLOGGEDIN) { + if (state == LoginState.SERVER_TRANSITION || state == LoginState.NOT_LOGGED_IN) { List charNames = c.loadCharacterNames(c.getWorld()); if(!newcomer) { charNames.remove(player.getName()); @@ -193,11 +194,11 @@ public final class PlayerLoggedinHandler extends AbstractPacketHandler { if (tryAcquireAccount(accId)) { // Sync this to prevent wrong login state for double loggedin handling try { int state = c.getLoginState(); - if (state != Client.LOGIN_SERVER_TRANSITION || !allowLogin) { + if (state != LoginState.SERVER_TRANSITION || !allowLogin) { c.setPlayer(null); c.setAccID(0); - if (state == Client.LOGIN_LOGGEDIN) { + if (state == LoginState.LOGGED_IN) { throw new GameViolationException("Attempt to log in when already logged in"); } else { c.sendPacket(PacketCreator.getAfterLoginError(7)); @@ -205,7 +206,7 @@ public final class PlayerLoggedinHandler extends AbstractPacketHandler { return; } - c.updateLoginState(Client.LOGIN_LOGGEDIN); + c.updateLoginState(LoginState.LOGGED_IN); } finally { releaseAccount(accId); } diff --git a/src/main/java/net/server/handlers/login/AfterLoginHandler.java b/src/main/java/net/server/handlers/login/AfterLoginHandler.java index bcf6d1d946..1fc822283f 100644 --- a/src/main/java/net/server/handlers/login/AfterLoginHandler.java +++ b/src/main/java/net/server/handlers/login/AfterLoginHandler.java @@ -22,6 +22,7 @@ package net.server.handlers.login; import client.Client; +import client.LoginState; import net.AbstractPacketHandler; import net.packet.InPacket; import net.server.coordinator.session.SessionCoordinator; @@ -58,7 +59,7 @@ public final class AfterLoginHandler extends AbstractPacketHandler { } } else if (c2 == 0 && c3 == 5) { SessionCoordinator.getInstance().closeSession(c, false); - c.updateLoginState(Client.LOGIN_NOTLOGGEDIN); + c.updateLoginState(LoginState.NOT_LOGGED_IN); } } } diff --git a/src/main/java/net/server/handlers/login/LoginPasswordHandler.java b/src/main/java/net/server/handlers/login/LoginPasswordHandler.java index 74a314e544..7507a82b8a 100644 --- a/src/main/java/net/server/handlers/login/LoginPasswordHandler.java +++ b/src/main/java/net/server/handlers/login/LoginPasswordHandler.java @@ -24,6 +24,7 @@ package net.server.handlers.login; import client.Character; import client.Client; import client.DefaultDates; +import client.LoginState; import config.YamlConfig; import constants.game.GameConstants; import database.account.Account; @@ -110,7 +111,7 @@ public final class LoginPasswordHandler implements PacketHandler { c.setAccount(account); - if (c.getLoginState(account) > Client.LOGIN_NOTLOGGEDIN) { + if (c.getLoginState(account) > LoginState.NOT_LOGGED_IN) { c.sendPacket(PacketCreator.getLoginFailed(7)); return; } diff --git a/src/main/java/net/server/handlers/login/RegisterPinHandler.java b/src/main/java/net/server/handlers/login/RegisterPinHandler.java index 2d7ad6856b..a5b5577f3e 100644 --- a/src/main/java/net/server/handlers/login/RegisterPinHandler.java +++ b/src/main/java/net/server/handlers/login/RegisterPinHandler.java @@ -22,6 +22,7 @@ package net.server.handlers.login; import client.Client; +import client.LoginState; import net.AbstractPacketHandler; import net.packet.InPacket; import net.server.coordinator.session.SessionCoordinator; @@ -44,7 +45,7 @@ public final class RegisterPinHandler extends AbstractPacketHandler { boolean cancel = p.readByte() == 0; if (cancel) { SessionCoordinator.getInstance().closeSession(c, false); - c.updateLoginState(Client.LOGIN_NOTLOGGEDIN); + c.updateLoginState(LoginState.NOT_LOGGED_IN); return; } @@ -54,6 +55,6 @@ public final class RegisterPinHandler extends AbstractPacketHandler { c.sendPacket(PacketCreator.pinRegistered()); SessionCoordinator.getInstance().closeSession(c, false); - c.updateLoginState(Client.LOGIN_NOTLOGGEDIN); + c.updateLoginState(LoginState.NOT_LOGGED_IN); } } diff --git a/src/main/java/net/server/handlers/login/SetGenderHandler.java b/src/main/java/net/server/handlers/login/SetGenderHandler.java index 3ffbb6d450..9b46e3b230 100644 --- a/src/main/java/net/server/handlers/login/SetGenderHandler.java +++ b/src/main/java/net/server/handlers/login/SetGenderHandler.java @@ -24,6 +24,7 @@ package net.server.handlers.login; import client.Client; import client.Gender; +import client.LoginState; import net.AbstractPacketHandler; import net.packet.InPacket; import net.server.Server; @@ -73,7 +74,7 @@ public class SetGenderHandler extends AbstractPacketHandler { private void close(Client c) { SessionCoordinator.getInstance().closeSession(c, false); - c.updateLoginState(Client.LOGIN_NOTLOGGEDIN); + c.updateLoginState(LoginState.NOT_LOGGED_IN); } } diff --git a/src/main/java/service/TransitionService.java b/src/main/java/service/TransitionService.java index b28524c17a..112273b711 100644 --- a/src/main/java/service/TransitionService.java +++ b/src/main/java/service/TransitionService.java @@ -2,6 +2,7 @@ package service; import client.BuddyList; import client.Client; +import client.LoginState; import client.inventory.InventoryType; import config.YamlConfig; import constants.id.MapId; @@ -171,11 +172,11 @@ public class TransitionService { if (!c.isInTransition() && c.isLoggedIn()) { - c.updateLoginState(Client.LOGIN_NOTLOGGEDIN); + c.updateLoginState(LoginState.NOT_LOGGED_IN); c.clear(); } else { if (!Server.getInstance().hasCharacteridInTransition(c)) { - c.updateLoginState(Client.LOGIN_NOTLOGGEDIN); + c.updateLoginState(LoginState.NOT_LOGGED_IN); } c.clearEngines();