Files @ bfeee99a1619
Branch filter:

Location: games/Awakening/wright.lua - annotation

Silverwing
Fix dypatreanotrr red stone puzzle
6e7519136e47
6749b9519941
6749b9519941
6749b9519941
6e7519136e47
6e7519136e47
6e7519136e47
6e7519136e47
6e7519136e47
3508620d53af
3508620d53af
3508620d53af
6e7519136e47
3508620d53af
6e7519136e47
6e7519136e47
6e7519136e47
6749b9519941
6e7519136e47
6749b9519941
6e7519136e47
6e7519136e47
6e7519136e47
6e7519136e47
6e7519136e47
6749b9519941
6749b9519941
6749b9519941
515b20cf25e0
6749b9519941
6e7519136e47
6e7519136e47
6e7519136e47
6e7519136e47
6749b9519941
6e7519136e47
6749b9519941
6749b9519941
6749b9519941
6749b9519941
6749b9519941
6e7519136e47
6e7519136e47
6e7519136e47
4362d49f1350
4362d49f1350
4362d49f1350
4362d49f1350
4362d49f1350
6749b9519941
6749b9519941
6749b9519941
4362d49f1350
4362d49f1350
4362d49f1350
037e19ceec23
037e19ceec23
037e19ceec23
804089f0ffb8
037e19ceec23
43553ab108b7
d19e16f1a89e
d19e16f1a89e
d19e16f1a89e
d19e16f1a89e
d19e16f1a89e
515b20cf25e0
0c2323215e40
4362d49f1350
1e36831e2495
4362d49f1350
6749b9519941
4362d49f1350
4362d49f1350
4362d49f1350
515b20cf25e0
4362d49f1350
4362d49f1350
39940ecc871b
39940ecc871b
515b20cf25e0
39940ecc871b
39940ecc871b
45605ed9e0c4
39940ecc871b
9faedcde7834
9122330d184d
39940ecc871b
4362d49f1350
4362d49f1350
4362d49f1350
515b20cf25e0
39940ecc871b
39940ecc871b
515b20cf25e0
515b20cf25e0
515b20cf25e0
515b20cf25e0
515b20cf25e0
515b20cf25e0
515b20cf25e0
515b20cf25e0
515b20cf25e0
805b2b43183f
39940ecc871b
515b20cf25e0
6e7519136e47
6e7519136e47
4362d49f1350
2b6fe6095185
9122330d184d
515b20cf25e0
3c95f6f8fb21
45605ed9e0c4
45605ed9e0c4
45605ed9e0c4
515b20cf25e0
45605ed9e0c4
9122330d184d
d6894e7be51e
515b20cf25e0
9122330d184d
1221f53dee13
1221f53dee13
1221f53dee13
4362d49f1350
9122330d184d
d6894e7be51e
515b20cf25e0
9122330d184d
d6894e7be51e
515b20cf25e0
3c95f6f8fb21
9122330d184d
d6894e7be51e
515b20cf25e0
d19e16f1a89e
d19e16f1a89e
d19e16f1a89e
d19e16f1a89e
d19e16f1a89e
d19e16f1a89e
d19e16f1a89e
d19e16f1a89e
515b20cf25e0
515b20cf25e0
c93f5524f356
d19e16f1a89e
d6894e7be51e
143cd519cf2c
143cd519cf2c
03c1c6c40ee2
143cd519cf2c
143cd519cf2c
143cd519cf2c
143cd519cf2c
515b20cf25e0
d6894e7be51e
515b20cf25e0
9122330d184d
805b2b43183f
805b2b43183f
805b2b43183f
d6894e7be51e
143cd519cf2c
143cd519cf2c
d6894e7be51e
143cd519cf2c
9122330d184d
d6894e7be51e
143cd519cf2c
d8c2bd18d80e
387c50c60a14
805b2b43183f
ced1b1115824
143cd519cf2c
143cd519cf2c
d6894e7be51e
515b20cf25e0
9122330d184d
d6894e7be51e
143cd519cf2c
d19e16f1a89e
d19e16f1a89e
39940ecc871b
b7a6e49b0d7c
d19e16f1a89e
d19e16f1a89e
d6894e7be51e
39940ecc871b
39940ecc871b
143cd519cf2c
d19e16f1a89e
d19e16f1a89e
143cd519cf2c
b7a6e49b0d7c
b7a6e49b0d7c
d19e16f1a89e
d6894e7be51e
39940ecc871b
39940ecc871b
39940ecc871b
b3221f09a39a
ced1b1115824
143cd519cf2c
143cd519cf2c
d6894e7be51e
d6894e7be51e
d6894e7be51e
d6894e7be51e
143cd519cf2c
d6894e7be51e
39940ecc871b
6f291de4eb1a
6f291de4eb1a
5870041574a2
5870041574a2
9122330d184d
5870041574a2
d6894e7be51e
39940ecc871b
39940ecc871b
d6894e7be51e
39940ecc871b
39940ecc871b
4362d49f1350
6e7519136e47
6e7519136e47
6e7519136e47
6e7519136e47
6e7519136e47
2b6fe6095185
2b6fe6095185
d6894e7be51e
2b6fe6095185
6e7519136e47
6e7519136e47
2b6fe6095185
d6894e7be51e
6c01e30897d3
4362d49f1350
9122330d184d
9122330d184d
9122330d184d
4362d49f1350
9122330d184d
2b6fe6095185
2b6fe6095185
2b6fe6095185
2b6fe6095185
4362d49f1350
4362d49f1350
4362d49f1350
4362d49f1350
4362d49f1350
6749b9519941
d6894e7be51e
4362d49f1350
4362d49f1350
4362d49f1350
4362d49f1350
4362d49f1350
6749b9519941
6e7519136e47
6e7519136e47
4362d49f1350
4362d49f1350
4362d49f1350
6749b9519941
4362d49f1350
6749b9519941
4362d49f1350
4362d49f1350
4362d49f1350
4362d49f1350
4362d49f1350
6e7519136e47
6e7519136e47
6e7519136e47
4362d49f1350
4362d49f1350
4362d49f1350
9122330d184d
4362d49f1350
4362d49f1350
4362d49f1350
6749b9519941
4362d49f1350
4362d49f1350
4362d49f1350
4362d49f1350
4362d49f1350
6e7519136e47
6e7519136e47
6e7519136e47
6e7519136e47
6e7519136e47
6e7519136e47
6e7519136e47
6e7519136e47
6e7519136e47
9122330d184d
6e7519136e47
4362d49f1350
4362d49f1350
4362d49f1350
6e7519136e47
door_wright = obj {
    var {
        locked = true;
    };
	nam = "door_wright";
	disp = "Дверь";
	act = function(s)
		if (s.locked) then
			walkin "wright_entry_dlg";
			return true;
		else
			return "Вы можете войти.";
		end;

	end;
	dsc = function(s)
		if (s.locked) then
			return [[Обшарпанная деревянная {дверь}, ведущая в дом, заперта изнутри. ]];
		else
			return [[Обшарпанная деревянная {дверь}, ведущая в дом, незаперта. ]];
		end;
	end;
};

