Example #1
0
        private void GoToNextTurnover(GameSession gameSession)
        {
            Console.WriteLine("Переход на следующий оборот");
            GlobalIterationIndex = 0;
            NumberRepetitions    = 0;
            if (WordsOnOneTurn.Count == 0)
            {
                NumberVoidTurn++;
            }
            SearchedWord.AddRange(WordsOnOneTurn);
            var lenghtMiddleWord = WordsOnOneTurn.Count > 2 ? WordsOnOneTurn.OrderByDescending(word => word.Length)
                                   .ToArray()[WordsOnOneTurn.Count / 2].Length : 3;

            MoveInDirection(gameSession, (lenghtMiddleWord + 1) * 8, TypeMove.Right);
            AllowedNumberRepetitions = WordsOnOneTurn.Count > 10 ?  WordsOnOneTurn.Count / 2  : 5;
            WordsOnOneTurn           = new List <string>();
        }
Example #2
0
        private void EndSearchWord(GameSession gameSession, string word)
        {
            if (LastTypeMove == TypeMove.Up)
            {
                MoveInDirection(gameSession, 7, TypeMove.Down);
            }
            else
            {
                MoveInDirection(gameSession, 5, TypeMove.Down);
            }
            LengthOneTurn = StartTurn ? GlobalIterationIndex : LengthOneTurn;
            if ((SearchedWord.Contains(word) || WordsOnOneTurn.Contains(word)) && word != "")
            {
                NumberRepetitions++;
                StartTurn = false;
                Console.WriteLine("Найденно повторное слово: " + word);
            }
            else if (word != "")
            {
                WordsOnOneTurn.Add(word);
                Console.WriteLine("Найденно слово: " + word);
            }
            var moves = NumberMoveOnRight - NumberMoveOnLeft;

            if (moves >= 0)
            {
                MoveInDirection(gameSession, moves, TypeMove.Left);
            }
            else
            {
                moves = Math.Abs(moves);
                MoveInDirection(gameSession, moves, TypeMove.Right);
            }
            NumberMoveOnRight = 0;
            NumberMoveOnLeft  = 0;
        }