на 1 аккаунте до 7 человек
- Код:
Index: /loginserver.properties
===================================================================
@@ -17,5 +17,4 @@
# default = true
AcceptNewGameServer = true
+AllowMultipleLoginOnSameAcc = True
# ----------------------------
Index: /loginserver/services/AccountsServices.java
===================================================================
@@ -237,5 +237,5 @@
//L2EMU_EDIT- Rayan - logs if a Config.AUTO_CREATE_ACCOUNTS a warn message telling that new account was created.
if (Config.AUTO_CREATE_ACCOUNTS)
+ _log.warn("Account created for user: " + id);
- _log.info("Account created for user: " + id);
else
_log.warn(e.getMessage());
Index: /loginserver/manager/LoginManager.java
===================================================================
@@ -284,6 +284,5 @@
* @throws AccountWrongPasswordException if the password was wrong
*/
+ public AuthLoginResult tryAuthLogin(String account, String password, L2LoginClient client) throws HackingException, AccountBannedException,
+ AccountWrongPasswordException
- public AuthLoginResult tryAuthLogin(String account, String password, L2LoginClient client) throws HackingException, AccountBannedException, AccountWrongPasswordException
{
AuthLoginResult ret = AuthLoginResult.INVALID_PASSWORD;
@@ -291,5 +290,4 @@
try
{
// check auth
if (this.loginValid(account, password, client))
@@ -298,28 +296,24 @@
ret = AuthLoginResult.ALREADY_ON_GS;
+ if (!Config.ALLOW_MULT_LOGIN_OF_SAME_ACC)
- if (!this.isAccountInAnyGameServer(account))
{
+ if (!this.isAccountInAnyGameServer(account))
- // account isnt on any GS, verify LS itself
- ret = AuthLoginResult.ALREADY_ON_LS;
- // dont allow 2 simultaneous login
- synchronized (_loginServerClients)
{
+ // account isnt on any GS, verify LS itself
+ ret = AuthLoginResult.ALREADY_ON_LS;
- if (!_loginServerClients.containsKey(account))
- {
- _loginServerClients.put(account, client);
- ret = AuthLoginResult.AUTH_SUCCESS;
- }
}
- Accounts acc = _service.getAccountById(account);
- // keep access level in the L2LoginClient
- client.setAccessLevel(acc.getAccessLevel());
- // keep last server choice
- client.setLastServerId(acc.getLastServerId());
}
+ // dont allow 2 simultaneous login
+ synchronized (_loginServerClients)
+ {
+ if (!_loginServerClients.containsKey(account))
+ {
+ _loginServerClients.put(account, client);
+ ret = AuthLoginResult.AUTH_SUCCESS;
+ }
+ }
+ Accounts acc = _service.getAccountById(account);
+ // keep access level in the L2LoginClient
+ client.setAccessLevel(acc.getAccessLevel());
+ // keep last server choice
+ client.setLastServerId(acc.getLastServerId());
+ }
}
catch (NoSuchAlgorithmException e)
Index: Config.java
===================================================================
@@ -227,5 +227,4 @@
public static boolean AUTO_CREATE_ACCOUNTS;
public static int GM_MIN;
+ public static boolean ALLOW_MULT_LOGIN_OF_SAME_ACC;
//********************************************************************************************
@@ -239,5 +238,4 @@
serverSettings.load(is);
is.close();
+ ALLOW_MULT_LOGIN_OF_SAME_ACC = Boolean.parseBoolean(serverSettings.getProperty("AllowMultipleLoginOnSameAcc", "false"));
ACCEPT_NEW_GAMESERVER = Boolean.parseBoolean(serverSettings.getProperty("AcceptNewGameServer", "false"));
GM_MIN = Integer.parseInt(serverSettings.getProperty("GMMinLevel", "1"));