diff --git a/lse_confrontation.lua b/lse_confrontation.lua --- a/lse_confrontation.lua +++ b/lse_confrontation.lua @@ -1245,7 +1245,18 @@ lse_item_library_hint = obj { nam = 'lse_item_library_hint'; disp = 'Лист с записями'; inv = [[Внешне лист напоминает бумагу, однако на ощупь он гораздо более гладкий и несколько менее гибкий. Цветные полоски навьярского языка нанесены на него чрезвычайно ровно, словно отпечатаны машиной, а не сделаны рукой навьяра. Записанное на листе гласит: "В городе открывается новая библиотека. В отличие от всех предыдущих строений такого типа, здесь каталогизация происходит автоматически. Каждый раз, как только в библиотеку добавляются новые документы, каталог обновляется и помещается в самую первую ячейку, чтобы его легко мог найти любой желающий". ]]; +} +lse_item_power_key = obj { + nam = 'lse_item_power_key' + disp = 'Ключ из убежища'; + inv = [[Металлический кубик со стороной около пяти сантиметров. На его гранях высечены глубокие бороздки, предназначения которых вы не понимаете. ]]; +} + +lse_item_power_key_hint = obj { + nam = 'lse_item_power_key_hint'; + disp = 'Лист с записями'; + inv = [[Внешне лист напоминает бумагу, однако на ощупь он гораздо более гладкий и несколько менее гибкий. Цветные полоски, нанесенные на лист, гласят: "Архетларр, я оставляю ключ от электростанции вам на хранение. Когда город будет покинут, не забудьте уничтожить его". ]]; } lse_hideout_corridor = room { @@ -1292,36 +1303,70 @@ lse_hideout_third_room = room { lse_hideout_fourth_room = room { nam = "lse_hideout_fourth_room"; disp = "Лсэрианотр, убежище, комната"; - dsc = [[Небольшая каморка, вдоль стен которой расположены пустые стеллажи. Освещения в комнате нет, за исключением света, проникающего из коридора. ]]; + dsc = [[Небольшая каморка, вдоль стен которой расположены стеллажи. Освещения в комнате нет, за исключением света, проникающего из коридора. ]]; + obj = { + 'lse_hideout_fourth_room_items' + }; way = { kh_vroom("В коридор", "lse_hideout_corridor"); }; }; +lse_hideout_fourth_room_items = obj { + nam = 'lse_hideout_fourth_room_items'; + dsc = [[На одном из стеллажей лежит небольшой {лист} из белого материала, напоминающего бумагу. Сверху листа покоится небольшой металлический кубик. ]]; + act = function(s) + remove(lse_hideout_fourth_room_items, here()); + take(lse_item_power_key); + take(lse_item_power_key_hint); + end; +} + lse_middle_1 = room { nam = "lse_middle_1"; disp = "Лсэрианотр, среднее кольцо"; - dsc = [[Эта часть города отключена -- после яркого света убежища вы с трудом различаете очертания предметов. Во внутренней стене есть проход в сервисные тоннели. Решетка, закрывающая его искорежена и валяется рядом. ]]; + dsc = [[Эта часть города отключена -- после яркого света убежища вы с трудом различаете очертания предметов. Во внутренней стене расположена большая дверь, над которой светящимися полосами нанесено "Электростанция". ]]; entered = function(s) service_tunnels_2.position = "05"; end; + obj = { + 'lse_power_station_lock' + }; way = { kh_vroom("Против часовой стрелки", function(s) pr [[Вам там нечего делать. ]]; return false; end); kh_vroom("По часовой стрелке", "lse_middle_2"); - kh_vroom("В сервисный тоннель", function(s) - if lse_powerplant_found then - return "service_tunnels_2"; + kh_vroom("В электростанцию", function(s) + if lse_powerplant_found and lse_power_station_lock.open then + return "lse_power_station_corridor"; + elseif lse_powerplant_found then + pr [[Дверь заперта. ]]; else pr [[Вам там нечего делать. ]]; - return false; end; + return false; end); }; }; +lse_power_station_lock = obj { + var { + open = false + }; + nam = 'lse_power_station_lock'; + dsc = 'Рядом с дверью расположено небольшое квадратное {отверстие} -- сторона его составляет около пяти сантиметров. '; + used = function(s, o) + if o == lse_item_power_key then + remove(lse_item_power_key, me()); + remove(lse_item_power_key_hint, me()); + s.open = true; + return 'Вы помещаете ключ в отверстие и дверь открывается. '; + end; + end; +} + lse_middle_2 = room { nam = "lse_middle_2"; disp = "Лсэрианотр, среднее кольцо"; @@ -1398,7 +1443,7 @@ lse_library_shelves_input = input_number if (input == "000") then pr([[Вы достаете табличку с номером 000 и обнаруживаете, что это каталог имеющихся материалов. Вы узнаете, что планы и карты города хранятся в записи номер ]] .. lse_middle_library.indexa .. ". "); elseif (input == lse_middle_library.indexa) then - pr [[Бегло просмотрев найденную схему, вы узнаете, что через сервисные тоннели города вы можете попасть практически в любую его часть, в том числе и в центральный зал. Для того, чтобы попасть в центральный зал, вам придется сперва попасть во внутреннее кольцо. Наилучшим способом для вас будет воспользоваться сервисными тоннелями, чтобы попасть в электростанцию во внутреннем кольце, откуда вы уже сможете попасть в центр. Так же, вы отмечаете, что все, за исключением врат, проходы из внутреннего кольца в центр, ведут через нижний город, заполненный водой. ]]; + pr [[Бегло просмотрев найденную схему, вы узнаете, что через сервисные тоннели города вы можете попасть практически в любую его часть, в том числе и в центральный зал. Для того, чтобы попасть в центральный зал, вам придется сперва попасть во внутреннее кольцо. Наилучшим способом для вас будет воспользоваться электростанцией -- из среднего кольца вы попадете в служебные помещения, которые приведут вас к центру управления, а оттуда вы сможете выйти во внутреннее кольцо. Пройти из внутреннего кольца в центральный зал проще всего через сервисные тоннели. ]]; lse_powerplant_found = true; else pr [[Эти записи не содержат ничего интересного для вас. Возможно, стоит поискать каталог? Он должен быть где-то здесь. ]]; @@ -1411,9 +1456,19 @@ lse_library_shelves_input = input_number Power station ]] +lse_power_station_corridor = room { + nam = 'Лсэрианотр, электростанция'; + disp = 'Лсэрианотр, электростанция'; + dsc = [[Мягкий свет маломощных ламп освещает помещение. Длинный прямой коридор со множеством дверей по сторонам. К сожалению, все они заперты. В конце коридора расположена еще одна дверь, на которой светящимися цветными полосами навьярского языка нанесено "Центр управления". ]]; + way = { + kh_vroom("В среднее кольцо", "lse_middle_1"); + kh_vroom("В центр управления", "lse_power_station"); + }; +} + lse_power_station = room { - nam = "Лсэрианотр, электростанция"; - disp = "Лсэрианотр, электростанция"; + nam = "Лсэрианотр, электростанция, центр управления"; + disp = "Лсэрианотр, электростанция, центр управления"; dsc = [[Вы находитесь в комнате управления энергоснабжением Лсэрианотра. Вы ощущаете слабую вибрацию, исходяющую от работающих неподалеку генераторов. Входная дверь закрыта. ]]; entered = function(s) service_tunnels_2.position = "45"; @@ -1422,7 +1477,7 @@ lse_power_station = room { "lse_powerplant_control" }; way = { - kh_vroom("В сервиcный тоннель", "service_tunnels_2"); + kh_vroom("В коридор", "lse_power_station_corridor"); }; }; @@ -1682,7 +1737,7 @@ lse_inner_1 = room { way = { kh_vroom("Против часовой стрелки", "lse_inner_2"); kh_vroom("В помещение", "lse_inner_1_inside"); - kh_vroom("В энергостанцию", function(s) + kh_vroom("В электростанцию", function(s) lifeoff(lse_inner_circle_guards); return "lse_power_station_dark"; end);