char_wright_home = obj {
    var {
        known = false;
        documents = false;
        known_leviathan = false;
    };
	nam = "char_wright_home";
	disp = "Джек Райт";
	dsc = function(s)
		if (s.documents) then
			return [[За столом сидит {Джек Райт} и с интересом рассматривает схемы, которые вы ему отдали. ]];
		else
            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 = "Джек Райт";
	entered = function(s)
        if (submarine_leviathan.power_on and submarine_leviathan.airpump and submarine_leviathan.battery and submarine_leviathan.air_level < 432000) then
            submarine_leviathan.air_level = 432000;
            lifeoff(s);
			timer:stop();
        end;   
		if (submarine_leviathan.air_level > 400000 and submarine_leviathan.circuit_breaks == 0 and submarine_leviathan.power_on) then
			if char_wright_home.known_leviathan then
				psub('leviathan_restored_known');
			else
				psub('leviathan_restored');
			end;
			return [[Джек Райт отвлекается от газеты: "Добрый день". ]];
		elseif (s.state == 1) then
			--First meeting
            char_wright_home.known = true;
			psub('first_visit');
			return [[Перед вами молодой человек, одетый в недорогой, но опрятный костюм. Его бледное лицо украшает короткая темная борода и пышные усы. Темные волосы коротко острижены. Серые глаза с интересом разглядывают вас. Он протягивает вам руку и представляется: "Добрый день. Мое имя -- Джек Райт. Майкл -- мой отец, но он пропал несколько лет назад". ]];
		elseif (s.state == 2) then
			--Documents not given
			psub('ask_documents');
			return [[Джек отвлекается от газеты: "Добрый день. Вы обещали принести какие-то документы". ]];
		elseif (s.state == 3) then
			--Documents given
			if (not leviathan_discovered) then
				psub('checking_documents');
				return [[Джек отвлекается от документов: "Добрый день. Если вы по поводу документов, то я еще ничего не нашел". ]];
			else
				s.state = 5;
				warehouse32_found = true;
				psub('warehouse_discovered');
                pl.money = pl.money + 50;
				return [[Джек отвлекается от документов: "Добрый день. У меня хорошие новости. Я нашел склад 32", -- он достает карту города и показывает вам место. Потом он достает из стола мешочек денег и протягивает вам со словами: "Надеюсь, это поможет тебе в поисках". ]];
			end;
		elseif (s.state == 4) then
			--Documents taken back
			psub('ask_documents2');
			return [[Джек отвлекается от газеты: "Добрый день. Я хотел бы еще раз вглянуть на эти бумаги". ]];
		elseif (s.state == 5) then
			psub('warehouse_discovered2');
            poff("phr_warehouse_visited");
            poff("phr_leviathan");
            if (warehouse32_visited) then
                pon("phr_warehouse_visited");
            end;
            if (not char_wright_home.known_leviathan) then
                pon("phr_leviathan");
            end;
			return [[Джек отвлекается от газеты: "Добрый день". ]];
		elseif (s.state == 6) then
			psub('warehouse_discovered3');
			return [[Джек отвлекается от газеты: "Добрый день". ]];
		end;
	end;
	phr = {
		{tag='first_visit'};
		{"Мое имя -- Дэвид Дрейк. Мне удалось найти кое-какие документы в одном из тайников отца. Этот адрес был среди них. Вы что-то знаете о судьбе моего отца? ", [[Джек вздыхает: "Это бесполезно. Я изучил практически все, до чего сумел дотянуться: газеты, судебные дела. И ничего -- никаких зацепок. Компания обанкротилась, руководители пропали". ]], code [[wright_dlg.state = 2; psub('ask_documents'); ]]};
		{tag='ask_documents'};
		{always = true, "[Отдать документы] Посмотрите это. Не думаю, что вы это видели. ", [[Джек нехотя забирает бумаги из ваших рук и бегло их осматривает. Пожимая плечами, он комментирует: "Ничего интересного, просто планы старых зданий. Док 2? Отец там часто бывал, впрочем не думаю, что после 10 лет там что-то осталось. Если хотите, можете оставить документы, я попробую разузнать побольше". ]], code [[ 
			dock_found = true;
			wright_dlg.state = 3; 
			remove(item_charts, pl); 
			psub("checking_documents");
		]]};
		{always = true, "У меня есть несколько вопросов.", [[Джек кивает: "Чем смогу -- помогу". ]], code [[psub('questions')]]};
		{always = true, "Я вернусь позже.", [[ Джек возвращается к своим делам: "До встречи". ]], code [[ back(); ]]};
		{tag='checking_documents'};
		{always = true, "Вы можете вернуть мне бумаги?", [["Конечно. Если принесете их снова -- я возобновлю поиски", -- Джек возвращает вам документы. ]], code [[
			wright_dlg.state = 4;
			put(item_charts, pl);
			back();
		]]};
		{always = true, "У меня есть несколько вопросов.", [[Джек кивает: "Чем смогу -- помогу". ]], code [[psub('questions')]]};
		{always = true, "Я вернусь позже.", [[Джек возвращается к своим делам: "До встречи". ]], code [[ back(); ]]};
		{tag='questions'};
		{"Вы знаете, чем занимался ваш отец в Вестхейвен Трансоушен?", [["Частично", -- Джек показывает на картину на стене: "Он проектировал корабли, был главным инженером. Перед тем, как исчезнуть, он часто запирался в этом кабинете, подолгу что-то чертил. До глубокой ночи книги читал... Никаких материалов он не оставил. Он, вообще, очень ответственно относился к этому -- никто никогда не знал, чем конкретно он занимается, кроме его подчиненных и вашего отца". ]]};
		{always = true, "Вернемся к делу.", [[Джек кивает: "Хорошо". ]], code [[ pret(); ]]};
		{tag='ask_documents2'};
		{always = true, "[Отдать документы] Вот документы.", [[Джек забирает бумаги и раскладывает их на своем столе: "Спасибо, я посмотрю, что смогу найти". ]], code[[ wright_dlg.state = 3; remove(item_charts, pl); back(); ]]};
		{always = true, "У меня есть несколько вопросов.", [[Джек кивает: "Чем смогу -- помогу". ]], code [[psub('questions')]]};
		{always = true, "Я вернусь позже.", [[Джек возвращается к своим делам: "До встречи". ]], code [[ back(); ]]};
		{tag='warehouse_discovered'};
		{"[Рассказать о Левиафане] Я кое-что нашел в доке...", [[Джек мгновенно вскакивает со стула, восклицая: "Ничего себе, я должен это видеть!" ]], function(s)
			char_wright_home.known_leviathan = true;
            rel_jack = rel_jack + 1;
            walkin('wright_leviathan_cutscene1a');
		end};
		{always = true, "Отлично, я съезжу туда и посмотрю, что удастся найти.", [[Джек возвращается к своим делам: "До встречи". ]], code [[ back(); ]]};
		{tag='warehouse_discovered2'};
        {tag="phr_leviathan", "[Рассказать о Левиафане] Я кое-что нашел в доке...", [[Джек мгновенно вскакивает со стула, восклицая: "Ничего себе, я должен это видеть!" ]], function(s)
            char_wright_home.known_leviathan = true;
            rel_jack = rel_jack + 1;
            walkin('wright_leviathan_cutscene1a'); 
        end};
		{tag="phr_warehouse_visited", always = true, "На склад мне попасть не удалось.", function(s)
            if (char_wright_home.known_leviathan) then
                psub("warehouse_break_in");
                return [[Джек с досадой стучит по столу: "Черт!"^ Еще пару минут он задумчиво сидит в кресле, после чего предлагает идею: "Мы можем попробовать проникнуть туда тайком. Я довезу вас туда, но внутри все делать придется вам". ]]
            else
                psub('warehouse_break_in_reluctant');
                return [[Джек вздыхает: "Ну вот и все. Боюсь, больше мы ничего не узнаем". ]];
            end;
        end};
		{always = true, "Я вернусь позже.", [[Джек возвращается к своим делам: "До встречи". ]], code [[ back(); ]]};
		{tag='warehouse_break_in'};
		{always = true, "Надо попробовать.", [["Хорошо", -- отвечает Джек. ]], code [[ 
            wright_dlg.state = 6;      
            walk('wright_warehouse_32_entry'); 
        ]]};
		{always = true, "Лучше не стоит.", [[Джек разочарованно отвечает: "Очень жаль". ]], code [[ pret(); ]]};
        {tag='warehouse_break_in_reluctant'};
        {always = true, "Мы можем попробовать проникнуть туда. Вдруг там что-то сохранилось?", [[Джек удивленно переспрашивает: "Проникнуть? Дэвид, вы в своем уме?"]], code [[ psub("w_bir2");]]};
        {always = true, "Я пойду.", [[Джек возвращается к своим делам: "До встречи". ]]};
        {tag="w_bir2"};
        {always = true, "Если мы хотим найти моего и вашего отца -- нам нужно действовать вместе.", [[Джек отрицательно качает головой: "Я не готов действовать такими методами". ]], code [[ psub("w_bir3");]]};
        {always = true, "Вы правы, это глупо.", [[Джек молча кивает. ]], code [[ pret(); ]]};
        {tag="w_bir3"};
        {"Вы готовы остановиться в шаге от цели?", [[Джек отвечает не сразу: "Мы не знаем, насколько мы близко".]]};
        { "У нас нет другого выбора. Это наша единственная зацепка.", [[Джек берет карандаш, вертит его в руках несколько минут, потом смотрит на картину. Наконец, он соглашается: "Будь по-вашему". ]], code [[
            wright_dlg.state = 6;
            walk("wright_warehouse_32_entry");
        ]]};
        {"У вас есть другие предложения?", [[Джек вздыхает: "Нет. Придется признать, поиски зашли в тупик". ]]};
        {always = true, "Вы правы, это глупо.", [[Джек молча кивает. ]], code [[ psub("warehouse_break_in_reluctant"); ]]};
		{tag='warehouse_discovered3'};
		{always = true, "Надо еще раз попасть на склад.", [["Хорошо", -- отвечает Джек. После наступления темноты, вы садитесь в повозку Джека, и он привозит вас к складу 32. ]], code [[ psub('warehouse_break_in'); ]]};
		{always = true, "Я вернусь позже.", [["До встречи". ]], code [[ back(); ]]};
		{tag='leviathan_restored_known'};
		{always = true, "Мне удалось починить \"Левиафан\". Мне понадобится помощник на борту.", [[Джек поднимается с кресла и одевает пальто: "Безусловно, я готов", -- сообщает вам он. "Здесь меня ничто не держит". ]], function(s)
			set_music('music/atlantis.ogg');
			table.insert(pl.party, 'wright');
            move(char_wright, char_wright.home);
			walk('wright_leviathan_cutscene2');
		end};
		{always = true, "Я вернусь позже.", [[
			"До встречи".
		]], code [[ back(); ]]};
        {tag='leviathan_restored'};
        {always = true, "Я нашел подводный корабль. Мне понадобится помощь в управлении им. ", [[Джек мгновенно вскакивает со стула, восклицая: "Ничего себе! Я должен это видеть!". ]], function(s)
			set_music('music/atlantis.ogg');
            table.insert(pl.party, 'wright');
            move(char_wright, char_wright.home);
            walk('wright_leviathan_cutscene2');
        end};
        {always = true, "Я вернусь позже.", [[Джек возвращается к своим делам: "До встречи".]], code [[ back(); ]]};
	};
};

