private void Tournament_KeyUp(object sender, KeyEventArgs e) { if (e.Key != Key.Space) { return; } if (_tournament.EndOfTheGame()) { return; } if (_tournament is DoubleEliminationTournament doubleEliminationTournament) { doubleEliminationTournament.PlayGame(ReturnWinner); List <Participant> bracket = _tournament.GetBracket(); DrawBracket(UpperBracketCanvas, bracket); bracket = doubleEliminationTournament.GetLowerBracket(); DrawBracket(LowerBracketCanvas, bracket); } else { _tournament.PlayGame(ReturnWinner); List <Participant> bracket = _tournament.GetBracket(); DrawBracket(UpperBracketCanvas, bracket); } }
private void Start_Click(object sender, RoutedEventArgs e) { var participantsList = new List <string>(); foreach (var item in PartisipantsList.Items) { participantsList.Add(item.ToString()); } if (SingleElimination.IsChecked == true) { _tournament = new SingleEliminationTournament(participantsList); Tournament.KeyUp += SingleEliminationTournament_KeyUp; } else { _tournament = new DoubleEliminationTournament(participantsList); Tournament.KeyUp += DoubleEliminationTournament_KeyUp; } HideElements(); List <Participant> bracket = _tournament.GetBracket(); BracketDrawing.DrawSingleElimination(_tournament, UpperBracketCanvas); }
public static void DrawSingleElimination(SingleEliminationTournament tournament, Canvas canvas) { List <Participant> bracket = tournament.GetBracket(); DrawBracket(canvas, bracket); }