private bool AddNewPlayer(String name, int team)
{
bool known = false;
bool needsFetch = false;
PlayerModel player = null;
lock (fKnownPlayers) {
if (!fKnownPlayers.ContainsKey(name)) {
player = new PlayerModel(name, team);
fKnownPlayers[name] = player;
needsFetch = true;
} else {
player = fKnownPlayers[name];
player.Team = team;
player.FirstSeenTimestamp = DateTime.Now;
known = true;
needsFetch = !(player.TagVerified && player.StatsVerified);
}
if (player != null) player.LastSeenTimestamp = DateTime.Now;
}
lock (fAllPlayers) {
if (!fAllPlayers.Contains(name)) fAllPlayers.Add(name);
}
if (needsFetch) {
AddPlayerFetch(name);
}
UpdateFromWhitelist(player);
return known;
}