wright_warehouse_32_entry = cutscene("wright_warehouse_32_entry", "Склад 32", [[Приготовления занимают все время до вечера. Наконец, после наступления темноты, вы садитесь в повозку, и Джек привозит вас к складу 32. ]], 'warehouse_32_night');

wright_leviathan_cutscene2 = cutscene("wright_leviathan_cutscene2", "Причал", [[Вместе с Джеком вы приезжаете в док. Райт долго и с интересом осматривает корпус _"Левиафана"_. Внутри, Джек долго обходит отсеки, разглядывая все узлы. Наконец, вы оказываетесь в кают-компании и он сообщает: "Я готов". ]], 'leviathan_wardroom');

wright_leviathan_cutscene1a = cutscene("wright_leviathan_cutscene1a", "Причал", [[Вместе с Джеком Райтом вы отправляетесь в док 2. После прибытия на место, Джек долго и с интересом осматривает металлический корпус субмарины. С задумчивым видом он ходит туда-сюда вдоль причала. ]], 'wright_leviathan_cutscene1b');

wright_leviathan_cutscene1b = dlg {
	nam = "wright_leviathan_cutscene1b";
	disp = "Причал";
	entered = [[После очередного круга, он спрашивает: "Она работает?"]];
	phr = {
		{"Десять лет под водой. Не думаю, что там хоть что-то сохранилось.", [[Джек задумчиво смотрит на металлический корпус, на табличку с выгравированным названием. Наконец он говорит: "Надо попытаться попасть внутрь, а затем посмотрим". Еще немного постояв, он возвращается к кэбу. Повернувшись к вам он сообщает: "Вы можете рассчитывать на меня, если вам потребуется помощь в управлении этой посудиной". ]], code [[ psub('choice'); ]]};
		{"Не уверен, но, думаю, да.", [[Джек задумчиво смотрит на металлический корпус, на табличку с выгравированным названием. Наконец он говорит: "Надо попытаться попасть внутрь, а затем посмотрим". Еще немного постояв, он возвращается к кэбу. Повернувшись к вам он сообщает: "Вы можете рассчитывать на меня, если вам потребуется помощь в управлении этой посудиной". ]], code [[ psub('choice'); ]]};
        {tag='choice'};
        {"Несомненно, я сообщу вам, если получится ее оживить.", [[Джек кивает и спрашивает: "Пора ехать. Вы со мной?" ]], code [[ psub('end'); ]]};
        {"Спасибо, но я справлюсь и сам.", [[Джек пожимает плечами, но отвечает: "Тем не менее, мое предложение остается в силе", -- и, чуть выждав, спрашивает -- "Пора ехать. Вы со мной?" ]], code [[ psub('end'); ]]};
		{tag='end'};
		{"Да, поехали.", [[	Вы садитесь в кэб и возвращаетесь домой к Джеку. ]], [[
			walk('wright_house_cabinet');
		]]};
		{"Я останусь тут.", [[Джек садится в кэб и уезжает домой, вы остаетесь в доке один. ]], [[
			walk('dock_mooring');
		]]};
	};
};

