diff --git a/src/main/java/fr/xephi/authme/process/register/AsyncRegister.java b/src/main/java/fr/xephi/authme/process/register/AsyncRegister.java index d50fe9a32..5520d50cc 100644 --- a/src/main/java/fr/xephi/authme/process/register/AsyncRegister.java +++ b/src/main/java/fr/xephi/authme/process/register/AsyncRegister.java @@ -49,7 +49,7 @@ public class AsyncRegister implements AsynchronousProcess { * @param

parameters type */ public

void register(RegistrationMethod

variant, P parameters) { - if (preRegisterCheck(parameters.getPlayer())) { + if (preRegisterCheck(variant, parameters.getPlayer())) { RegistrationExecutor

executor = registrationExecutorFactory.getSingleton(variant.getExecutorClass()); if (executor.isRegistrationAdmitted(parameters)) { executeRegistration(parameters, executor); @@ -57,7 +57,7 @@ public class AsyncRegister implements AsynchronousProcess { } } - private boolean preRegisterCheck(Player player) { + private boolean preRegisterCheck(RegistrationMethod variant, Player player) { final String name = player.getName().toLowerCase(); if (playerCache.isAuthenticated(name)) { service.send(player, MessageKey.ALREADY_LOGGED_IN_ERROR); @@ -70,7 +70,7 @@ public class AsyncRegister implements AsynchronousProcess { return false; } - return isPlayerIpAllowedToRegister(player); + return variant == RegistrationMethod.API_REGISTRATION || isPlayerIpAllowedToRegister(player); } /**