Forum.iFiction.Ru

iFiction.Ru · ifHub · FAQ · IFWiki · QSP · URQ · INSTEAD · AXMA

форум об interactive fiction, текстовых приключенческих играх и всём таком...

Вы не зашли.

   #1
03.11.2017 12:47

Enola
Участник (+177, -74)
Зарегистрирован: 20.11.2015
Сообщений: 114

Как сделать что-то или "я вот не понимаю"

Станислав Соловьев написал:

Захотел сделать нечто вроде парсерной мини-игры, чтобы игрок вводил сообщения и получал на них ответ. Естественно, мне понадобился союз "или", чтобы расширить варианты вводимых ответов. Его я использовал в виде "or", потом попробовал вариант "||", в обоих случаях результат один -- на экране выводится текст результата еще до того, как введено какое-либо значение. Если сделать два блока ЕСЛИ-ТО, в которых предложить два варианта в зависимости от введенных данных, то все равно выводится первый ответ на вопрос.

Введите сообщение:

<<input '105' $gg_say>>

<<if $gg_say.toLowerCase() eq 'привет'>>

-- Здравствуй. Как скоро ты будешь на месте?

<<endif>>

<<if $gg_say.toLowerCase() eq 'как дела?'>>

-- Пока все хорошо. А ты как?

<<endif>>

Мне кажется, что все логично, но я не программист, поэтому у меня такие простые вещи почему-то не срабатывают. Если спросить, "как дела?", то на экране появится сразу два ответа:
-- Здравствуй. Как скоро ты будешь на месте?
-- Пока все хорошо. А ты как?

Как быть? Что делать?

Кажется, я нашел достаточно интересное решение, используя массивы и циклы!

Код:

<<input '105' $gg_say>>

<<if $gg_say.toLowerCase() eq 'привет'>>

-- Здравствуй. Как скоро ты будешь на месте?

<<elseif $gg_say.toLowerCase() eq 'как дела?'>>

-- Пока все хорошо. А ты как?
<<endif>>

Прочитайте главу "Отображение текста по условию" в руководстве пользователя.

Неактивен

Powered by PunBB
© copyright 2001–2018 iFiction.Ru