예제 #1
0
        public string Analyse(Phrase phrase, long chatId)
        {
            if (_currentRoom == null)
            {
                CreateHome();
            }

            if (phrase.HasWord("где") && phrase.HasWord("ты"))
            {
                return(_currentRoom.Description);
            }

            if (_currentRoom.TryToFindBeer(phrase.ToString()))
            {
                _beersFound++;
                return($"{_currentRoom.BeerFindMessage} Ура! Я нашел {_beersFound} из 7 пив!");
            }

            if (phrase.IsEmpty())
            {
                return(null);
            }

            if (_commands.All(c => c != phrase.FirstWord.ToString()))
            {
                return(null);
            }

            var direction = ConvertDirectionToEnum(phrase.FirstWord.ToString());

            if (_currentRoom.CanMove(direction))
            {
                _currentRoom = _currentRoom.Doors[direction];
                return(_currentRoom.Description);
            }

            if (_currentRoom.HasMessage(direction))
            {
                return(_currentRoom.NoWayMessages[direction]);
            }
            else
            {
                return("Не могу!");
            }
        }
예제 #2
0
 public void HasWordTest()
 {
     _phrase.HasWord("первое").Should().BeTrue();
     _phrase.HasWord("второе").Should().BeTrue();
     _phrase.HasWord("третье").Should().BeTrue();
     _phrase.HasWord("четвертое").Should().BeTrue();
     _phrase.HasWord("пятое").Should().BeTrue();
     _phrase.HasWord("шестое").Should().BeTrue();
     _phrase.HasWord("седьмое").Should().BeFalse();
 }
예제 #3
0
        public string Analyse(Phrase phrase, long chatId)
        {
            if (phrase.ToString() == "start")
            {
                return("Вечер в хату, часик в радость!");
            }

            if (phrase.HasWord("гусь"))
            {
                return("Сам ты гусь!");
            }

            if (phrase.HasAnyWord("пукнуть", "пукни"))
            {
                return("\u2601");
            }

            if (phrase.HasWord("зигани"))
            {
                return("o/");
            }

            if (phrase.HasWord("спасибо"))
            {
                return("Пожалуйста");
            }

            if (phrase.HasWord("привет"))
            {
                return("Привет, козлик!");
            }

            if (phrase.HasAnyWord("300", "триста"))
            {
                return("Отсоси у тракториста!!! У ха ха ха ха!!!!");
            }

            if (phrase.HasAnyWord("верни", "вернем", "отдай") && phrase.HasAnyWord("коня", "лошадь"))
            {
                return("Не брал я твоего коня!!!");
            }

            if (phrase.HasWord("телефон"))
            {
                return("Я разбил свой телефон((( Хнык((");
            }

            if (phrase.HasAnyWord("пиво", "бухать", "водку") && !phrase.HasWord("не"))
            {
                if (phrase.HasAnyWord("пойдем", "пошли", "идем"))
                {
                    return("Пошли!");
                }
                if (phrase.HasWord("давай"))
                {
                    return("Давай!");
                }
            }

            if (phrase.IsEmpty())
            {
                return(null);
            }

            if (phrase.LastWord.ToString() == "да")
            {
                return("Пизда!");
            }

            if (phrase.LastWord.ToString() == "нет")
            {
                return("Пидора ответ!");
            }

            return(null);
        }