Log in through AccountService on player login
This commit is contained in:
@@ -621,9 +621,11 @@ public class Client extends ChannelInboundHandlerAdapter {
|
||||
} else if (newState == LoginState.SERVER_TRANSITION) {
|
||||
loggedIn = false;
|
||||
inServerTransition = true;
|
||||
} else {
|
||||
} else if (newState == LoginState.LOGGED_IN) {
|
||||
loggedIn = true;
|
||||
inServerTransition = false;
|
||||
} else {
|
||||
throw new IllegalArgumentException("Invalid login state: " + newState);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -205,7 +205,7 @@ public final class PlayerLoggedinHandler extends AbstractPacketHandler {
|
||||
|
||||
return;
|
||||
}
|
||||
c.updateLoginState(LoginState.LOGGED_IN);
|
||||
accountService.logIn(c);
|
||||
} finally {
|
||||
releaseAccount(accId);
|
||||
}
|
||||
|
||||
@@ -215,7 +215,8 @@ public class AccountService {
|
||||
|
||||
public boolean logIn(Client c) {
|
||||
byte newState = LoginState.LOGGED_IN;
|
||||
if (c.getLoginState() != LoginState.NOT_LOGGED_IN) {
|
||||
int currentState = c.getLoginState();
|
||||
if (currentState != LoginState.NOT_LOGGED_IN && currentState != LoginState.SERVER_TRANSITION) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user