lse_item_toolbox = obj { nam = "toolbox"; disp = "Ящик с инструментами"; dsc = [[ У входа лежит {ящик с инструментами}, столь опрометчиво(или предусмотрительно?) оставленный Дэвидом. ]]; tak = [[ Фаэтларр забирает ящик с собой. ]]; inv = [[ Ящик со всевозможными инструментами. Большую часть из них Фаэтларр видит впервые. ]]; }; lse_leviathan_cargo_hold = room { nam = "lse_leviathan_cargo_hold"; disp = "Левиафан, грузовой отсек"; dsc = [[ Фаэтларр находится в грузовом отсеке Левиафана, среди множества ящиков в котором так легко затеряться. ]]; obj = { "player_phaetlarr", "lse_item_toolbox" }; way = { kh_vroom("В коридор", "lse_leviathan_corridor"); }; }; lse_leviathan_corridor = room { nam = "lse_leviathan_corridor"; disp = "Левиафан, коридор"; dsc = [[ Фаэтларр находится в основном коридоре Левиафана. Длинный металлический коридор освещен ярким светом электрических ламп. По левому борту расположены двери кают. Одна из них была выделена Фаэтларру и навьяр на некоторое время задержал взгляд на ней - дверь ничем не отличалась от соседних, за исключением цифры "5", нарисованной на ней белой краской. ]]; way = { kh_vroom("В каюту капитана", function(s) pr [[ "Не стоит тратить на это время", - промелькнула мысль в голове Фаэтларра. ]]; return false; end); kh_vroom("В каюту №1", function(s) pr [[ "Не стоит тратить на это время", - промелькнула мысль в голове Фаэтларра. ]]; return false; end); kh_vroom("В каюту №2", function(s) pr [[ "Не стоит тратить на это время", - промелькнула мысль в голове Фаэтларра. ]]; return false; end); kh_vroom("В каюту №3", function(s) pr [[ "Не стоит тратить на это время", - промелькнула мысль в голове Фаэтларра. ]]; return false; end); kh_vroom("В каюту №4", function(s) pr [[ "Не стоит тратить на это время", - промелькнула мысль в голове Фаэтларра. ]]; return false; end); kh_vroom("В каюту №5", function(s) pr [[ "Не стоит тратить на это время", - промелькнула мысль в голове Фаэтларра. ]]; return false; end); kh_vroom("В кают-компанию", "lse_leviathan_wardroom", 1); kh_vroom("В грузовой отсек", "lse_leviathan_cargo_hold", 1); kh_vroom("В машинный отсек", function(s) pr [[ "Не стоит тратить на это время", - промелькнула мысль в голове Фаэтларра. ]]; return false; end); kh_vroom("На нижнюю палубу", function(s) pr [[ "Не стоит тратить на это время", - промелькнула мысль в голове Фаэтларра. ]]; return false; end); }; }; lse_leviathan_wardroom = room { nam = "lse_leviathan_wardroom"; disp = "Левиафан, кают-компания"; dsc = [[ Фаэтларр находится в кают-компании Левиафана. Это просторная комната, освещенная ярким светом электрических ламп. В центре кают-компании укреплен массивный металлический стол, вокруг которого стоят несколько стульев. ]]; way = { kh_vroom("В рубку", function(s) pr [["Там я ничего не смогу сделать", - промелькнула мысль в голове Фаэтларра. ]]; return false; end); kh_vroom("В шлюз", "lse_leviathan_airlock"); kh_vroom("В коридор", "lse_leviathan_corridor"); }; obj = { "lse_phone_wardroom"; }; }; lse_phone_wardroom = obj { nam = "lse_phone_wardroom"; disp = "Телефон"; dsc = [[На столе, рядом с креслом Дрейка установлен {телефонный аппарат}. ^]]; act = [[Фаэтларр не умеет этим пользоваться. ]]; }; lse_leviathan_airlock = room { nam = "lse_leviathan_airlock"; disp = "Левиафан, шлюз"; dsc = [[Фаэтларр находится в шлюзовом отсеке Левиафана. Люк не задраен. ]]; way = { kh_vroom("В кают-компанию", "lse_leviathan_wardroom"); kh_vroom("Наверх", "lse_leviathan_airlock_up"); }; }; lse_leviathan_airlock_up = room { nam = "lse_leviathan_airlock_up"; disp = "Левиафан, люк"; dsc = function(s) return [[Фаэтларр выглядывает из люка Левиафана. Субмарина находится все там же - в доке, у ворот Лсэрианотра. ]]; end; obj = { "lse_lev_guard" }; way = { kh_vroom("Вниз", "lse_leviathan_airlock"); kh_vroom("Наружу", function(s) if (lse_lev_guard.state == 0) then return "game_over_phaetlarr_caught"; else return "lse_dock_pier"; end; end); }; }; lse_lev_guard = obj { var { state = 0; }; nam = "lse_lev_guard"; dsc = function(s) if (s.state == 0) then return "У пирса рядом с Левиафаном стоит {группа стражников}"; else return "Стражники отошли в дальний конец дока. Фаэтларр сможет незаметно пробежать мимо. "; end; end; use = function(s,o) if (o == lse_item_toolbox) then s.state = 1; return [[ Фаэтларр достает из ящика первый попавшийся предмет и кидает его в воду, подальше от Левиафана. Стражники, услышав всплеск, дружно направились туда. ]]; end; end; }; lse_dock_pier = room { nam = "lse_dock_pier"; disp = "Лсэрианотр, док, у Левиафана"; dsc = [[ Фаэтларр стоит на пирсе рядом с Левиафаном. Несколько стражников что-то ищут В другом конце дока. ]]; way = { kh_vroom("К выходу", "lse_dock"); }; }; lse_dock = room { var { state = 0; }; nam = "lse_dock"; disp = "Лсэрианотр, док, у входа"; dsc = function(s) if (s.state == 0) then return [[ Фаэтларр стоит у выхода из дока. Массивные металлические двери плотно закрыты и приоткрыть их не представляется возможным. ]]; else return [[ Фаэтларр стоит у выхода из дока. Массивные металлические двери слегка приоткрыты и вы можете спокойной проскользнуть внутрь. ]]; end; end; obj = { "lse_dock_panel" }; way = { kh_vroom("В дверь", function(s) if (lse_dock.state == 0) then pr [[Дверь заперта]]; return false; else return "lse_outer_1"; end; end); }; }; lse_dock_panel = obj { var { state = 0; }; nam = "lse_dock_panel"; dsc = function(s) if (s.state == 0) then return [[Рядом с дверью расположена небольшая {панель}. ]]; else return [[Под открытой {панелью} находятся какие-то провода. Скорее всего, они используются для управления дверью. ]]; end; end; act = function(s) if (s.state == 0) then return [[Фаэтларр пытается открыть панель руками, но ничего не получается. ]]; else walkin("lse_dock_in_panel"); end; end; }; lse_dock_in_panel = room { var { state = 0; index = 0; cut = nil; }; nam = "lse_dock_in_panel"; disp = "Лсэрианотр, док, панель управления дверью"; entered = function(s) if (s.state == 0) then s.state = 1; s.index = rnd(7) - 1; end; end; pic = function(s) local pic = "images/lse_door_bcg.gif;images/lse_door_marker.png@496," .. tostring(3 + 38 * s.index); return pic; end; dsc = [[За панелью скрывается множество проводов. Фаэтларр легко определяет, какой из них задействован в управлении дверью.]]; obj = { 'lse_dock_cut1', 'lse_dock_cut2', 'lse_dock_cut3', 'lse_dock_cut4', 'lse_dock_cut5', 'lse_dock_cut6', 'lse_dock_cut7', 'lse_dock_back' }; }; lse_dock_cut1 = obj { nam = "lse_dock_cut1"; dsc = "{Обрезать фиолетово-синий провод}^"; act = function(s) if (lse_dock_in_panel.index == 3) then lse_dock.state = 1; pr [[Фаэтларр перерезает провод и дверь открывается. ]]; walk("lse_dock"); elseif (lse_dock_in_panel.cut == nil) then lse_dock_in_panel.cut = 3; pr [[Фаэтларр перерезает провод. Свет в помещении моргает. Рядом с панелью начинает мигать красная лампочка. ]]; elseif (lse_dock_in_panel.cut == 3) then pr [[Этот провод уже перерезан. ]]; else walk("game_over_phaetlarr_wrong_wire"); end; end; }; lse_dock_cut2 = obj { nam = "lse_dock_cut2"; dsc = "{Обрезать фиолетово-зеленый провод}^"; act = function(s) if (lse_dock_in_panel.index == 0) then lse_dock.state = 1; pr [[Фаэтларр перерезает провод и дверь открывается. ]]; walk("lse_dock"); elseif (lse_dock_in_panel.cut == nil) then lse_dock_in_panel.cut = 0; pr [[Фаэтларр перерезает провод. Свет в помещении моргает. Рядом с панелью начинает мигать красная лампочка. ]]; elseif (lse_dock_in_panel.cut == 0) then pr [[Этот провод уже перерезан. ]]; else walk("game_over_phaetlarr_wrong_wire"); end; end; }; lse_dock_cut3 = obj { nam = "lse_dock_cut3"; dsc = "{Обрезать фиолетово-желтый провод}^"; act = function(s) if (lse_dock_in_panel.index == 4) then lse_dock.state = 1; pr [[Фаэтларр перерезает провод и дверь открывается. ]]; walk("lse_dock"); elseif (lse_dock_in_panel.cut == nil) then lse_dock_in_panel.cut = 4; pr [[Фаэтларр перерезает провод. Свет в помещении моргает. Рядом с панелью начинает мигать красная лампочка. ]]; elseif (lse_dock_in_panel.cut == 4) then pr [[Этот провод уже перерезан. ]]; else walk("game_over_phaetlarr_wrong_wire"); end; end; }; lse_dock_cut4 = obj { nam = "lse_dock_cut4"; dsc = "{Обрезать фиолетово-оранжевый провод}^"; act = function(s) if (lse_dock_in_panel.index == 1) then lse_dock.state = 1; pr [[Фаэтларр перерезает провод и дверь открывается. ]]; walk("lse_dock"); elseif (lse_dock_in_panel.cut == nil) then lse_dock_in_panel.cut = 1; pr [[Фаэтларр перерезает провод. Свет в помещении моргает. Рядом с панелью начинает мигать красная лампочка. ]]; elseif (lse_dock_in_panel.cut == 1) then pr [[Этот провод уже перерезан. ]]; else walk("game_over_phaetlarr_wrong_wire"); end; end; }; lse_dock_cut5 = obj { nam = "lse_dock_cut5"; dsc = "{Обрезать фиолетово-красный провод}^"; act = function(s) if (lse_dock_in_panel.index == 2) then lse_dock.state = 1; pr [[Фаэтларр перерезает провод и дверь открывается. ]]; walk("lse_dock"); elseif (lse_dock_in_panel.cut == nil) then lse_dock_in_panel.cut = 2; pr [[Фаэтларр перерезает провод. Свет в помещении моргает. Рядом с панелью начинает мигать красная лампочка. ]]; elseif (lse_dock_in_panel.cut == 2) then pr [[Этот провод уже перерезан. ]]; else walk("game_over_phaetlarr_wrong_wire"); end; end; }; lse_dock_cut6 = obj { nam = "lse_dock_cut6"; dsc = "{Обрезать сине-зеленый провод}^"; act = function(s) if (lse_dock_in_panel.index == 6) then lse_dock.state = 1; pr [[Фаэтларр перерезает провод и дверь открывается. ]]; walk("lse_dock"); elseif (lse_dock_in_panel.cut == nil) then lse_dock_in_panel.cut = 6; pr [[Фаэтларр перерезает провод. Свет в помещении моргает. Рядом с панелью начинает мигать красная лампочка. ]]; elseif (lse_dock_in_panel.cut == 6) then pr [[Этот провод уже перерезан. ]]; else walk("game_over_phaetlarr_wrong_wire"); end; end; }; lse_dock_cut7 = obj { nam = "lse_dock_cut7"; dsc = "{Обрезать сине-желтый провод}^"; act = function(s) if (lse_dock_in_panel.index == 5) then lse_dock.state = 1; pr [[Фаэтларр перерезает провод и дверь открывается. ]]; walk("lse_dock"); elseif (lse_dock_in_panel.cut == nil) then lse_dock_in_panel.cut = 5; pr [[Фаэтларр перерезает провод. Свет в помещении моргает. Рядом с панелью начинает мигать красная лампочка. ]]; elseif (lse_dock_in_panel.cut == 5) then pr [[Этот провод уже перерезан. ]]; else walk("game_over_phaetlarr_wrong_wire"); end; end; }; lse_dock_back = obj { nam = "lse_dock_back"; dsc = "{Отойти от панели}^"; act = function(s) walk("lse_dock"); end; }; lse_outer_1 = room { nam = "lse_outer_1"; disp = "Лсэрианотр, внешнее кольцо"; dsc = [[Во внешнем кольце Лсэрианотра нет никого, кто мог бы помешать планам Фаэтларра. К неудовольствию навьяра, улица полностью пуста - нет ни ящиков, ни скамеек, ни камней ни даже какой-нибудь растительности, чтобы можно было хоть как-то укрыться. По левому и правому краю - сплошные металлические стены с закрытыми дверьми. Над городом виднелся громадный купол, на который сверху давит океанская толща. Фаэтларр огляделся - слева вдалеке он заметил группу прогуливающихся навьяров. ]]; way = { kh_vroom("Против часовой стрелки", function(s) pr [[ "Я не хочу попадаться никому на глаза. Лучше туда не ходить", - подумал Фаэтларр. ]]; return false; end); kh_vroom("По часовой стрелке", "lse_outer_2"); }; }; lse_outer_2 = room { nam = "lse_outer_2"; disp = "Лсэрианотр, внешнее кольцо"; dsc = [[Внешнее кольцо Лсэрианотра поражает своей пустотой и безжизненностью. Лишь одинаковые двери на равном расстоянии друг от друга во внешней и внутренней стороне привлекают внимание. Над городом виднелся громадный купол, на который сверху давит океанская толща. ]]; way = { kh_vroom("Против часовой стрелки", "lse_outer_1"); kh_vroom("По часовой стрелке", "lse_outer_3"); }; }; lse_outer_3 = room { nam = "lse_outer_3"; disp = "Лсэрианотр, внешнее кольцо"; dsc = [[Внешнее кольцо Лсэрианотра поражает своей пустотой и безжизненностью. Лишь одинаковые двери на равном расстоянии друг от друга во внешней и внутренней стороне привлекают внимание. Над городом виднелся громадный купол, на который сверху давит океанская толща. ]]; obj = { 'lse_outer_service_entrance' }; way = { kh_vroom("Против часовой стрелки", "lse_outer_2"); kh_vroom("По часовой стрелке", "lse_outer_4"); kh_vroom("В сервисный тоннель", "lse_outer_service_entrance"):disable(); }; }; lse_outer_service_entrance = obj { var { state = 0; }; nam = "lse_outer_service_entrance"; dsc = function(s) if (s.state == 0) then return [[Во внутренней стене Фаэтларр замечает отверстие закрытое {решеткой}. Через него вполне мог бы пролезть человек или навьяр. ]]; else return [[Решетка, закрывающая проход убрана, теперь Фаэтларр вполне может пролезть в него. ]]; end; end; use = function(s, o) if (o == lse_item_toolbox and s.state == 0) then s.state = 1; path('В сервисный тоннель'):enable(); return [[ Недолго думая, Фаэтларр с помощью ломика выковыривает решетку. ]]; end; end; }; lse_outer_4 = room { nam = "lse_outer_4"; disp = "Лсэрианотр, внешнее кольцо"; dsc = [[Внешнее кольцо Лсэрианотра поражает своей пустотой и безжизненностью. Лишь одинаковые двери на равном расстоянии друг от друга во внешней и внутренней стороне привлекают внимание. Над городом виднелся громадный купол, на который сверху давит океанская толща. Дальше безжизненность города становится еще более полной - в той части города даже не горит свет. ]]; way = { kh_vroom("Против часовой стрелки", "lse_outer_3"); kh_vroom("По часовой стрелке", function(s) pr [[ "Нет смысла туда идти", - мелькнула мысль в голове Фаэтларра. ]]; return false; end); }; };