From 82217cc57d3f1bc14916379424b0b837fe68f3ee Mon Sep 17 00:00:00 2001 From: kuroppoi <68156848+kuroppoi@users.noreply.github.com> Date: Tue, 20 Apr 2021 20:49:57 +0200 Subject: [PATCH] Fixed duplicate email registration --- .../gameserver/entity/player/PlayerManager.java | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/gameserver/src/main/java/brainwine/gameserver/entity/player/PlayerManager.java b/gameserver/src/main/java/brainwine/gameserver/entity/player/PlayerManager.java index 23f5f8b..2799805 100644 --- a/gameserver/src/main/java/brainwine/gameserver/entity/player/PlayerManager.java +++ b/gameserver/src/main/java/brainwine/gameserver/entity/player/PlayerManager.java @@ -3,9 +3,7 @@ package brainwine.gameserver.entity.player; import java.io.File; import java.util.Collection; import java.util.HashMap; -import java.util.HashSet; import java.util.Map; -import java.util.Set; import java.util.UUID; import org.apache.logging.log4j.LogManager; @@ -23,7 +21,6 @@ public class PlayerManager { public static final String GAME_VERSION = "3.13.1"; private static final Logger logger = LogManager.getLogger(); - private final Set emails = new HashSet<>(); private final Map playersById = new HashMap<>(); private final Map playersByName = new HashMap<>(); private final Map playersByConnection = new HashMap<>(); @@ -59,12 +56,6 @@ public class PlayerManager { try { Player player = mapper.readValue(file, Player.class); - String email = player.getEmail(); - - if(email != null) { - emails.add(email); - } - String name = player.getName(); if(playersByName.containsKey(name)) { @@ -155,7 +146,13 @@ public class PlayerManager { } public boolean isEmailTaken(String email) { - return emails.contains(email); + for(Player player : getPlayers()) { + if(email.equalsIgnoreCase(player.getEmail())) { + return true; + } + } + + return false; } public Player getPlayer(String name) {