wright_entry_dlg = dlg {
	nam = "wright_entry_dlg";
	disp = "Голос за дверью";
	entered = function(s)
		psub("start");
		return [[Вы стучите в дверь. Через некоторое время вам отвечает сонный голос: "Кто здесь?" ]];
	end;
	hideinv = true;
	phr = {
		{tag = "start"};
		{always = true, "Могу я увидеть Майкла Райта?", [[Голос за дверью повторяет вопрос: "Кто спрашивает?"]], code [[ psub('who') ]]};
		{always = true, "Извините, я ошибся адресом.", code [[ back(); ]]},
		{tag = 'who'};
		{"Вы знаете Уильяма Дрейка?", [["Понятия не имею. Кто спрашивает?" -- В голосе собеседника явно прослеживается некоторое недовольство. ]], code [[ psub('irritated') ]]};
		{"Майкл Райт здесь живет?", [["Кто спрашивает?" -- В голосе собеседника явно прослеживается некоторое недовольство. ]], code [[ psub('irritated') ]]};
		{always = true, "У меня важное сообщение для него.", [["Он тут не живет уже много лет. Уходите" -- вам показалось, что голос собеседника слегка дрогнул при этих словах. ]], code [[ back(); ]]};
		{tag = 'irritated'};
		{"Мой отец -- Уильям Дрейк, работал с Майклом Райтом. Так вы знаете его?", [[Вы слышите звук отодвигающегося засова и ответ: "Проходите". ]], code [[ 
			door_wright.locked = false;
			path("В дом", wright_house):enable();
			back();
		]]};
	};
};

