public void MakeGameLoop() { string receivedFromUser; int[] result = new int[k_Two]; if (m_GameEngineInstance.GetCurrentPlayer().m_IsHuman) { Console.WriteLine("Player" + m_GameEngineInstance.GetCurrentPlayer().m_Sign + ", Please enter coordinates as (x,y):"); receivedFromUser = Console.ReadLine(); while (!CheckReceivedValues(receivedFromUser) && !m_IsEndOfGame) { Console.WriteLine("Invalid input! Please enter coordinates as (x,y):"); // We need to check coordinates format to avoid exeptions. receivedFromUser = Console.ReadLine(); } if (!m_IsEndOfGame) { m_CurrX = int.Parse(receivedFromUser.Split(',')[k_Zero]) - k_One; m_CurrY = int.Parse(receivedFromUser.Split(',')[k_One]) - k_One; } } else { // AI turn generation result = m_GameEngineInstance.GenerateCoordinates(); m_CurrX = result[k_Zero]; m_CurrY = result[k_One]; } if ((!m_IsEndOfGame) && (m_GameEngineInstance.IsLegalCoordinates(m_CurrX, m_CurrY) && m_GameEngineInstance.IsEmptyCell(m_CurrX, m_CurrY))) { m_GameEngineInstance.MakeTurn(m_CurrX, m_CurrY); m_GameEngineInstance.SwitchPlayer(); } }