|
|
--[[
|
|
|
Здесь игрок получает адреса всех ключевых локаций первой части
|
|
|
]]
|
|
|
door_wright = obj {
|
|
|
var {
|
|
|
locked = true;
|
|
|
};
|
|
|
nam = "door_wright";
|
|
|
disp = "Дверь";
|
|
|
locked = true;
|
|
|
act = function(s)
|
|
|
if (s.locked) then
|
|
|
walkin "wright_entry_dlg";
|
|
|
end;
|
|
|
return true;
|
|
|
end;
|
|
|
dsc = function(s)
|
|
|
if (s.locked) then
|
|
|
return [[ Обшарпанная деревянная {дверь}, ведущая в дом, заперта изнутри. ^ ]];
|
|
|
return [[Обшарпанная деревянная {дверь}, ведущая в дом, заперта изнутри. ]];
|
|
|
else
|
|
|
return [[ Входная дверь дома открыта. ^ ]];
|
|
|
return [[Обшарпанная деревянная {дверь}, ведущая в дом, незаперта. ]];
|
|
|
end;
|
|
|
end;
|
|
|
};
|
|
|
|
|
|
char_wright_home = obj {
|
|
|
var {
|
|
|
known = false;
|
|
|
documents = false;
|
|
|
};
|
|
|
nam = "char_wright_home";
|
|
|
disp = "Джек Райт";
|
|
|
dsc = function(s)
|
|
|
if (s.documents) then
|
|
|
return [[ ^{Джек Райт} с интересом рассматривает схемы, которые вы ему отдали^ ]];
|
|
|
return [[За столом сидит {Джек Райт} и с интересом рассматривает схемы, которые вы ему отдали. ]];
|
|
|
else
|
|
|
return [[ ^Вы видите {молодого человека} одетого в недорогой, но опрятный костюм. ^ ]];
|
|
|
if (s.known) then
|
|
|
return [[За столом сидит {Джек Райт}, неспешно просматривая какие-то бумаги. ]];
|
|
|
else
|
|
|
return [[За столом сидит {молодой человек}, неспешно просматривающий какие-то бумаги. ]];
|
|
|
end;
|
|
|
end;
|
|
|
end;
|
|
|
act = function(s)
|
|
|
walkin(wright_dlg);
|
|
|
end;
|
|
|
};
|
|
|
|
|
|
wright_dlg = dlg {
|
|
|
var {
|
|
|
state = 1;
|
|
|
};
|
|
|
nam = "wright_dlg";
|
|
|
disp = "Джек Райт";
|
|
|
state = 1;
|
|
|
enter = function(s)
|
|
|
--Небольшой костылик - вырубаем проверку на пустой диалог. Логика тут довольно запутанная и движок скорее всего ниасилит все условия
|
|
|
end;
|
|
|
entered = function(s)
|
|
|
if (atlantis_found and submarine_leviathan.air_level > 400000 and submarine_leviathan.circuit_breaks == 0 and submarine_leviathan.power_on) then
|
|
|
psub('leviathan_restored');
|
|
|
return [[
|
|
|
"Привет".
|
|
|
]];
|
|
|
elseif (s.state == 1) then
|
|
|
--First meeting
|
|
|
psub('first_visit');
|
|
|
return [[
|
|
|
"Добрый день. Я Джек Райт. Майкл мой отец, но он пропал несколько лет назад".
|
|
|
]];
|
|
|
return [[Перед вами молодой человек, одетый в недорогой, но опрятный костюм. Его бледное лицо украшает короткая темная борода и пышные усы. Темные волосы коротко острижены. Серые глаза с интересом разглядывают вас. Он протягивает вам руку и представляется: "Добрый день. Мое имя -- Джек Райт. Майкл -- мой отец, но он пропал несколько лет назад". ]];
|
|
|
elseif (s.state == 2) then
|
|
|
--Documents not given
|
|
|
psub('ask_documents');
|
|
|
return [[
|
|
|
"Привет. Ты обещал какие-то документы принести".
|
|
|
]];
|
|
|
return [[Джек Райт отвлекается от газеты: "Добрый день. Вы обещали принести какие-то документы". ]];
|
|
|
elseif (s.state == 3) then
|
|
|
--Documents given
|
|
|
if (not leviathan_discovered) then
|
|
|
psub('checking_documents');
|
|
|
return [[
|
|
|
"Привет. Я пока больше ничего не нашел, приходи позже".
|
|
|
]];
|
|
|
return [[Джек Райт отвлекается от документов: "Добрый день. Если вы по поводу документов, то я еще ничего не нашел". ]];
|
|
|
else
|
|
|
s.state = 5;
|
|
|
warehouse32_found = true;
|
|
|
psub('warehouse_discovered');
|
|
|
return [[
|
|
|
"Привет, я нашел, где находится склад 32".
|
|
|
]];
|
|
|
return [[Джек Райт отвлекается от документов: "Добрый день. У меня хорошие новости. Я нашел склад 32", - он достает карту города и показывает вам место. ]];
|
|
|
end;
|
|
|
elseif (s.state == 4) then
|
|
|
--Documents taken back
|
|
|
psub('ask_documents2');
|
|
|
return [[
|
|
|
"Привет. Если вернешь бумаги, я продолжу поиски".
|
|
|
]];
|
|
|
return [[Джек Райт отвлекается от газеты: "Добрый день. Я хотел бы еще раз вглянуть на эти бумаги". ]];
|
|
|
elseif (s.state == 5) then
|
|
|
psub('empty');
|
|
|
return [[
|
|
|
"Привет".
|
|
|
]];
|
|
|
return [[Джек Райт отвлекается от газеты: "Добрый день". ]];
|
|
|
elseif (s.state == 6) then
|
|
|
psub('warehouse_discovered2');
|
|
|
return [[
|
|
|
"Привет".
|
|
|
]];
|
|
|
return [[Джек Райт отвлекается от газеты: "Добрый день". ]];
|
|
|
elseif (s.state == 7) then
|
|
|
psub('warehouse_discovered3');
|
|
|
return [[
|
|
|
"Привет".
|
|
|
]];
|
|
|
return [[Джек Райт отвлекается от газеты: "Добрый день". ]];
|
|
|
end;
|
|
|
end;
|
|
|
phr = {
|
|
|
{tag='first_visit'};
|
|
|
{"У меня есть кое-какие документы и этот адрес. Возможно они помогут понять, что произошло и куда пропали мой и твой отец. ", [[
|
|
|
"Я просмотрел много материала. Тогда пропало больше двух десятков сотрудников Вестхейвен Трансоушен, но конкретнее я ничего сказать не могу. Если покажешь мне свои бумаги, возможно я смогу что-то сказать".
|
|
|
]], code [[wright_dlg.state = 2; psub('ask_documents'); ]]};
|
|
|
{"Мое имя -- Дэвид Дрейк. Мне удалось найти кое-какие документы в одном из тайников отца. Этот адрес был среди них. Вы что-то знаете о судьбе моего отца? ", [[Джек вздыхает: "Это бесполезно. Я изучил практически все, до чего сумел дотянуться - газеты, судебные дела. И ничего - никаких зацепок. Компания обанкротилась, руководители пропали". ]], code [[wright_dlg.state = 2; psub('ask_documents'); ]]};
|
|
|
{200, tag='ask_documents'};
|
|
|
{always = true, "[Отдать документы Джеку]", [[
|
|
|
Джек забирает бумаги из ваших рук и тщательно их рассматривает. Через некоторое время он говорит: "Док 2 мне знаком. Отец там часто бывал. Остальные - затрудняюсь ответить. Если оставишь документы мне, я попробую поискать".
|
|
|
]], code[[
|
|
|
{always = true, "[Отдать документы]Посмотрите это. Не думаю, что вы это видели. ", [[Джек нехотя забирает бумаги из ваших рук и бегло их осматривает. Пожимая плечами, он комментирует: "Ничего интересного, просто планы старых зданий. Док 2? Отец там часто бывал, впрочем не думаю, что после 10 лет там что-то осталось. Если хотите - можете оставить документы, я попробую разузнать побольше". ]], code [[
|
|
|
dock_found = true;
|
|
|
wright_dlg.state = 3;
|
|
|
remove(item_charts, pl);
|
|
|
back();
|
|
|
]]};
|
|
|
{always = true, "У меня есть несколько вопросов", [[
|
|
|
"Чем смогу - помогу".
|
|
|
]], code [[psub('questions')]]};
|
|
|
{always = true, "Я вернусь позже. ", [[
|
|
|
"До встречи".
|
|
|
]], code [[ back(); ]]};
|
|
|
{always = true, "У меня есть несколько вопросов. ", [[Джек кивает: "Чем смогу - помогу". ]], code [[psub('questions')]]};
|
|
|
{always = true, "Я вернусь позже. ", [[ Джек возвращается к своим делам: "До встречи". ]], code [[ back(); ]]};
|
|
|
{300, tag='checking_documents'};
|
|
|
{always = true, "Можешь вернуть мне бумаги?", [[
|
|
|
"Забирай, только без них я ничего не смогу найти", - Джек возвращает вам документы.
|
|
|
]], code [[
|
|
|
{always = true, "Вы можете вернуть мне бумаги? ", [["Конечно. Если принесете их снова -- я возобновлю поиски", - Джек возвращает вам документы. ]], code [[
|
|
|
wright_dlg.state = 4;
|
|
|
put(item_charts, pl);
|
|
|
back();
|
|
|
]]};
|
|
|
{always = true, "У меня есть несколько вопросов", [[
|
|
|
"Чем смогу - помогу".
|
|
|
]], code [[psub('questions')]]};
|
|
|
{always = true, "Я вернусь позже. ", [[
|
|
|
"До встречи".
|
|
|
]], code [[ back(); ]]};
|
|
|
{always = true, "У меня есть несколько вопросов. ", [[Джек кивает: "Чем смогу - помогу". ]], code [[psub('questions')]]};
|
|
|
{always = true, "Я вернусь позже. ", [[Джек возвращается к своим делам: "До встречи". ]], code [[ back(); ]]};
|
|
|
{400, tag='questions'};
|
|
|
{"Ты знаешь, чем Майкл занимался в Вестхейвен Трансоушен?", [[
|
|
|
"Частично", - Джек показывает на картину на стене: "Он проектировал корабли, был главным инженером. Перед тем, как исчезнуть, он часто запирался в этом кабинете, подолгу что-то чертил. До глубокой ночи книги читал... Никаких материалов он не оставил. Он, вообще, очень ответственно относился к этому - никто никогда не знал, чем конкретно он занимается, кроме его подчиненных и господина Дрейка. "
|
|
|
]]};
|
|
|
{always = true, "Вернемся к делу", [[
|
|
|
"Слушаю"
|
|
|
]], code [[ pret(); ]]};
|
|
|
{"Чем ваш отец занимался в Вестхейвен Трансоушен? ", [["Частично", - Джек показывает на картину на стене: "Он проектировал корабли, был главным инженером. Перед тем, как исчезнуть, он часто запирался в этом кабинете, подолгу что-то чертил. До глубокой ночи книги читал... Никаких материалов он не оставил. Он, вообще, очень ответственно относился к этому - никто никогда не знал, чем конкретно он занимается, кроме его подчиненных и вашего отца". ]]};
|
|
|
{always = true, "Вернемся к делу. ", [[Джек кивает: "Хорошо". ]], code [[ pret(); ]]};
|
|
|
{500, tag='ask_documents2'};
|
|
|
{always = true, "[Отдать документы Джеку]", [[
|
|
|
Джек забирает бумаги и раскладывает их на своем столе.
|
|
|
]], code[[ wright_dlg.state = 3; remove(item_charts, pl); back(); ]]};
|
|
|
{always = true, "У меня есть несколько вопросов", [[
|
|
|
"Чем смогу - помогу".
|
|
|
]], code [[psub('questions')]]};
|
|
|
{always = true, "Я вернусь позже. ", [[
|
|
|
"До встречи".
|
|
|
]], code [[ back(); ]]};
|
|
|
{always = true, "[Отдать документы]Вот документы. ", [[Джек забирает бумаги и раскладывает их на своем столе: "Спасибо, я посмотрю, что смогу найти". ]], code[[ wright_dlg.state = 3; remove(item_charts, pl); back(); ]]};
|
|
|
{always = true, "У меня есть несколько вопросов. ", [[Джек кивает: "Чем смогу - помогу". ]], code [[psub('questions')]]};
|
|
|
{always = true, "Я вернусь позже. ", [[Джек возвращается к своим делам: "До встречи". ]], code [[ back(); ]]};
|
|
|
{600, tag='warehouse_discovered'};
|
|
|
{"Знаешь, что я нашел в доке? [Рассказать о Левиафане]", [[
|
|
|
Джек мгновенно вскакивает со стула, восклицая: "Ничего себе, я должен это видеть! "
|
|
|
]], code [[ walkin('wright_leviathan_cutscene1'); ]]};
|
|
|
{always = true, "Отлично, я съезжу туда и посмотрю, что удастся найти. ", [[
|
|
|
"До встречи".
|
|
|
]], code [[ back(); ]]};
|
|
|
{"[Рассказать о Левиафане]Я кое-что нашел в доке...", [[Джек мгновенно вскакивает со стула, восклицая: "Ничего себе, я должен это видеть!" ]], code [[ walkin('wright_leviathan_cutscene1'); ]]};
|
|
|
{always = true, "Отлично, я съезжу туда и посмотрю, что удастся найти. ", [[Джек возвращается к своим делам: "До встречи". ]], code [[ back(); ]]};
|
|
|
{700, tag='warehouse_discovered2'};
|
|
|
{always = true, "На склад мне попасть не удалось. ", [[
|
|
|
Джек с досадой стучит по столу: "Черт! "^
|
|
|
Еще пару минут он задумчиво сидит в кресле, после чего предлагает идею: "Может попробуем попасть туда ночью? Я сам довезу тебя, но внутри все придется делать тебе. "
|
|
|
]], code [[
|
|
|
wright_dlg.state = 6;
|
|
|
psub('warehouse_break_in');
|
|
|
]]};
|
|
|
{always = true, "Я вернусь позже. ", [[
|
|
|
"До встречи".
|
|
|
]], code [[ back(); ]]};
|
|
|
{750, tag='empty'};
|
|
@@ -256,82 +221,64 @@ wright_entry_dlg = dlg {
|
|
|
{"Мой отец - Уильям Дрейк, работал с Майклом Райтом. Так вы знаете его?", [[
|
|
|
Вы слышите звук отодвигающегося засова и ответ: "Проходите".
|
|
|
]], code [[
|
|
|
door_wright.locked = false;
|
|
|
path("В дом", wright_house):enable();
|
|
|
back();
|
|
|
]]};
|
|
|
};
|
|
|
};
|
|
|
|
|
|
wright_drawing = obj {
|
|
|
nam = 'wright_drawing';
|
|
|
dsc = [[
|
|
|
На одной из стен висит большая {картина}, изображающая пароход.
|
|
|
]];
|
|
|
act = [[
|
|
|
На картине во всех деталях изображен пароход _"Огненная стрела"_, принадлежавший Вестхейвен Трансоушен. Огромный пароход, полным ходом движущийся по бескрайнему океану. Яркое солнце освещает палубу, на которой находится множество пассажиров, прогуливающихся, общающихся, сидящих на скамейках. Из всех трех труб _"Огненной стрелы"_ идет густой черный дым, а на корме развевается флаг Соединенного Королевства.
|
|
|
Под картиной вы видите небольшую табличку с надписью: _"Майклу Райту, создателю великолепной ,,Огненной стрелы''. Альберт Мур, 1889"_
|
|
|
]];
|
|
|
dsc = [[На стене напротив двери висит большая {картина}, изображающая пароход. ]];
|
|
|
act = [[На картине во всех деталях изображен пароход _"Огненная стрела"_, принадлежавший Вестхейвен Трансоушен, полным ходом идущий по бескрайнему океану. Яркое солнце освещает палубу, на которой находится множество пассажиров, прогуливающихся, общающихся, сидящих на скамейках. Из всех трех труб _"Огненной стрелы"_ идет густой черный дым, а на корме развевается флаг Соединенного Королевства. Под картиной вы видите небольшую табличку с надписью: _"Майклу Райту, создателю ,,Огненной стрелы''. Альберт Мур, 1889"_. ]];
|
|
|
};
|
|
|
|
|
|
wright_table = obj {
|
|
|
nam = "wright_table";
|
|
|
disp = "Стол";
|
|
|
dsc =[[
|
|
|
В центре комнаты стоит массивный дубовый стол. На полированной поверхности стола разбросаны в кажущемся беспорядке листы бумаги, письменные принадлежности и множество других полезных и не очень предметов.
|
|
|
]];
|
|
|
obj = {
|
|
|
|
|
|
};
|
|
|
dsc =[[В центре комнаты стоит массивный дубовый стол. На его полированной поверхности разбросаны в кажущемся беспорядке бумаги, письменные принадлежности, старые газеты и другие предметы. ]];
|
|
|
};
|
|
|
|
|
|
wright_house_cabinet = room {
|
|
|
nam = "wright_house_cabinet";
|
|
|
disp = "Дом Райта, кабинет";
|
|
|
dsc = [[
|
|
|
Вы находитесь в кабинете Райта. Сквозь большие окна в комнату проникает достаточно света. Стены оклеены старыми обоями с полустершимся рисунком.
|
|
|
]];
|
|
|
dsc = [[Стены комнаты оклеены старыми обоями с полустершимся рисунком. Сквозь большие окна в комнату проникает достаточно света. ]];
|
|
|
obj = {
|
|
|
'wright_drawing',
|
|
|
'wright_table',
|
|
|
'wright_drawing',
|
|
|
'char_wright_home'
|
|
|
};
|
|
|
way = {
|
|
|
vroom("В гостиную", "wright_house_front_room");
|
|
|
};
|
|
|
};
|
|
|
|
|
|
wright_house_front_room = room {
|
|
|
nam = "wright_house_front_room";
|
|
|
disp = "Дом Райта, гостиная";
|
|
|
dsc = [[
|
|
|
Вы находитесь в гостиной в доме Райта. Окна завешены тяжелыми занавесками и в полутьме вы с трудом различаете очертания предметов интерьера - дорогих старых кресел, изящно украшенных шкафов, покрытых многолетним слоем пыли канделябров.
|
|
|
]];
|
|
|
dsc = [[Окна в гостиной завешены тяжелыми занавесками и в полутьме вы с трудом различаете очертания предметов интерьера - дорогих старых кресел, изящно украшенных шкафов, покрытых многолетним слоем пыли канделябров. ]];
|
|
|
entered = function(s)
|
|
|
if (not s.visited) then
|
|
|
s.visited = true;
|
|
|
pn([[
|
|
|
У двери стоит молодой человек, примерно вашего возраста. Как только вы заходите, он закрывает за вами дверь и просит проследовать за ним в кабинет.
|
|
|
]]);
|
|
|
pn([[У двери стоит молодой человек, примерно вашего возраста. Как только вы заходите, он закрывает за вами дверь и просит проследовать за ним в кабинет. ]]);
|
|
|
end;
|
|
|
end;
|
|
|
way = {
|
|
|
vroom("На улицу", "wright_house");
|
|
|
vroom("В кабинет", "wright_house_cabinet");
|
|
|
};
|
|
|
};
|
|
|
|
|
|
wright_house = room {
|
|
|
nam = "wright_house";
|
|
|
disp = "Дом Райта";
|
|
|
enter = function(s)
|
|
|
put(char_coachman, here());
|
|
|
end;
|
|
|
dsc = [[
|
|
|
Вы стоите посреди небольшой тихой улочки, расположенной почти на окраине Лондона. Напротив вас расположен небольшой кирпичный особняк, принадлежащий Майклу Райту, если верить записке. Дом выглядит неухоженным - штукатурка местами осыпалась, лужайка заросла высокой травой, часть окон закрыта плотными ставнями, которые явно давно не открывались.
|
|
|
]];
|
|
|
dsc = [[Небольшой кирпичный особняк, принадлежащий Майклу Райту, стоит на одной из тихих улочек, на окраине Лондона. Дом выглядит неухоженным - штукатурка местами осыпалась, лужайка заросла высокой травой, часть окон закрыта ставнями, явно давно не открывавшимися. ]];
|
|
|
obj = {'door_wright'};
|
|
|
way = {
|
|
|
vroom("В дом", "wright_house_front_room"):disable();
|
|
|
};
|
|
|
};
|
|
\ No newline at end of file
|