// vart vill spelare lägga sin mark public static void Main() { var markSpot = new Markspot(); var updateBoard = new UpdateBoard(); var gameOutcome = new GameOutcome(); while (winner != 1) { winner = gameOutcome.IsItWin(); updateBoard.UpdatingBoard(); markSpot.PlaceMark(); // Places the player mark (X or O) on the spot they choose gameOutcome.IsItWin(); howManyTurnsPlayed++; if (howManyTurnsPlayed == 9 && winner != 1) { gameOutcome.Draw(); winner = 0; } } // showBoard.Board(); // show boards // playing.whicePlayerToPlay(); // What player turn is it // markSpot.placeMark(); // Places the player mark (X or O) on the spot they choose //choice }
public ActionResult Put(UpdateBoard request, int id) { var board = _boards.SingleOrDefault(b => b.Id == id); if (board is null) { return(NotFound()); } board.Name = request.Name; board.Description = request.Description; return(Ok()); }
private void ToolBoardUpdate_Click(object sender, EventArgs e) { Form frm = new UpdateBoard(); frm.ShowDialog(); }
static void Main(string[] args) { const string separator = "================================================================================================================================================="; SharedLog sharedLog = new SharedLog(); sharedLog.WriteLog(separator, "", SharedLog.FileName.Date, SharedLog.LogType.Message); sharedLog.WriteLog("Iniciando processo...", "", SharedLog.FileName.Date, SharedLog.LogType.Message); sharedLog.WriteLog("Recuperando informações de configuração.", "", SharedLog.FileName.Date, SharedLog.LogType.Message); // Recupera configurações necessárias. ConfigProperties configProperties = new ConfigProperties().readJsonConfigFile(); if (!configProperties.Valid) { sharedLog.WriteLog(configProperties.Notifications.FirstOrDefault().Message, string.Empty, SharedLog.FileName.Date, SharedLog.LogType.Error); endProcess(sharedLog); return; } // Realiza todas validações necessárias para garantir que a classe está consistente. configProperties.ValidateReadingTextFile(); if (configProperties.ReadingTextFile.Invalid) { sharedLog.WriteLog(configProperties.Notifications.FirstOrDefault().Message, "", SharedLog.FileName.Date, SharedLog.LogType.Error); endProcess(sharedLog); return; } sharedLog.WriteLog($@"Informações recuperadas com sucesso: [Caminho do arquivo:] {configProperties.ReadingTextFile.FilePath} [Nome do arquivo:] {configProperties.ReadingTextFile.FileName}.", "", SharedLog.FileName.Date, SharedLog.LogType.Message); sharedLog.WriteLog("Iniciando leitura do arquivo para recuperação das informações.", "", SharedLog.FileName.Date, SharedLog.LogType.Message); Estimate estimate = new Estimate(); estimate.Topics = ReadFileText.readTextFileToObject(configProperties); // Recupera o primeiro tópico que possa estar com erro. var topicWithError = estimate.Topics.Where(t => t.Invalid).ToList().FirstOrDefault(); if (topicWithError != null) { sharedLog.WriteLog(topicWithError.Notifications.FirstOrDefault().Message, "", SharedLog.FileName.Date, SharedLog.LogType.Error); endProcess(sharedLog); return; } if (estimate.Topics == null) { sharedLog.WriteLog("Erro ao realizar leitura do arquivo.", "", SharedLog.FileName.Date, SharedLog.LogType.Message); endProcess(sharedLog); return; } else { sharedLog.WriteLog("Leitura do arquivo e recuperação das informações realizado com sucesso.", "", SharedLog.FileName.Date, SharedLog.LogType.Message); } // Calcula tempo total para desenvolvimento. estimate.sumHoursDevelopment(); // Calcula tempo total para testes estimate.sumHoursTest(); sharedLog.WriteLog($@"Horas desenvolvimento: {estimate.TotalHoursDevelopment}.", "", SharedLog.FileName.Date, SharedLog.LogType.Message); sharedLog.WriteLog($@"Horas teste: {estimate.TotalHoursTest}.", "", SharedLog.FileName.Date, SharedLog.LogType.Message); sharedLog.WriteLog($@"Concluído processo de análise da estimativa de horas.", "", SharedLog.FileName.Date, SharedLog.LogType.Message); #region Processo para o Quadro. sharedLog.WriteLog($@"Iniciando processo para manipulação do quadro.", "", SharedLog.FileName.Date, SharedLog.LogType.Message); // Valida se está configurado para manipular o quadro. if (!configProperties.CreateBoard.Create) { sharedLog.WriteLog("Não está configurado para realizar a manipulação do quadro.", "", SharedLog.FileName.Date, SharedLog.LogType.Message); endProcess(sharedLog); return; } Authentication authentication = new Authentication(configProperties.CreateBoard.Key, configProperties.CreateBoard.Token); var trello = authentication.Authenticate(); if (authentication.Invalid) { sharedLog.WriteLog($"Erro ao realizar autenticação do processo. Retorno: {authentication.Notifications.FirstOrDefault().Message}.", "", SharedLog.FileName.Date, SharedLog.LogType.Error); endProcess(sharedLog); return; } sharedLog.WriteLog($"Iniciando processo de atualização do quadro.", "", SharedLog.FileName.Date, SharedLog.LogType.Message); var updateTemplateBoard = new UpdateTemplateBoard ( configProperties.CreateBoard.Key, configProperties.CreateBoard.Token, configProperties.CreateBoard.IdBoard, estimate, trello ); UpdateBoard updateBoard = new UpdateBoard(); updateBoard.UpdateTemplateBoard(updateTemplateBoard); if (updateTemplateBoard.Invalid) { sharedLog.WriteLog($"Erro ao realizar atualização do quadro. Retorno: {updateTemplateBoard.Notifications.FirstOrDefault().Message}.", "", SharedLog.FileName.Date, SharedLog.LogType.Error); endProcess(sharedLog); return; } sharedLog.WriteLog($"Concluído processo de criação dos cartões no quadro {updateTemplateBoard.TemplateBoard.Name}.", "", SharedLog.FileName.Date, SharedLog.LogType.Message); sharedLog.WriteLog($"Cartões criados:", "", SharedLog.FileName.Date, SharedLog.LogType.Message); int countCards = 0; foreach (var card in updateTemplateBoard.Cards) { countCards++; sharedLog.WriteLog($"{countCards} - {card.Name}", "", SharedLog.FileName.Date, SharedLog.LogType.Message); } sharedLog.WriteLog($"Concluído processo de atualização do quadro {updateTemplateBoard.TemplateBoard.Name}.", "", SharedLog.FileName.Date, SharedLog.LogType.Message); #endregion endProcess(sharedLog); }
public void SetUpdateEvent(UpdateBoard callback) { _updateEvent = callback; }
public void UpdateLeaderboard() { UpdateBoard?.Invoke(); }