/// <summary> /// Logs in player /// </summary> /// <param name="clientID"></param> /// <param name="playerID"></param> /// <param name="player"></param> public LogInType LogIn(int clientID, string playerID, out Player player) { Sessions.TryAdd(clientID, playerID); LogInType logInType; player = databaseManager.GetPlayer(playerID); if (player == null) { player = new Player(clientID); player.SetDefaultUniqueBlocks(); player.SetDefaultSkills(); player.PlayerID = playerID; databaseManager.AddPlayer(player); databaseManager.AddCollection(player.UniqueBlockCollection); logInType = LogInType.Registered; Console.WriteLine($"Registration for player {player.PlayerID}"); } else { player.UniqueBlockCollection = databaseManager.GetCollection(player.UniqueBlockCollection.ID); // TODO: load from DB player.SetDefaultSkills(); player.ClientID = clientID; logInType = LogInType.SignedIn; Console.WriteLine($"Login for player {player.PlayerID}"); } Players.TryAdd(playerID, player); return(logInType); }