wright_drawing = obj {
	nam = 'wright_drawing';
	dsc = [[На стене напротив двери висит большая {картина}, изображающая пароход. ]];
	act = [[На картине во всех деталях изображен пароход _"Огненная стрела"_, принадлежавший Вестхейвен Трансоушен, полным ходом идущий по бескрайнему океану. Яркое солнце освещает палубу, на которой находится множество пассажиров, прогуливающихся, общающихся, сидящих на скамейках. Из всех трех труб парохода идет густой черный дым, а на корме развевается флаг Соединенного Королевства. Под картиной вы видите небольшую табличку с надписью: _"Майклу Райту, создателю ,,Огненной стрелы''. Альберт Мур, 1889"_. ]];
};

wright_table = obj {
	nam = "wright_table";
	disp = "Стол";
	dsc =[[В центре комнаты стоит массивный дубовый стол. На его полированной поверхности разбросаны в кажущемся беспорядке бумаги, письменные принадлежности, старые газеты и другие предметы. ]];
};

wright_house_cabinet = room {
	nam = "wright_house_cabinet";
	disp = "Дом Райта, кабинет";
	dsc = [[Стены комнаты оклеены старыми обоями с полустершимся рисунком. Сквозь большие окна в комнату проникает достаточно света. ]];
	obj = {
        'wright_drawing',   
		'wright_table',
		'char_wright_home'
	};
	way = {
		vroom("В гостиную", "wright_house_front_room");
	};
};

wright_house_front_room = room {
	nam = "wright_house_front_room";
	disp = "Дом Райта, гостиная";
	dsc = [[Окна в гостиной завешены тяжелыми занавесками и в полутьме вы с трудом различаете очертания предметов интерьера: дорогих старых кресел, изящно украшенных шкафов, покрытых многолетним слоем пыли канделябров. ]];
	entered = function(s)
		if (not s.visited) then
			s.visited = true;
			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 = [[Небольшой кирпичный особняк, принадлежащий Майклу Райту, стоит на одной из тихих улочек, на окраине Лондона. Дом выглядит неухоженным -- штукатурка местами осыпалась, лужайка заросла высокой травой, часть окон закрыта ставнями, явно давно не открывавшимися. ]];
	obj = {'door_wright'};
	way = {
		vroom("В дом", "wright_house_front_room"):disable();
	};
};