mirror of
https://github.com/tribufu/ServerManagers
synced 2026-06-01 09:42:39 +00:00
ArkData Changes
- changed SingleOrDefault to FirstOrDefault
This commit is contained in:
parent
f51e92c5a2
commit
c7da511d1e
3 changed files with 36 additions and 12 deletions
|
|
@ -40,13 +40,17 @@ namespace ArkData
|
||||||
if (playerFiles != null)
|
if (playerFiles != null)
|
||||||
{
|
{
|
||||||
foreach (var file in playerFiles)
|
foreach (var file in playerFiles)
|
||||||
|
{
|
||||||
container.Players.Add(await Parser.ParsePlayerAsync(file));
|
container.Players.Add(await Parser.ParsePlayerAsync(file));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tribeFiles != null)
|
if (tribeFiles != null)
|
||||||
{
|
{
|
||||||
foreach (var file in tribeFiles)
|
foreach (var file in tribeFiles)
|
||||||
|
{
|
||||||
container.Tribes.Add(await Parser.ParseTribeAsync(file));
|
container.Tribes.Add(await Parser.ParseTribeAsync(file));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
container.LinkPlayerTribe();
|
container.LinkPlayerTribe();
|
||||||
|
|
@ -85,12 +89,16 @@ namespace ArkData
|
||||||
|
|
||||||
var response = await client.GetAsync(string.Format("ISteamUser/GetPlayerSummaries/v0002/?key={0}&steamids={1}", apiKey, builder));
|
var response = await client.GetAsync(string.Format("ISteamUser/GetPlayerSummaries/v0002/?key={0}&steamids={1}", apiKey, builder));
|
||||||
if (response.IsSuccessStatusCode)
|
if (response.IsSuccessStatusCode)
|
||||||
|
{
|
||||||
using (var reader = new StreamReader(await response.Content.ReadAsStreamAsync()))
|
using (var reader = new StreamReader(await response.Content.ReadAsStreamAsync()))
|
||||||
{
|
{
|
||||||
LinkSteamProfiles(await reader.ReadToEndAsync(), lastSteamUpdateUtc, playerSteamIds);
|
LinkSteamProfiles(await reader.ReadToEndAsync(), lastSteamUpdateUtc, playerSteamIds);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
throw new System.Net.WebException("The Steam API request was unsuccessful. Are you using a valid key?");
|
throw new System.Net.WebException("The Steam API request was unsuccessful. Are you using a valid key?");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
startIndex += steamIdsCount;
|
startIndex += steamIdsCount;
|
||||||
|
|
@ -109,12 +117,16 @@ namespace ArkData
|
||||||
public Task LoadOnlinePlayersAsync(string ipString, int port)
|
public Task LoadOnlinePlayersAsync(string ipString, int port)
|
||||||
{
|
{
|
||||||
if (SteamLoaded)
|
if (SteamLoaded)
|
||||||
|
{
|
||||||
return Task.Run(() =>
|
return Task.Run(() =>
|
||||||
{
|
{
|
||||||
LinkOnlinePlayers(ipString, port);
|
LinkOnlinePlayers(ipString, port);
|
||||||
});
|
});
|
||||||
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
throw new System.Exception("The Steam user data should be loaded before the server status can be checked.");
|
throw new System.Exception("The Steam user data should be loaded before the server status can be checked.");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -52,11 +52,8 @@ namespace ArkData
|
||||||
|
|
||||||
for (var i = 0; i < Players.Count; i++)
|
for (var i = 0; i < Players.Count; i++)
|
||||||
{
|
{
|
||||||
var online_player = online.SingleOrDefault(p => p.Name == Players[i].PlayerName);
|
var online_player = online.FirstOrDefault(p => p.Name == Players[i].PlayerName);
|
||||||
if (online_player != null)
|
Players[i].Online = online_player != null;
|
||||||
Players[i].Online = true;
|
|
||||||
else
|
|
||||||
Players[i].Online = false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (SSQLServerException)
|
catch (SSQLServerException)
|
||||||
|
|
@ -74,13 +71,13 @@ namespace ArkData
|
||||||
{
|
{
|
||||||
var player = Players[i];
|
var player = Players[i];
|
||||||
player.OwnedTribes = Tribes.Where(t => t.OwnerId == player.CharacterId).ToList();
|
player.OwnedTribes = Tribes.Where(t => t.OwnerId == player.CharacterId).ToList();
|
||||||
player.Tribe = Tribes.SingleOrDefault(t => t.Id == player.TribeId);
|
player.Tribe = Tribes.FirstOrDefault(t => t.Id == player.TribeId);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var i = 0; i < Tribes.Count; i++)
|
for (var i = 0; i < Tribes.Count; i++)
|
||||||
{
|
{
|
||||||
var tribe = Tribes[i];
|
var tribe = Tribes[i];
|
||||||
tribe.Owner = Players.SingleOrDefault(p => p.CharacterId == tribe.OwnerId);
|
tribe.Owner = Players.FirstOrDefault(p => p.CharacterId == tribe.OwnerId);
|
||||||
tribe.Players = Players.Where(p => p.TribeId == tribe.Id).ToList();
|
tribe.Players = Players.Where(p => p.TribeId == tribe.Id).ToList();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -95,16 +92,21 @@ namespace ArkData
|
||||||
|
|
||||||
for (var i = 0; i < profiles.Count; i++)
|
for (var i = 0; i < profiles.Count; i++)
|
||||||
{
|
{
|
||||||
var player = Players.Single(p => p.PlayerId == profiles[i].steamid);
|
var player = Players.FirstOrDefault(p => p.PlayerId == profiles[i].steamid);
|
||||||
player.PlayerName = profiles[i].personaname;
|
if (player != null)
|
||||||
player.LastPlatformUpdateUtc = lastSteamUpdateUtc;
|
{
|
||||||
|
player.PlayerName = profiles[i].personaname;
|
||||||
|
player.LastPlatformUpdateUtc = lastSteamUpdateUtc;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var i = 0; i < playerSteamIds.Length; i++)
|
for (var i = 0; i < playerSteamIds.Length; i++)
|
||||||
{
|
{
|
||||||
var player = Players.SingleOrDefault(p => p.PlayerId == playerSteamIds[i]);
|
var player = Players.FirstOrDefault(p => p.PlayerId == playerSteamIds[i]);
|
||||||
if (player != null && player.LastPlatformUpdateUtc == DateTime.MinValue)
|
if (player != null && player.LastPlatformUpdateUtc == DateTime.MinValue)
|
||||||
|
{
|
||||||
player.NoUpdateCount = Math.Min(MAX_INVALID_COUNT, player.NoUpdateCount + 1);
|
player.NoUpdateCount = Math.Min(MAX_INVALID_COUNT, player.NoUpdateCount + 1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -38,13 +38,17 @@ namespace ArkData
|
||||||
if (playerFiles != null)
|
if (playerFiles != null)
|
||||||
{
|
{
|
||||||
foreach (var file in playerFiles)
|
foreach (var file in playerFiles)
|
||||||
|
{
|
||||||
container.Players.Add(Parser.ParsePlayer(file));
|
container.Players.Add(Parser.ParsePlayer(file));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tribeFiles != null)
|
if (tribeFiles != null)
|
||||||
{
|
{
|
||||||
foreach (var file in tribeFiles)
|
foreach (var file in tribeFiles)
|
||||||
|
{
|
||||||
container.Tribes.Add(Parser.ParseTribe(file));
|
container.Tribes.Add(Parser.ParseTribe(file));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
container.LinkPlayerTribe();
|
container.LinkPlayerTribe();
|
||||||
|
|
@ -83,12 +87,16 @@ namespace ArkData
|
||||||
|
|
||||||
var response = client.GetAsync(string.Format("ISteamUser/GetPlayerSummaries/v0002/?key={0}&steamids={1}", apiKey, builder)).Result;
|
var response = client.GetAsync(string.Format("ISteamUser/GetPlayerSummaries/v0002/?key={0}&steamids={1}", apiKey, builder)).Result;
|
||||||
if (response.IsSuccessStatusCode)
|
if (response.IsSuccessStatusCode)
|
||||||
|
{
|
||||||
using (var reader = new StreamReader(response.Content.ReadAsStreamAsync().Result))
|
using (var reader = new StreamReader(response.Content.ReadAsStreamAsync().Result))
|
||||||
{
|
{
|
||||||
LinkSteamProfiles(reader.ReadToEnd(), lastSteamUpdateUtc, playerSteamIds);
|
LinkSteamProfiles(reader.ReadToEnd(), lastSteamUpdateUtc, playerSteamIds);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
throw new System.Net.WebException("The Steam API request was unsuccessful. Are you using a valid key?");
|
throw new System.Net.WebException("The Steam API request was unsuccessful. Are you using a valid key?");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
startIndex += steamIdsCount;
|
startIndex += steamIdsCount;
|
||||||
|
|
@ -110,7 +118,9 @@ namespace ArkData
|
||||||
LinkOnlinePlayers(ipString, port);
|
LinkOnlinePlayers(ipString, port);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
throw new System.Exception("The Steam user data should be loaded before the server status can be checked.");
|
{
|
||||||
|
throw new Exception("The Steam user data should be loaded before the server status can be checked.");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue