--[[ Файл содержит локации навьярских поселений для главы Атлантида. ]] --[[ Дипатреанотр ]] dyp_temple_guard = room { nam = "ctt_dyp_temple_guard"; dsc = function(s) if (dyp_temple_guard_dlg.state == 0) then return [[У ворот стоят два навьяра, вооруженные копьями. При вашем приближении они начинают нервничать -- переглянувшись, они перехватывают копья, готовясь при необходимости прогнать вас. По плавникам одного из них бегут цветные полосы: темно-фиолетовая, зеленая, оранжевая -- шире чем остальные, серая, ярко-розовая, желтая -- снова широкая, салатовая, снова широкая желтая и, наконец, широкая бледно-оранжевая. После небольшой паузы, полосы появляются снова. ]]; else return [[У ворот стоят два навьяра, вооруженные копьями. Они никак не реагируют на вас. ]]; end; end; dlg = "dyp_temple_guard_dlg"; }; dyp_temple_guard_dlg = dlg { var { state = 0; }; nam = "Страж храма"; entered = function(s) if (s.state == 0) then return [[Стражники загораживают вам проход. По плавникам одного из них бегут цветные полосы. ]]; else back(); return [[Стражник не реагирует на вас. ]]; end; end; phr = { --TODO заменить название токена {tag="test", false, "[Передать <токен>]", [[Стражи, согласно ритуалу, молча открывают ворота, пропуская вас внутрь. ]], code [[ dyp_temple_guard_dlg.state = 1; back(); ]]}; {always=true, "[использовать кодировщик]I'rr Vee'nn"}; }; }; dyp_temple_carving_look = room { nam = "Храм Дипатреанотра, вход"; pic ="images/iyh_navjiarr_map.png"; dsc = [[Над входом в храм вырезана схема, состоящая из нескольких концентрических кругов. ]]; obj = { vway("continue", "{Продолжить}", "dyp_temple_entrance"); }; }; dyp_temple_carving = obj { nam = "dyp_temple_carving"; dsc = [[Над входом в храм вырезано {изображение} состоящее из нескольких кругов и еще каких-то символов. Часть изображения стерлась от времени, однако остальная часть все еще читаема. ]]; act = function(s) walkin("dyp_temple_carving_look"); end; }; dyp_temple_entrance = room { nam = "Храм Дипатреанотра, вход"; dsc = [[Перед вами находится вырезанный в скале вход в навьярский храм. Массивные каменные ступени ведут к громадным двустворчатым дверям, украшенных полустершимися орнаментами. Некогда яркие краски потускнели -- осторожные навьяры не решаются их обновить. ^Скала продолжается на восток и на юго-запад от храма. Вдалеке на севере видны длинные, вытянувшиеся на несколько метров вверх водоросли. К западу заметен обелиск из камней. ]]; underwater = true; entered = function(s) --char_learr:accompany(false); --char_radcliffe:accompany(false); --char_wright:accompany(false); --char_anna:accompany(false); --if ArrayUtils.indexOf(pl.party, 'learr') ~= 0 then -- return [[ -- Вы слышите по радио голос Леарр: "Ты-Дрейк один-пойдешь. Другим нельзя-в-храм-войти". -- ]]; --elseif ArrayUtils.indexOf(pl.party, 'anna') ~= 0 then -- return [[ -- Вы слышите по радио голос Анны: "Дрейк, тебе придется идти одному - испытание можно пройти лишь в одиночку. Удачи". -- ]]; --end; end; obj = { "dyp_temple_guard"; "dyp_temple_carving"; }; way = { kh_vroom("В храм", function(s) pr('Охранники не колеблясь убьют вас, если вы попытаетесь войти. '); return false; --ctt_dyp_temple_l1.px = 1; --ctt_dyp_temple_l1.py = 0; --return "ctt_dyp_temple_l1"; end):disable(); kh_vroom("В Левиафан", "leviathan_airlock"); }; }; dyp_temple_east = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Вы находитесь у подножья скалы, протянувшейся на многие километры на восток от вас. На западе она сворачивает к югу. ]]; }; dyp_temple_south_west = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Вы находитесь у подножья скалы. К юго востоку скала сворачивает на юг и тянется на многие километры. К северо-востоку вы видите храм Дипатреанотра. ]]; }; dyp_temple_south_far = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Вы находитесь у подножья скалы, протянувшейся на многие километры на юг. На севере скала сворачивает к востоку. ]]; }; dyp_temple_north_west = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Перед вами возвышается массивный каменный обелиск. Некогда он был украшен резными орнаментами, но сейчас все они практически полностью стерлись. К юго-востоку от вас возвышается отвесная скала, протянувшаяся на многие километры с юга на восток. Вдалеке на западе вы видите каменные строения навьярского города -- Дипатреанотра. ]]; }; dyp_temple_north = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Левиафан застыл над высокими стеблями водорослей, едва заметно колышущимися в спокойной воде. ]]; }; dyp_temple_crevice_middle = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Левиафан застыл над неглубоким ущельем, протянувшимся с востока на запад. ]]; }; dyp_temple_crevice_east = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Левиафан застыл над неглубоким ущельем, протянувшимся с востока на запад. ]]; }; dyp_temple_crevice_far_east = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Левиафан застыл над неглубоким ущельем, протянувшимся с востока на запад. ]]; }; dyp_temple_crevice_west = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Левиафан застыл над неглубоким ущельем, протянувшимся с востока на запад. ]]; }; dyp_temple_crevice_far_west = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Левиафан застыл над неглубоким ущельем, протянувшимся с востока на запад. ]]; }; dyp_temple_warning = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Перед вами возвышается массивный каменный обелиск. Большая часть изображенного на нем стерлась. ]]; }; dyp_temple_cliff_1 = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Вы находитесь к югу от высокой скалы, протянувшейся с востока на запад. ]] }; dyp_temple_cliff_2 = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Вы находитесь к югу от высокой скалы, протянувшейся с востока на запад. ]] }; dyp_temple_cliff_3 = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Вы находитесь к югу от высокой скалы, протянувшейся с востока на запад. ]] }; dyp_temple_cliff_4 = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Вы находитесь к югу от высокой скалы, протянувшейся с востока на запад. ]] }; dyp_temple_cliff_5 = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Вы находитесь к югу от высокой скалы, протянувшейся с востока на запад. ]] }; dyp_temple_whale = room { nam = "Океан"; no_exit = [[Нет смысла покидать Левиафан здесь. ]]; view = [[Рядом с вами покоится скелет громадного кита. Древние кости занесены илом, однако все еще прекрасно видны с большого расстояния. ]]; }; dyp_temple_navigation = dlg { nam = "Штурвал Левиафана"; entered = function(s) end; phr = { {tag="dyp_temple_entrance"}; {always=true, "[На восток, вдоль скалы]", function() move(submarine_leviathan, "dyp_temple_east"); psub("dyp_temple_east"); end}; {always=true, "[На северо-восток, к зарослям]", function() move(submarine_leviathan, "dyp_temple_north"); psub("dyp_temple_north"); end}; {always=true, "[На северо-запад, к обелиску]", function() move(submarine_leviathan, "dyp_temple_north_west"); psub("dyp_temple_north_west"); end}; {always=true, "[На юго-запад, вдоль скалы]", function() move(submarine_leviathan, "dyp_temple_south_west"); psub("dyp_temple_south_west"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_east"}; {always=true, "[На запад, вдоль скалы]", function() move(submarine_leviathan, "dyp_temple_entrance"); psub("dyp_temple_entrance"); end}; {always=true, "[На север, к зарослям]", function() move(submarine_leviathan, "dyp_temple_north"); psub("dyp_temple_north"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_south_west"}; {always=true, "[На северо-восток, вдоль скалы]", function() move(submarine_leviathan, "dyp_temple_entrance"); psub("dyp_temple_entrance"); end}; {always=true, "[На юг, вдоль скалы]", function() move(submarine_leviathan, "dyp_temple_south_far"); psub("dyp_temple_south_far"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_south_far"}; {always=true, "[На север, вдоль скалы]", function() move(submarine_leviathan, "dyp_temple_south_west"); psub("dyp_temple_south_west"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_north_west"}; {always=true, "[На юго-восток, к храму]", function() move(submarine_leviathan, "dyp_temple_entrance"); psub("dyp_temple_entrance"); end}; {always=true, "[На запад, в Дипатреанотр]", function() move(submarine_leviathan, "dyp_city_east"); psub("dyp_city_east"); --TODO enter the city end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_north"}; {always=true, "[На юго-запад, к храму]", function() move(submarine_leviathan, "dyp_temple_entrance"); psub("dyp_temple_entrance"); end}; {always=true, "[На юг, к скале]", function() move(submarine_leviathan, "dyp_temple_east"); psub("dyp_temple_east"); end}; {always=true, "[На север, к ущелью]", function() move(submarine_leviathan, "dyp_temple_crevice_middle"); psub("dyp_temple_crevice_middle"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_crevice_middle"}; {always=true, "[На юг, к зарослям]", function() move(submarine_leviathan, "dyp_temple_north"); psub("dyp_temple_north"); end}; {always=true, "[На восток, вдоль ущелья]", function() move(submarine_leviathan, "dyp_temple_crevice_east"); psub("dyp_temple_crevice_east"); end}; {always=true, "[На север, к скале]", function() move(submarine_leviathan, "dyp_temple_cliff_4"); psub("dyp_temple_cliff_4"); end}; {always=true, "[На запад, вдоль ущелья]", function() move(submarine_leviathan, "dyp_temple_crevice_west"); psub("dyp_temple_crevice_west"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_crevice_east"}; {always=true, "[На юго-запад, к зарослям]", function() move(submarine_leviathan, "dyp_temple_north"); psub("dyp_temple_north"); end}; {always=true, "[На восток, вдоль ущелья]", function() move(submarine_leviathan, "dyp_temple_crevice_far_east"); psub("dyp_temple_crevice_far_east"); end}; {always=true, "[На северо-восток, к костям]", function() move(submarine_leviathan, "dyp_temple_whale"); psub("dyp_temple_whale"); end}; {always=true, "[На север, к скале]", function() move(submarine_leviathan, "dyp_temple_cliff_5"); psub("dyp_temple_cliff_5"); end}; {always=true, "[На запад, вдоль ущелья]", function() move(submarine_leviathan, "dyp_temple_crevice_middle"); psub("dyp_temple_crevice_middle"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_crevice_far_east"}; {always=true, "[На север, к костям]", function() move(submarine_leviathan, "dyp_temple_whale"); psub("dyp_temple_whale"); end}; {always=true, "[На запад, вдоль ущелья]", function() move(submarine_leviathan, "dyp_temple_crevice_east"); psub("dyp_temple_crevice_east"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_crevice_west"}; {always=true, "[На север, к скале]", function() move(submarine_leviathan, "dyp_temple_cliff_3"); psub("dyp_temple_cliff_3"); end}; {always=true, "[На восток, вдоль ущелья]", function() move(submarine_leviathan, "dyp_temple_crevice_middle"); psub("dyp_temple_crevice_middle"); end}; {always=true, "[На юго-восток, к зарослям]", function() move(submarine_leviathan, "dyp_temple_north"); psub("dyp_temple_north"); end}; {always=true, "[На запад, вдоль ущелья]", function() move(submarine_leviathan, "dyp_temple_crevice_far_west"); psub("dyp_temple_crevice_far_west"); end}; {always=true, "[На северо-запад, к обелиску]", function() move(submarine_leviathan, "dyp_temple_warning"); psub("dyp_temple_warning"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_crevice_far_west"}; {always=true, "[На север, к обелиску]", function() move(submarine_leviathan, "dyp_temple_warning"); psub("dyp_temple_warning"); end}; {always=true, "[На восток, вдоль ущелья]", function() move(submarine_leviathan, "dyp_temple_crevice_west"); psub("dyp_temple_crevice_west"); end}; {always=true, "[На юг, к обелиску]", function() move(submarine_leviathan, "dyp_temple_north_west"); psub("dyp_temple_north_west"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_warning"}; {always=true, "[На север, к скале]", function() move(submarine_leviathan, "dyp_temple_cliff_2"); psub("dyp_temple_cliff_2"); end}; {always=true, "[На юг, к ущелью]", function() move(submarine_leviathan, "dyp_temple_crevice_far_west"); psub("dyp_temple_crevice_far_west"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_cliff_1"}; {always=true, "[На восток, вдоль скалы]", function() move(submarine_leviathan, "dyp_temple_cliff_2"); psub("dyp_temple_cliff_2"); end}; {always=true, "[На юго-восток, к обелиску]", function() move(submarine_leviathan, "dyp_temple_warning"); psub("dyp_temple_warning"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_cliff_2"}; {always=true, "[На восток, вдоль скалы]", function() move(submarine_leviathan, "dyp_temple_cliff_3"); psub("dyp_temple_cliff_3"); end}; {always=true, "[На юг, к обелиску]", function() move(submarine_leviathan, "dyp_temple_warning"); psub("dyp_temple_warning"); end}; {always=true, "[На запад, вдоль скалы]", function() move(submarine_leviathan, "dyp_temple_cliff_1"); psub("dyp_temple_cliff_1"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_cliff_3"}; {always=true, "[На восток, вдоль скалы]", function() move(submarine_leviathan, "dyp_temple_cliff_4"); psub("dyp_temple_cliff_4"); end}; {always=true, "[На юг, к ущелью]", function() move(submarine_leviathan, "dyp_temple_crevice_west"); psub("dyp_temple_crevice_west"); end}; {always=true, "[На юго-запад, к обелиску]", function() move(submarine_leviathan, "dyp_temple_warning"); psub("dyp_temple_warning"); end}; {always=true, "[На запад, вдоль скалы]", function() move(submarine_leviathan, "dyp_temple_cliff_2"); psub("dyp_temple_cliff_2"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_cliff_4"}; {always=true, "[На восток, вдоль скалы]", function() move(submarine_leviathan, "dyp_temple_cliff_5"); psub("dyp_temple_cliff_5"); end}; {always=true, "[На юг, к ущелью]", function() move(submarine_leviathan, "dyp_temple_crevice_middle"); psub("dyp_temple_crevice_middle"); end}; {always=true, "[На запад, вдоль скалы]", function() move(submarine_leviathan, "dyp_temple_cliff_3"); psub("dyp_temple_cliff_3"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_cliff_5"}; {always=true, "[На восток, вдоль скалы]", function() temple_found = true; move(submarine_leviathan, "iyh_far_from_entrance_foot"); walk("iyh_far_from_entrance"); --TODO катсцена при первом прибытии end}; {always=true, "[На юго-восток, к костям]", function() move(submarine_leviathan, "dyp_temple_whale"); psub("dyp_temple_whale"); end}; {always=true, "[На юг, к ущелью]", function() move(submarine_leviathan, "dyp_temple_crevice_east"); psub("dyp_temple_crevice_east"); end}; {always=true, "[На запад, вдоль скалы]", function() move(submarine_leviathan, "dyp_temple_cliff_4"); psub("dyp_temple_cliff_4"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; {tag="dyp_temple_whale"}; {always=true, "[На север, к храму]", function() temple_found = true; move(submarine_leviathan, "iyh_far_from_entrance_foot"); walk("iyh_far_from_entrance"); --TODO катсцена при первом прибытии end}; {always=true, "[На юг, к ущелью]", function() move(submarine_leviathan, "dyp_temple_crevice_far_east"); psub("dyp_temple_crevice_far_east"); end}; {always=true, "[Отойти от штурвала]", code = [[ walk('leviathan_wheelhouse'); ]]}; {always=true, "[Отправиться в другое место]", code = [[ walk('leviathan_dlg'); ]]}; }; }; --[[ Ираафаанотр ]] --[[ Ираафаанотр.Город ]] iraa_near_city_west = room { nam = "iraa_near_city_west"; disp = [[Ираафаанотр, у города]]; dsc = [[Ровное илистое плато простирается вокруг насколько хватает взгляда. Вы находитесь на западной окраине Ираафаанотра -- небольшого навьярского поселения. Невысокие каменные здания, раскиданные в кажущемся беспорядке служат жилищем для многих из них. В центре городка возвышается каменный обелиск, с нанесенными на него изображениями. ]]; view = [[Ровное илистое плато простирается вокруг насколько хватает взгляда. Вы находитесь на западной окраине Ираафаанотра -- небольшого навьярского поселения. Невысокие каменные здания, раскиданные в кажущемся беспорядке служат жилищем для многих из них. В центре городка возвышается каменный обелиск, с нанесенными на него изображениями. ]]; obj = { "iraa_city_west_guard" }; way = { kh_vroom("В левиафан", "leviathan_airlock"); kh_vroom("На восток, к центру Ираафаанотра", "iraa_city_west"); }; }; iraa_city_west = room { nam = "iraa_city_west"; disp = "Ираафаанотр, улица"; dsc = [[Широкая мощеная улица, пересекающая город с востока на запад. К северу вы видите обширные поля, обрабатываемые десятками рук и дающие пищу жителям селения. К востоку вы видите каменный обелиск, возвышающийся над центральной площадью Ираафаанотра. ]]; way = { kh_vroom("На запад", "iraa_near_city_west"); kh_vroom("На восток, к центру Ираафаанотра", "iraa_city_center"); }; }; iraa_city_center = room { nam = "iraa_city_center"; disp = "Ираафаанотр, центральная площадь"; dsc = [[Центральная площадь Ираафаанотра практически пуста. Лишь несколько зевак с интересом разглядывает вас, осторожно выглядывая из дверей библиотеки -- крупного здания, расположенного к северу от вас. Напротив библиотеки расположен дом вождя, не уступающий размерами библиотеке. ]]; obj = { "iraa_obelisk"; }; way = { kh_vroom("На запад", "iraa_city_west"); kh_vroom("На восток", "iraa_city_east"); kh_vroom("В библиотеку", "iraa_city_library"); kh_vroom("В дом вождя", "iraa_city_chief_house"); }; }; iraa_obelisk = obj { nam = "iraa_obelisk"; dsc = [[В центре площади стоит большой каменный {обелиск}, с нанесенными на него символами. ]]; act = function(s) iraaphaanotrr_temple_found = true; return [[На обелиске, традиционно для навьяров, начертано название города и вырезана карта, указывающая путь к храму. ]]; end; }; iraa_city_east = room { var { state = 0; }; nam = "iraa_city_east"; disp = "Ираафаанотр, улица"; dsc = [[Широкая мощеная улица, пересекающая город с востока на запад. К северу вы видите обширные поля, обрабатываемые десятками рук и дающие пищу жителям селения. К западу вы видите каменный обелиск, возвышающийся над центральной площадью Ираафаанотра. ]]; entered = function(s) if (state == 0 and char_learr.follow) then path("На юг, к саду"):enable(); if language_known then return [[Здесь Леарр неожиданно останавливается. Она смотрит на юг, а по ее головным плавникам бегут цветные полосы -- она говорит, что здесь, за домом вождя есть небольшой сад, а сразу за ним находится ее дом. Она просит вас пойти туда вместе с ней. ]]; else return [[Здесь Леарр неожиданно останавливается. Она смотрит на юг, а по ее головным плавникам бегут цветные полосы. Вы не понимаете, что она пытается вам сказать, но она хватает вас за руку и пытается вести за собой на юг. ]]; end; end; end; way = { kh_vroom("На восток", "iraa_near_city_east"); kh_vroom("На юг, к саду", "iraa_garden"):disable(); kh_vroom("На запад, к центру Ираафаанотра", "iraa_city_center"); }; }; iraa_garden = room { nam = "iraa_garden"; disp = "Ираафаанотр, сад"; dsc = [[Небольшой сад, расположенный за домом вождя. ]]; way = { kh_vroom("На север, к главной улице", "iraa_near_city_east"); kh_vroom("На юг, к дому Леарр", "iraa_learr_house_near"); }; }; iraa_learr_house_near = room { nam = "iraa_learr_house_near"; disp = "Ираафаанотр, у дома Леарр"; }; iraa_near_city_east = room { nam = "iraa_near_city_east"; disp = [[Ираафаанотр, у города]]; dsc = [[Ровное илистое плато простирается вокруг насколько хватает взгляда. Вы находитесь на восточной окраине Ираафаанотра -- небольшого навьярского поселения. Невысокие каменные здания, раскиданные в кажущемся беспорядке служат жилищем для многих из них. В центре городка возвышается каменный обелиск, с нанесенными на него изображениями. ]]; obj = { "iraa_city_east_guard"; }; way = { kh_vroom("К центру Ираафаанотра", "iraa_city_east"); }; }; iraa_city_west_guard = npc { nam = "iraa_city_west_guard"; dsc = [[По обе стороны дороги стоят двое навьярских {стражникиов}. ]]; phrases = function(s) if (language_known) then if (atl_rep_iraa >= 0) then return { "Стражники указывают вам на дом вождя. По головным плавникам стражников бегут цветные полосы -- они просят вас говорить с вождем. ", "По головным плавникам стражников бегут цветные полосы -- они приветствуют вас" }; else return { "Стражники указывают вам на дом вождя. По их головным плавникам бегут цветные полосы -- они просят вас говорить с вождем. " }; end; else return { "Стражники указывают вам на дом вождя. По головным плавникам стражников бегут цветные полосы, но вы не понимаете, что они значат. " }; end; end; }; iraa_city_east_guard = npc { nam = "iraa_city_east_guard"; dsc = [[По обе стороны дороги стоят двое навьярских {стражникиов}. ]]; phrases = function(s) if (language_known) then if (atl_rep_iraa >= 0) then return { "Стражники указывают вам на дом вождя. По головным плавникам стражников бегут цветные полосы -- они просят вас говорить с вождем. ", "По головным плавникам стражников бегут цветные полосы -- они приветствуют вас" }; else return { "Стражники указывают вам на дом вождя. По их головным плавникам бегут цветные полосы -- они просят вас говорить с вождем. " }; end; else return { "Стражники указывают вам на дом вождя. По головным плавникам стражников бегут цветные полосы, но вы не понимаете, что они значат. " }; end; end; }; iraa_city_chief_house = room { nam = "iraa_chief_house"; dsc = [[Приемная дома вождя представляет собой огромый зал. Несколько массивных колонн, не слишком искусно сделанных, поддерживают тяжелую каменную крышу здания. В дальнем конце зала установлен каменный трон. Перед троном установлен громадный, каменный же стол, вокруг которого расставлено множество стульев. ]]; way = { kh_vroom("На площадь", "iraa_city_center"); }; obj = { "iraa_chief" }; }; iraa_chief = npc { nam = "iraa_chief"; dsc = [[{Вождь Ираафаанотра} сидит на троне, внимательно наблюдая за вами своими серыми глазами. Руки его неподвижно лежат на подлокотниках. Серебристая чешуя, слегка синеватая потускнела за долгие годы жизни. Одет он в плотный облегающий костюм из водорослей, не стесняющий движения, как принято у всех, даже самых высокопоставленных навьяров. ]]; dlg = "iraa_chief_dlg"; }; iraa_chief_dlg = dlg { var { ask_temple = false; }; nam = "iraa_chief_dlg"; disp = "Вождь Ираафаанотра"; entered = function(s) if (language_known) then psub("greet"); if (s.ask_temple) then s.ask_temple = false; pon("temple"); end; return [[Вы подходите к каменному столу, чтобы предстать перед вождем Ираафаанотра -- немолодым уже навьяром. Длинные руки, покрытые тусклой серебристой чешуей, с едва заметным синеватым отливом, покоятся на подлокотниках трона. Не поднимаясь, он начинает говорить. По головным плавникам вождя бегут цветные полосы -- вождь прииглашает вас сесть напротив него и открыть цель вашего визита. В скафандре у вас с трудом получается это сделать, но вы не решаетесь оскорбить вождя и остаться стоять перед ним. ]]; else psub("no_speech"); return [[]]; end; end; phr = { {tag="no_speech"}; {"[Уйти]", code [[ back(); ]]}; {tag="greet"}; {"[Кодировщик]Приветствую. Мы ищем фрагмент карты пути к Лсэрианотру, который находится у вас. ", [[Вождь задумчиво смотрит на вас. Через некоторое время он отвечает: "У нас нет ничего подобного. Я не знаю, о чем вы говорите". ]], code [[psub("more_info");]]}; {tag="temple", false, "[Кодировщик]Мы просим разрешения посетить храм Ираафаанотра. ", [[Вождь отрицательно качает головой: "Это исключено, хевьяр. "]]}; {"[Кодировщик]Мы ищем Венаэданотр. Вы знаете где это?", [[Вождь кивает: "Далеко отсюда. Спросите у Ритларра. "]]}; {"[Кодировщик]Мы ищем Нлейисланотр. Вы знаете где это?", [[Вождь кивает: "Далеко отсюда. Спросите у Ритларра. "]]}; {"[Уйти]", code [[ back(); ]]}; {tag="more_info"}; {"[Кодировщик]Один из фрагментов карты должен быть у вас[Передать табличку, найденную в храме]. ", [[Вождь отвечает: "Я не знаю ни о чем подобном. вам стоит спросить у Ритларра в библиотеке. "]]}; {"[Уйти]", code [[ back(); ]]}; }; }; iraa_city_library = room { nam = "iraa_city_library"; dsc = [[Огромный зал библиотеки Ираафаанотра практичски пусто. ]]; obj = { "iraa_rytlarr", "iraa_shelves" }; }; iraa_shelves = obj { nam = "iraa_shelves"; dsc = [[Вдоль стен стоят многочисленные {стеллажи} с древними и новыми записями. Большинство из них сделаны на металлических табличках и явно очень стары. Вперемешку с ними стоят и каменные -- более современные, и даже сделанные на водорослях -- те, что еще не успели переписать на что-то более долговечное. ]]; act = [[Вам потребуются десятилетия, чтобы изучить все, находящиеся здесь записи. ]]; }; iraa_rytlarr = npc { nam = "iraa_rytlarr"; dsc = [[По залу неспешно расхаживает молодой {навьяр}. Зеленые глаза внимательно рассматривают полки. Зеленовато-серая чешуя поблескивает на свету. Время от времени он останавливается возле одной из полок, чтобы перенести те или иные записи с места на место]]; dlg = "iraa_rytlarr_dlg"; }; iraa_rytlarr_dlg = dlg { nam = "iraa_rytlarr_dlg"; disp = [[Ритларр]]; entered = function(s) if (language_known) then psub("generic"); return [[Навьяр обращается к вам: "Ритларр приветствует тебя, хевьяр". ]]; else psub("no_speech"); return [[По головным плавникам навьяра бегут цветные полосы, но вы не понимаете, что он пытается сказать вам. ]]; end; end; phr = { {tag="no_speech"}; {"[Уйти]", code [[ back(); ]]}; {tag="generic"}; {"[Кодировщик]Я ищу часть карты, ведущей в Лсэрианотр.", [[Навьяр некоторое время стоит, задумавшись. Потом он начинает ходить от полки к полке. Наконец, он сообщает: "Я не уверен, что она у нас есть. Но если вы уверены -- она должна быть в храме. Спросите у вождя. Быть может он позволит вам войти внутрь по такому случаю". ]], code [[ iraa_chief_dlg.ask_temple = true; ]]}; {"[Кодировщик]Ты знаешь, где находится Венаэданотр?", [[Навьяр кивает: "Мы знаем путь туда". Он ведет вас к одной из полок в дальнем конце зала. Ритларр достает одну из металлических пластин и протягивает вам со словами: "Вернете, когда сделаете копию у себя". ]], code [[ ]]}; {"[Кодировщик]Ты знаешь, где находится Нлейисланотр?", [[Навьяр отрицательно качает головой: "У нас нет карты пути к этому месту. Быть может, путь знают в Дипатреанотре. "]]}; {"[Уйти]", code [[ back(); ]]}; }; }; --[[ Ираафаанотр.Храм ]] iraa_temple_entrance = room { var { state = 0; }; nam = "Храм Ираафаанотра, вход"; underwater = true; dsc = [[Перед вами возвышаются массивные двустворчатые ворота храма, вытесанные из камня. Над ними вы видите тщательно поддерживаемую в порядке карту, указывающую путь к Ираафаанотру. Скала тянется с севера на юг насколько хватает глаз. ]]; view = [[Через иллюминаторы видны массивные ворота вытесанного в скале храма. Над входом расположен символ храма -- карта пути к самому Ираафаанотру отсюда. ]]; entered = function(s) if (char_anna.follow and s.state == 0) then pr [[В динамике скафандра вы слышите голос Анны Рэдклифф: "Этот символ - ни что иное, как карта, указывающая путь к городу. В отличие от самого города, здесь я не вижу указаний ни на одно место, кроме храма и Ираафаанотра". ]]; end; s.state = 1; end; obj = { "iraa_temple_guardians"; }; way = { kh_vroom("Войти", function(s) return [[Стражники не пропустят вас. ]]; end); kh_vroom("Вдоль скалы на север", "iraa_temple_north_1"); kh_vroom("Вдоль скалы на юг", "iraa_temple_south"); kh_vroom("В Левиафан", "leviathan_airlock"); }; }; iraa_temple_guardians = npc { nam = "iraa_temple_guardians"; dsc = [[У входа в храм стоят двое {стражников} -- обычный дозор. ]]; phrases = function(s) if language_known then return { "В вашем присутствии стражники заметно нервничают. "; "Стражники осторожно переглядываются. "; "По головным плавникам одного из стражников бегут цветные полосы: \"Уходите, вам здесь не место\". "; }; else return { "В вашем присутствии стражники заметно нервничают. "; "Стражники осторожно переглядываются. "; "По головным плавникам одного из стражников бегут цветные полосы, но вы не понимаете, что он хочет вам сказать. "; }; end; end; }; iraa_temple_south = room { nam = "iraa_temple_south"; disp = "У скалы"; dsc = [[На востоке от вас возвышаетеся скала, протянувшаяся на многие километры с севера на юг. Вдалеке на севере вы видите Левиафан -- вашу субмарину и вход в храм Ираафаанотра, охраняемый двумя вооруженными навьярами. ]]; way = { kh_vroom("Вдоль скалы на север", "iraa_temple_entrance"); }; }; iraa_temple_north_1 = room { nam = "iraa_temple_north_1"; disp = "У скалы"; dsc = [[На востоке от вас возвышаетеся скала, протянувшаяся на многие километры с севера на юг. Вдалеке на юге вы видите Левиафан -- вашу субмарину и вход в храм Ираафаанотра, охраняемый двумя вооруженными навьярами. ]]; way = { kh_vroom("Вдоль скалы на север", "iraa_temple_north_2"); kh_vroom("Вдоль скалы на юг", "iraa_temple_entrance"); }; }; iraa_temple_north_2 = room { nam = "iraa_temple_north_2"; disp = "У скалы"; dsc = [[На востоке от вас возвышаетеся скала, протянувшаяся на многие километры с севера на юг. Вдалеке на юге вы едва различаете Левиафан -- вашу субмарину. ]]; way = { kh_vroom("Вдоль скалы на север", "iraa_temple_north_3"); kh_vroom("Вдоль скалы на юг", "iraa_temple_north_1"); }; }; iraa_temple_north_3 = room { nam = "iraa_temple_north_3"; disp = "У входа в ущелье"; dsc = [[К востоку от вас возвышается скала, протянувшаяся на многие километры ссевера на юг. Рядом с вами в скале имеется узкое ущелье -- настолько незаметное, что проплывай вы мимо на Левиафане, вы не обратили бы на него никакого внимания. ]]; way = { kh_vroom("В ущелье", "iraa_temple_ravine_1"); kh_vroom("Вдоль скалы на юг", "iraa_temple_north_2"); }; }; iraa_temple_ravine_1 = room { nam = "iraa_temple_ravine_1"; disp = "Ущелье"; dsc = [[Глубокое узкое ущелье. Стены его почти отвесные и очен неровные, но вы бы не рискнули пытаться карабкаться по ним -- порода очень мягкая и может легко обрушиться под вшим весом. ]]; way = { kh_vroom("На запад", "iraa_temple_north_3"); kh_vroom("На восток", "iraa_temple_ravine_2"); }; }; iraa_temple_ravine_2 = room { nam = "iraa_temple_ravine_2"; disp = "Ущелье"; dsc = [[Глубокое узкое ущелье. Стены его почти отвесные и очен неровные, но вы бы не рискнули пытаться карабкаться по ним -- порода очень мягкая и может легко обрушиться под вшим весом. ]]; way = { kh_vroom("На запад", "iraa_temple_ravine_1"); kh_vroom("На север", "iraa_temple_ravine_6"); kh_vroom("На восток", "iraa_temple_ravine_3"); }; }; iraa_temple_ravine_3 = room { nam = "iraa_temple_ravine_3"; disp = "Ущелье"; dsc = [[Глубокое узкое ущелье. Стены его почти отвесные и очен неровные, но вы бы не рискнули пытаться карабкаться по ним -- порода очень мягкая и может легко обрушиться под вшим весом. ]]; way = { kh_vroom("На запад", "iraa_temple_ravine_2"); kh_vroom("На восток", "iraa_temple_ravine_4"); }; }; iraa_temple_ravine_4 = room { nam = "iraa_temple_ravine_4"; disp = "Ущелье"; dsc = [[Глубокое узкое ущелье. Стены его почти отвесные и очен неровные, но вы бы не рискнули пытаться карабкаться по ним -- порода очень мягкая и может легко обрушиться под вшим весом. ]]; way = { kh_vroom("На запад", "iraa_temple_ravine_3"); kh_vroom("На север", "iraa_temple_ravine_9"); kh_vroom("На восток", "iraa_temple_ravine_5"); }; }; iraa_temple_ravine_5 = room { nam = "iraa_temple_ravine_5"; disp = "Ущелье"; dsc = [[Глубокое узкое ущелье. Стены его почти отвесные и очен неровные, но вы бы не рискнули пытаться карабкаться по ним -- порода очень мягкая и может легко обрушиться под вшим весом. ]]; way = { kh_vroom("На запад", "iraa_temple_ravine_4"); kh_vroom("В трещину", "iraa_temple_crevice"); }; }; iraa_temple_ravine_6 = room { nam = "iraa_temple_ravine_6"; disp = "Ущелье"; dsc = [[Глубокое узкое ущелье. Стены его почти отвесные и очен неровные, но вы бы не рискнули пытаться карабкаться по ним -- порода очень мягкая и может легко обрушиться под вшим весом. ]]; way = { kh_vroom("На юг", "iraa_temple_ravine_2"); kh_vroom("На север", "iraa_temple_ravine_7"); }; }; iraa_temple_ravine_7 = room { nam = "iraa_temple_ravine_7"; disp = "Ущелье"; dsc = [[Глубокое узкое ущелье. Стены его почти отвесные и очен неровные, но вы бы не рискнули пытаться карабкаться по ним -- порода очень мягкая и может легко обрушиться под вшим весом. ]]; way = { kh_vroom("На юг", "iraa_temple_ravine_6"); kh_vroom("На восток", "iraa_temple_ravine_8"); kh_vroom("На север", "iraa_temple_ravine_10"); }; }; iraa_temple_ravine_8 = room { nam = "iraa_temple_ravine_8"; disp = "Ущелье"; dsc = [[Глубокое узкое ущелье. Стены его почти отвесные и очен неровные, но вы бы не рискнули пытаться карабкаться по ним -- порода очень мягкая и может легко обрушиться под вшим весом. ]]; way = { kh_vroom("На запад", "iraa_temple_ravine_7"); kh_vroom("На север", "iraa_temple_ravine_10"); kh_vroom("На восток", "iraa_temple_ravine_9"); }; }; iraa_temple_ravine_9 = room { nam = "iraa_temple_ravine_9"; disp = "Ущелье"; dsc = [[Глубокое узкое ущелье. Стены его почти отвесные и очен неровные, но вы бы не рискнули пытаться карабкаться по ним -- порода очень мягкая и может легко обрушиться под вшим весом. ]]; way = { kh_vroom("На запад", "iraa_temple_ravine_8"); kh_vroom("На юг", "iraa_temple_ravine_4"); }; }; iraa_temple_ravine_10 = room { nam = "iraa_temple_ravine_10"; disp = "Ущелье"; dsc = [[Глубокое узкое ущелье. Стены его почти отвесные и очен неровные, но вы бы не рискнули пытаться карабкаться по ним -- порода очень мягкая и может легко обрушиться под вшим весом. ]]; way = { kh_vroom("На север", "iraa_temple_ravine_11"); kh_vroom("На восток", "iraa_temple_ravine_8"); kh_vroom("На юг", "iraa_temple_ravine_7"); }; }; iraa_temple_ravine_11 = room { nam = "iraa_temple_ravine_11"; disp = "Ущелье"; dsc = [[Глубокое узкое ущелье. Стены его почти отвесные и очен неровные, но вы бы не рискнули пытаться карабкаться по ним -- порода очень мягкая и может легко обрушиться под вшим весом. ]]; way = { kh_vroom("На север", "iraa_temple_ravine_11"); kh_vroom("На восток", "iraa_temple_ravine_8"); kh_vroom("На юг", "iraa_temple_ravine_7"); }; }; iraa_temple_crack = room { nam = "iraa_temple_crack"; disp = "Трещина в скале"; dsc = [[Небольшая узкая трещина в скале. Вы с огромным трудом перемещаетесь внутри. С одной стороны вы видите ущелье, ерез которое вы проникли сюда. С другой стороны -- какой-то хорошо освещенный коридор. ]]; way = { kh_vroom("В коридор", "iraa_temple_corridor_6"); kh_vroom("В ущелье", "iraa_temple_ravine_5"); }; }; iraa_temple_corridor_6 = room { nam = "iraa_temple_corridor_6"; disp = "Храм Ираафаанотра, коридор"; dsc = [[Вы стоите в самом конце коридора в храме Ираафаанотра. Вокруг -- ровные камееные стены. В одной из них вы видите глубокую, трещину, через которую вы с трудом протиснулись сюда. Еще в одной из стен вы видите небольшой дверной проем, за которым скрывается маленькая комнатка. ]]; way = { kh_vroom("В трещину", "iraa_temple_crack"); kh_vroom("В комнату", "iraa_temple_room_0"); kh_vroom("По коридору, на юг", "iraa_temple_corridor_5"); }; }; iraa_temple_corridor_5 = room { nam = "iraa_temple_corridor_5"; disp = "Храм Ираафаанотра, коридор"; dsc = [[Вы стоите в коридоре в храме Ираафаанотра. В одной из ровных каменных стен, расположенных по сторонам от вас, имеется небольшой дверной проем, за которым скрывается маленькая комнатка. ]]; way = { kh_vroom("В комнату", "iraa_temple_room_2"); kh_vroom("По коридору, на север", "iraa_temple_corridor_6"); kh_vroom("По коридору, на юг", "iraa_temple_corridor_4"); }; }; iraa_temple_corridor_4 = room { nam = "iraa_temple_corridor_4"; disp = "Храм Ираафаанотра, коридор"; dsc = [[Вы стоите в коридоре в храме Ираафаанотра. Вокруг -- ровные каменные стены. ]]; way = { kh_vroom("По коридору, на север", "iraa_temple_corridor_5"); kh_vroom("По коридору, на юг", "iraa_temple_corridor_3"); }; }; iraa_temple_corridor_3 = room { nam = "iraa_temple_corridor_3"; disp = "Храм Ираафаанотра, коридор"; dsc = [[Вы стоите в коридоре в храме Ираафаанотра. Вокруг -- ровные каменные стены. Здесь коридор сворачивает под прямым углом к северу. В конце коридора на западе вы видите массивную каменную дверь, которая сейчас открыта. На севере коридор заканчивается тупиком. К востоку от вас массивная каменная дверь, но она заперта. ]]; way = { kh_vroom("По коридору, на север", "iraa_temple_corridor_4"); kh_vroom("В комнату", "iraa_temple_room_5"); kh_vroom("По коридору, на запад", "iraa_temple_corridor_2"); }; }; iraa_temple_corridor_2 = room { nam = "iraa_temple_corridor_2"; disp = "Храм Ираафаанотра, коридор"; dsc = [[Вы стоите в коридоре в храме Ираафаанотра. Вокруг -- ровные каменные стены. ]]; way = { kh_vroom("По коридору, на восток", "iraa_temple_corridor_3"); kh_vroom("В комнату в северной стене", "iraa_temple_room_3"); kh_vroom("В комнату в южной стене", "iraa_temple_room_6"); kh_vroom("По коридору, на запад", "iraa_temple_corridor_1"); }; }; iraa_temple_corridor_1 = room { nam = "iraa_temple_corridor_1"; disp = "Храм Ираафаанотра, коридор"; dsc = [[Вы стоите в коридоре в храме Ираафаанотра. Вокруг -- ровные каменные стены. Прямо перед вами находится дверь, ведущая в основное помещение храма. Отсюда вы видите, что в нем никого нет. ]]; way = { kh_vroom("По коридору, на запад", "iraa_temple_corridor_2"); kh_vroom("В комнату в северной стене", "iraa_temple_room_7"); kh_vroom("В комнату в южной стене", "iraa_temple_room_1"); kh_vroom("В главный зал", "iraa_temple_main_3"); }; }; iraa_temple_main_3 = room { nam = "iraa_temple_main_3"; disp = "Храм Ираафаанотра, главный зал"; dsc = [[Вы находитесь в конце главного зала храма Ираафаанотра. В стенах проделаны многочисленые ниши, в которых покоятся священные реликвии навьяров. Массивная каменная дверь ведет в задние помещения. ]]; way = { kh_vroom("в дверь", "iraa_temple_corridor_1"); kh_vroom("К центру зала", "iraa_temple_main_2"); }; }; iraa_temple_main_2 = room { nam = "iraa_temple_main_2"; disp = "Храм Ираафаанотра, главный зал"; dsc = [[Вы находитесь в центре главного зала храма Ираафаанотра. Рядом с вами находится пустой пьедестал, на котором должна покоиться важнейшая реликвия храма, однако сейчас она отсутствует. Слева и справа от вас находятся залы, именуемые залами Ответа и Вопроса. ]]; way = { kh_vroom("В конец зала", "iraa_temple_main_3"); kh_vroom("В зал Вопроса", "iraa_temple_qhall"); kh_vroom("В зал Ответа", "iraa_temple_ahall"); kh_vroom("К главному входу", "iraa_temple_main_1"); }; obj = { "iraa_temple_lever_4" }; }; iraa_temple_main_1 = room { nam = "iraa_temple_main_1"; disp = "Храм Ираафаанотра, главный зал"; dsc = [[Вы находитесь в главном зале храма Ираафаанотра. В многочисленных нишах в стенах покоятся древние реликвии. Перед вами возвышаются массивные ворота храма, за которыми наверняка стоит обычная стража -- двое вооруженных навьяров. ]]; way = { kh_vroom("В ворота", function(s) pr("Не стоит делать этого. Стража вас схватит. "); return false; end); kh_vroom("К центру зала", "iraa_temple_main_2"); }; }; iraa_temple_question = obj { nam = "iraa_temple_question"; dsc = [[На стене напротив входа нанесены какие-то {письмена}. Видно, что навьяры раз за разом тщательно обновляют их, сохраняя их в первозданном виде. ]]; act = [[Письмена гласят: "Ищи число". ]]; }; iraa_temple_qhall = room { nam = "iraa_temple_qhall"; disp = "Храм Ираафаанотра, Зал Вопроса"; dsc = [[Небольшой боковой зал. ]]; way = { kh_vroom("В главный зал", "iraa_temple_main_2"); }; obj = { "iraa_temple_question"; }; }; iraa_temple_answer = obj { nam = "iraa_temple_answer"; dsc = [[Вы видите вырезанное в стене изображение {спрута}. ]]; act = [[Традиционное для навьяров схематичное изображение спрута. Вам бросается в глаза наличие у существа шестнадцати щупалец. ]]; }; iraa_temple_ahall = room { nam = "iraa_temple_ahall"; disp = "Храм Ираафаанотра, Зал Ответа"; dsc = [[Небольшой боковой зал. ]]; way = { kh_vroom("В главный зал", "iraa_temple_main_2"); }; obj = { "iraa_temple_answer"; }; }; iraa_temple_room_0 = room { var { state = false; }; nam = "iraa_temple_room_0"; disp = "Храм Ираафаанотра, комната"; dsc = [[Небольшая, хорошо освещенная светящимися водорослями, комната. Ниши в стенах пустуют. ]]; way = { kh_vroom("В коридор", "iraa_temple_corridor_6"); kh_vroom("В скрытый проход", "iraa_temple_hidden_stairs"); }; obj = { "iraa_temple_lever_0" }; open = function(s) s.state = true; path("В скрытый проход", s):enable(); if here() == s then pr("Вы видите, как одна из стен раздвигается, открывая скрытый проход куда-то в глубь скалы. "); else pr("Вы слышите где-то поблизости скрежет каменных плит. "); end; end; close = function(s) if s.state then s.state = false; path("В скрытый проход", s):disable(); if here() == s then pr("Вы видите, как одна из стен cдвигается, вновь закрывая потайной проход. "); else pr("Вы слышите где-то поблизости скрежет каменных плит. "); end; end; end; }; iraa_temple_room_1 = room { nam = "iraa_temple_room_1"; disp = "Храм Ираафаанотра, комната"; dsc = [[Небольшая, хорошо освещенная светящимися водорослями, комната. Ниши в стенах пустуют. ]]; way = { kh_vroom("В коридор", "iraa_temple_corridor_1"); }; obj = { "iraa_temple_lever_1" }; }; iraa_temple_room_2 = room { nam = "iraa_temple_room_2"; disp = "Храм Ираафаанотра, комната"; dsc = [[Небольшая, хорошо освещенная светящимися водорослями, комната. Ниши в стенах пустуют. ]]; way = { kh_vroom("В коридор", "iraa_temple_corridor_5"); }; obj = { "iraa_temple_lever_2" }; }; iraa_temple_room_3 = room { nam = "iraa_temple_room_3"; disp = "Храм Ираафаанотра, комната"; dsc = [[Небольшая, хорошо освещенная светящимися водорослями, комната. Ниши в стенах пустуют. ]]; way = { kh_vroom("В коридор", "iraa_temple_corridor_2"); }; obj = { "iraa_temple_lever_3" }; }; iraa_temple_room_5 = room { nam = "iraa_temple_room_5"; disp = "Храм Ираафаанотра, комната"; dsc = [[Небольшая, хорошо освещенная светящимися водорослями, комната. Ниши в стенах пустуют. ]]; way = { kh_vroom("В коридор", "iraa_temple_corridor_3"); }; obj = { "iraa_temple_lever_5" }; }; iraa_temple_room_6 = room { nam = "iraa_temple_room_6"; disp = "Храм Ираафаанотра, комната"; dsc = [[Небольшая, хорошо освещенная светящимися водорослями, комната. Ниши в стенах пустуют. ]]; way = { kh_vroom("В коридор", "iraa_temple_corridor_2"); }; }; iraa_temple_room_7 = room { nam = "iraa_temple_room_7"; disp = "Храм Ираафаанотра, комната"; dsc = [[Небольшая, хорошо освещенная светящимися водорослями, комната. Ниши в стенах пустуют. ]]; way = { kh_vroom("В коридор", "iraa_temple_corridor_1"); }; }; iraa_temple_switch = obj { nam = "iraa_temple_switch"; var { state = {false,false,false,false,false,false}; }; switch = function(s, index) if index < 7 and index > 0 then s.state[index] = not s.state[index]; end; if not state[1] and not state[2] and state[3] and not state[4] and state[5] and not state[6] then -- A valid state iraa_temple_room_0:open(); else -- An invalid state iraa_temple_room_0:close(); end; end; }; iraa_temple_lever_0 = obj { nam = "iraa_temple_lever_0"; dsc = [[Рядом со входом расположен едва заметный {рычаг} с отметкой фиолетового цвета]]; act = function(s) iraa_temple_switch(1); end; }; iraa_temple_lever_1 = obj { nam = "iraa_temple_lever_0"; dsc = [[Рядом со входом расположен едва заметный {рычаг} с отметкой синего цвета]]; act = function(s) iraa_temple_switch(2); end; }; iraa_temple_lever_2 = obj { nam = "iraa_temple_lever_0"; dsc = [[Рядом со входом расположен едва заметный {рычаг} с отметкой зеленого цвета]]; act = function(s) iraa_temple_switch(3); end; }; iraa_temple_lever_3 = obj { nam = "iraa_temple_lever_0"; dsc = [[Рядом со входом расположен едва заметный {рычаг} с отметкой желтого цвета]]; act = function(s) iraa_temple_switch(4); end; }; iraa_temple_lever_4 = obj { nam = "iraa_temple_lever_0"; dsc = [[Под пьедесталом расположен едва заметный {рычаг} с отметкой оранжевого цвета]]; act = function(s) iraa_temple_switch(5); end; }; iraa_temple_lever_5 = obj { nam = "iraa_temple_lever_0"; dsc = [[Рядом со входом расположен едва заметный {рычаг} с отметкой красного цвета]]; act = function(s) iraa_temple_switch(6); end; }; iraa_temple_hidden_stairs = darkroom { nam = "iraa_temple_hidden_stairs"; dsc_dark = [[]]; dsc_halflit = [[]]; way = { kh_vroom("Наверх", "iraa_temple_room_0", 1); kh_vroom("Вниз", "iraa_temple_room_0", 1); }; }; iraa_temple_button_ctr = function(nam, index) return obj { nam = nam; dsc = function(s) local im = "images/dyp_bg.png"; for i = 1, #iraa_temple_hidden_hall.buttons[index] do im = im .. ";images/dyp_" .. tostring(iraa_temple_hidden_hall.buttons[index][i]) .. ".png"; end; if (iraa_temple_hidden_hall.pressed_buttons[index]) then return "{Рычаг с символами " .. img(im) .."} включен.^"; else return "{Рычаг с символами " .. img(im) .."} выключен.^"; end; end; act = function(s) iraa_temple_hidden_hall:check(index); return [[ Вы переключаете рычаг и узор на полу комнаты меняется ]]; end; }; end; iraa_temple_hidden_hall = room { var { active_parts = {false, false, false, false, false, false, false, false, false, false, false, false}; pressed_buttons = {false, false, false, false, false, false, false, false}; solved = false; }; buttons = { {1, 5, 9, 11, 12}; {1, 2, 3, 4}; {4, 8, 10, 11, 12}; {2, 4, 5, 6}; {1, 5, 7, 9, 10, 11, 12}; {2, 6, 9, 10, 12}; {1, 3, 7, 8}; {3, 7, 9, 10, 11}; }; pic = function(s) local pic = 'images/dyp_bg.png'; local cnt = 0; for i = 1, #s.active_parts do if (s.active_parts[i]) then cnt = cnt + 1; pic = pic .. ";images/dyp_" .. tostring(i) .. ".png"; end; end; if (cnt > 0) then return pic; else return nil; end; end; nam = "Храм Ираафаанотра, потайной зал"; dsc = [[Большой круглый плохо освещенный зал. В центре зала расположено восемь рычагов, рядом с которыми нанесены какие-то символы. ]]; obj = { iraa_temple_button_ctr("iraa_temple_b1", 1); iraa_temple_button_ctr("iraa_temple_b2", 2); iraa_temple_button_ctr("iraa_temple_b3", 3); iraa_temple_button_ctr("iraa_temple_b4", 4); iraa_temple_button_ctr("iraa_temple_b5", 5); iraa_temple_button_ctr("iraa_temple_b6", 6); iraa_temple_button_ctr("iraa_temple_b7", 7); iraa_temple_button_ctr("iraa_temple_b8", 8); }; way = { kh_vroom("Наверх", "iraa_temple_hidden_stairs"):disable(); kh_vroom("Вниз", "iraa_temple_hidden_storage"):disable(); }; check = function(s, index) s.pressed_buttons[index] = not s.pressed_buttons[index]; for i = 1, #s.active_parts do s.active_parts[i] = false; end; for i = 1, #s.pressed_buttons do if (s.pressed_buttons[i]) then for j = 1, #s.buttons[i] do s.active_parts[s.buttons[i][j]] = not s.active_parts[s.buttons[i][j]]; end; end; end; s.solved = true; for i = 1, #s.active_parts do if (not s.active_parts[i]) then s.solved = false; break; end; end; if (s.solved) then path("Наверх"):enable(); path("Вниз"):enable(); end; end; }; iraa_temple_hidden_storage = room { nam = "iraa_temple_hidden_storage"; disp = [[Храм Ираафаанотра, хранилище]]; dsc = [[Стены этой небольшой комнаты излучают слабый свет. ]]; obj = { "iraa_temple_hidden_pedestal" }; }; iraa_temple_hidden_pedestal = obj { var { state = 0; }; nam = "iraa_temple_hidden_pedestal"; dsc = function(s) if s.state == 0: return [[В центре установлен металлический пьедестал, на котором лежит металлическая {табличка}. ]]; else return [[В центре установлен металлический {пьедестал}. ]]; end; end; act = function(s) if s.state == 0: item_lse_map.state = item_lse_map.state + 1; return [[Вы забираете металлическую табличку себе. ]]; else return [[Вьедестал пуст. ]]; end; end; };