Skip to content

Commit

Permalink
Polishing the last fix
Browse files Browse the repository at this point in the history
  • Loading branch information
MatrikMoon committed Feb 10, 2023
1 parent 713675b commit 63357f6
Showing 1 changed file with 12 additions and 3 deletions.
15 changes: 12 additions & 3 deletions TournamentAssistantUI/UI/MatchPage.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -177,6 +177,15 @@ private User[] GetPlayersInMatch()
return MainPage.Client.State.Users.Where(x => x.ClientType == User.ClientTypes.Player && Match.AssociatedUsers.Contains(x.Guid)).ToArray();
}

private User[] GetPlayersToSync()
{
if (MainPage.Client.State.ServerSettings.EnableTeams && _checkedTeams.Count > 0)
{
return GetPlayersInMatch().Where(x => _checkedTeams.Select(y => y.Id).Contains(x.Team?.Id)).ToArray();
}
return GetPlayersInMatch();
}

private void PlayerListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
_ = Dispatcher.Invoke(async () =>
Expand Down Expand Up @@ -726,7 +735,7 @@ private Task DoDualSync()
Func<bool, Task> allPlayersSynced = PlayersCompletedSync;
if (locationSuccess)
{
var players = GetPlayersInMatch().Where(x => _checkedTeams.Select(y => y.Id).Contains(x.Team?.Id)).ToArray();
var players = GetPlayersToSync();
Logger.Debug("LOCATED ALL PLAYERS");
LogBlock.Dispatcher.Invoke(() => LogBlock.Inlines.Add(new Run("Players located. Waiting for green screen...\n") { Foreground = Brushes.Yellow })); ;
Expand Down Expand Up @@ -836,7 +845,7 @@ await SendToPlayers(new Packet
{
_syncCancellationToken?.Cancel();
_syncCancellationToken = new CancellationTokenSource(45 * 1000);
var players = GetPlayersInMatch().Where(x => _checkedTeams.Select(y => y.Id).Contains(x.Team?.Id)).ToArray();
var players = GetPlayersToSync();
//While not 20 seconds elapsed and not all players have locations
while (!_syncCancellationToken.Token.IsCancellationRequested && !players.All(x => x.StreamScreenCoordinates != null))
Expand Down Expand Up @@ -881,7 +890,7 @@ await SendToPlayers(new Packet
List<Guid> _playersWhoHaveDownloadedQrImage = new List<Guid>();
_syncCancellationToken?.Cancel();
_syncCancellationToken = new CancellationTokenSource(45 * 1000);
var players = GetPlayersInMatch().Where(x => _checkedTeams.Select(y => y.Id).Contains(x.Team?.Id)).ToArray();
var players = GetPlayersToSync();
Func<Response.ImagePreloaded, Guid, Task> qrImagePreloaded = (Response.ImagePreloaded a, Guid from) =>
{
Expand Down

0 comments on commit 63357f6

Please sign in to comment.