private int setsToGo; // Сетов в матче public void StartGame() // Начало нового матча { IsOn = true; // Флаг матча // Панели mainWindow.PlayerTab.IsEnabled = false; settingsPanelLogic.PanelHide(); // Прячем панель настроек infoPanelLogic.PanelShow(); // Показываем инфо-панель BoardPanelLogic.PanelShow(); // Показываем панель секторов PlayerOverview.ClearPanel(); // Очищаем панель данных игроков // Настройка матча pointsToGo = settingsPanelLogic.PointsToGo(); // Получаем количество очков лега setsToGo = settingsPanelLogic.SetsToGo(); // Получаем количество легов сета legsToGo = settingsPanelLogic.LegsToGo(); // Получаем количество сетов матча // Игроки player1 = new Player("Player1", (int)mainWindow.Player1NameCombobox.SelectedValue, settingsPanelLogic.Player1Name(), mainWindow.Player1Help, mainWindow.Player1PointsHelp, mainWindow.Player1SetsWon, mainWindow.Player1LegsWon, mainWindow.Player1Points, pointsToGo); // Игрок 1 player2 = new Player("Player2", (int)mainWindow.Player2NameCombobox.SelectedValue, settingsPanelLogic.Player2Name(), mainWindow.Player2Help, mainWindow.Player2PointsHelp, mainWindow.Player2SetsWon, mainWindow.Player2LegsWon, mainWindow.Player2Points, pointsToGo); // Игрок 2 playerOnThrow = settingsPanelLogic.WhoThrowFirst(player1, player2); // Кто первый бросает playerOnLeg = playerOnThrow; // Чей первый лег // Инфо-панель infoPanelLogic.PanelNewGame(pointsToGo, legsToGo.ToString(), setsToGo.ToString(), player1, player2, playerOnThrow); // Новая инфопанель infoPanelLogic.HelpCheck(player1); // Проверка помощи infoPanelLogic.HelpCheck(player2); // Проверка помощи // Текстовая панель infoPanelLogic.TextLogAdd(new StringBuilder() .Append("First to ") .Append(setsToGo) .Append(" sets in ") .Append(legsToGo) .Append(" legs with ") .Append(pointsToGo) .Append(" points").ToString()); infoPanelLogic.TextLogAdd("Game on"); infoPanelLogic.TextLogAdd(new StringBuilder().Append(playerOnThrow.Name).Append(" on throw:").ToString()); }
private void Throw(object sender, RoutedEventArgs e) // Бросок { BoardPanelLogic.PanelHide(); // Скрываем панель секторов game.NextThrow(new Throw(sender)); if (game.IsOn) // Если игра продолжается { BoardPanelLogic.PanelShow(); // Показываем панель секторов и бросаем дальше } }
private void EndGame() // Конец матча { IsOn = false; // Флаг матча // Сообщение WinnerWindowLogic.ShowWinner(playerOnThrow, player1, player2, allMatchThrows); // Показываем окно победителя и статистику // Панели mainWindow.PlayerTab.IsEnabled = true; infoPanelLogic.PanelHide(); // Прячем инфопанель BoardPanelLogic.PanelHide(); // Прячем панель секторов settingsPanelLogic.PanelShow(); // Показываем панель настроек // Сохранение в БД DBwork.AfterMatchSave(statisticsWindowLogic); DBwork.UpdateAchieves(statisticsWindowLogic); // Обнуление коллекций ClearCollections(); // Зануляем коллекции бросков }
public void AbortGame() // Отмена текущего матча { IsOn = false; // Флаг матча ClearCollections(); // Зануляем коллекции бросков // Панели mainWindow.PlayerTab.IsEnabled = true; infoPanelLogic.PanelHide(); // Прячем инфопанель BoardPanelLogic.PanelHide(); // Прячем панель секторов settingsPanelLogic.PanelShow(); // Показываем панель настроек infoPanelLogic.TextLogClear(); // Очищаем текстовую панель // Окно var window = new Windows.AbortWindow { Owner = mainWindow }; window.ShowDialog(); // Показываем окно отмены матча }