Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
Топ:
Выпускная квалификационная работа: Основная часть ВКР, как правило, состоит из двух-трех глав, каждая из которых, в свою очередь...
Определение места расположения распределительного центра: Фирма реализует продукцию на рынках сбыта и имеет постоянных поставщиков в разных регионах. Увеличение объема продаж...
Марксистская теория происхождения государства: По мнению Маркса и Энгельса, в основе развития общества, происходящих в нем изменений лежит...
Интересное:
Берегоукрепление оползневых склонов: На прибрежных склонах основной причиной развития оползневых процессов является подмыв водами рек естественных склонов...
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Финансовый рынок и его значение в управлении денежными потоками на современном этапе: любому предприятию для расширения производства и увеличения прибыли нужны...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
По мере того, как истории становятся длиннее, они становятся все более запутанными, чтобы сохранять организованность без какой-либо дополнительной структуры.
Узлы могут включать в себя подразделы, называемые «стежки». Они отмечены с помощью одного знака равенства.
=== the_orient_express ===
= in_first_class
...
= in_third_class
...
= in_the_guards_van
...
= missed_the_train
...
Например, можно использовать узел для сцены и швы для событий внутри сцены.
Швы имеют уникальные имена
Стежок может быть перенаправлен на использование его «адреса».
* [Travel in third class]
-> the_orient_express.in_third_class
* [Travel in the guard's van]
-> the_orient_express.in_the_guards_van
Первый стежок по умолчанию
Отклонение к узлу, который содержит стежки, переключится на первый стежок в узле. Так:
* [Travel in first class]
"First class, Monsieur. Where else?"
-> the_orient_express
такой же как:
* [Travel in first class]
"First class, Monsieur. Where else?"
-> the_orient_express.in_first_class
(... если мы не переместим порядок стежков внутри узла!)
Вы также можете включить содержимое в верхней части узла вне любой строчки. Тем не менее, вы должны помнить, чтобы отклониться от него - движок не будет автоматически вводить первый стежок, как только он проработает содержимое заголовка.
=== the_orient_express ===
We boarded the train, but where?
* [First class] -> in_first_class
* [Second class] -> in_second_class
= in_first_class
...
= in_second_class
...
Местные отводы
Изнутри узла вам не нужно использовать полный адрес для стежка.
-> the_orient_express
=== the_orient_express ===
= in_first_class
I settled my master.
* [Move to third class]
-> in_third_class
= in_third_class
I put myself in third.
Это означает, что стежки и узлы не могут иметь общие имена, но несколько узлов могут содержать одно и то же имя стежка. (Так что и у Восточного Экспресса, и у Монголии СС может быть первый класс.)
Компилятор предупредит вас, если используются неоднозначные имена.
Файлы сценариев могут быть объединены
Вы также можете разделить ваш контент на несколько файлов, используя оператор включения.
INCLUDE newspaper.ink
INCLUDE cities/vienna.ink
INCLUDE journeys/orient_express.ink
Операторы включения всегда должны идти вверху файла, а не внутри узлов.
Нет никаких правил относительно того, в какой файл должен быть направлен узел. (Другими словами, разделение файлов не влияет на пространство имен игры).
5) Различные варианты
Выбор может быть использован только один раз
По умолчанию каждый выбор в игре может быть выбран только один раз. Если в вашей истории нет петель, вы никогда не заметите такого поведения. Но если вы используете циклы, вы быстро заметите, что ваши варианты исчезают...
=== find_help ===
You search desperately for a friendly face in the crowd.
* The woman in the hat[?] pushes you roughly aside. -> find_help
* The man with the briefcase[?] looks disgusted as you stumble past him. -> find_help
производит:
You search desperately for a friendly face in the crowd.
1: The woman in the hat?
2: The man with the briefcase?
> 1
The woman in the hat pushes you roughly aside.
You search desperately for a friendly face in the crowd.
1: The man with the briefcase?
>
... и в следующем цикле у вас не останется вариантов.
Резервный выбор
Приведенный выше пример останавливается там, где это происходит, потому что следующий выбор заканчивается ошибкой во время выполнения.
> 1
The man with the briefcase looks disgusted as you stumble past him.
You search desperately for a friendly face in the crowd.
Runtime error in tests/test.ink line 6: ran out of content. Do you need a '-> DONE' or '-> END'?
Мы можем решить это с помощью «запасного варианта». Резервные варианты никогда не отображаются игроку, а «выбираются» игрой, если других вариантов не существует.
Резервный выбор - это просто «выбор без выбора текста»:
* -> out_of_options
И, слегка нарушив синтаксис, мы можем сделать выбор по умолчанию с содержанием в нем, используя «стрелку выбора, затем»:
* ->
Mulder never could explain how he got out of that burning box car. -> season_2
Пример резервного варианта
Добавление этого в предыдущий пример дает нам:
=== find_help ===
You search desperately for a friendly face in the crowd.
* The woman in the hat[?] pushes you roughly aside. -> find_help
* The man with the briefcase[?] looks disgusted as you stumble past him. -> find_help
* ->
But it is too late: you collapse onto the station platform. This is the end.
-> END
и производит:
You search desperately for a friendly face in the crowd.
1: The woman in the hat?
2: The man with the briefcase?
> 1
The woman in the hat pushes you roughly aside.
You search desperately for a friendly face in the crowd.
1: The man with the briefcase?
> 1
The man with the briefcase looks disgusted as you stumble past him.
You search desperately for a friendly face in the crowd.
But it is too late: you collapse onto the station platform. This is the end.
Липкий выбор
Конечно, поведение «один раз» - это не всегда то, что мы хотим, поэтому у нас есть второй выбор: «липкий» выбор. Липкий выбор - просто тот, который не используется и отмечен +маркером.
=== homers_couch ===
+ [Eat another donut]
You eat another donut. -> homers_couch
* [Get off the couch]
You struggle up off the couch to go and compose epic poetry.
-> END
Выбор по умолчанию тоже может быть липким.
=== conversation_loop
* [Talk about the weather] -> chat_weather
* [Talk about the children] -> chat_children
+ -> sit_in_silence_again
Условный выбор
Вы также можете включить или выключить выбор вручную. В чернилах достаточно много логики, но простейшие тесты - «видел ли игрок определенную часть контента».
Каждый узел / строчка в игре имеет уникальный адрес (поэтому его можно перенаправить на), и мы используем тот же адрес, чтобы проверить, был ли виден этот фрагмент контента.
* { not visit_paris } [Go to Paris] -> visit_paris
+ { visit_paris } [Return to Paris] -> visit_paris
* { visit_paris.met_estelle } [ Telephone Mme Estelle ] -> phone_estelle
Обратите внимание, что тест knot_nameверен, если какой-либо шов внутри этого узла был замечен.
Также обратите внимание, что условные выражения не переопределяют однократное поведение параметров, поэтому вам все равно понадобятся липкие параметры для повторяющихся вариантов.
|
|
|
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!