Changeset - 8ddae614e425
[Not reviewed]
default
0 2 0
silverwing - 7 years ago 2017-07-29 17:01:26

Iraa progress
2 files changed with 191 insertions and 41 deletions:
0 comments (0 inline, 0 general)
atlantis_navjiarr.lua
Show inline comments
 
@@ -814,30 +814,86 @@ iraa_rytlarr_dlg = dlg {
 
Ираафаанотр.Храм
 
]]
 

	
 
player_learr = player {
 
    nam = "player_learr";
 
    obj = {};
 
};
 

	
 
iraa_learr_choice_dlg = dlg {
 
    nam = "iraa_learr_choice_dlg";
 
    disp = "Леарр";
 
    entered = [[Вы уже собираетесь покинуть Левиафан, как в шлюзовую камеру входит Леарр со словами: "Дрейк-ты здесь-оставайся. Я в-храм-пойду". ]];
 
    phr = {
 
        {"Почему не отправиться вместе?", [[Леарр отрицательно качает головой: "Хевьярам нельзя-в-храм-входить, поэтому я внутрь-только-одна-войду". ]]};
 
        {"Хорошо, ты справишься лучше. ", [[Леарр кивает: "Я вернусь-с-картой. Вы здесь-ждите". Вы покидаете шлюзовую камеру и Леарр выходит наружу. ]], code [[
 
            rel_learr = rel_learr + 1;
 
            pl = player_learr;
 
            walk("iraa_temple_entrance");
 
        ]]};
 
        {"Я пойду сам. ", [[Леарр недовольно качает головой. Плавники окрашиваются синим. Со совами: "Ты ошибку-совершаешь", -- она выходит из шлюзовой камеры. ^^Вы выбираетесь из Левиафана. ]], code [[
 
            rel_learr = rel_learr - 1;
 
            walk("iraa_temple_entrance");
 
        ]]};
 
    };
 
};
 

	
 
iraa_temple_entrance = room {
 
    var {
 
        state = 0;
 
    };
 
    nam = "Храм Ираафаанотра, вход";
 
    underwater = true;
 
    dsc = [[Перед вами возвышаются массивные двустворчатые ворота храма, вытесанные из камня. Над ними вы видите тщательно поддерживаемую в порядке карту, указывающую путь к Ираафаанотру. Скала тянется с севера на юг насколько хватает глаз. ]];
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return [[Леарр стоит перед массивными двустворчатыми воротами храма, вытесанными в скале, протянувшейся с севера на юг. Над ними расположена карта, указывающая путь к Ираафаанотру. Работники храма регулярно обновляли и восстанавливали карту в течение многих столетий. ]];
 
        else
 
            return [[Перед вами возвышаются массивные двустворчатые ворота храма, вытесанные из камня. Над ними вы видите тщательно поддерживаемую в порядке карту, указывающую путь к Ираафаанотру. Скала тянется с севера на юг насколько хватает глаз. ]];
 
        end;
 
    end;
 
    view = [[Через иллюминаторы видны массивные ворота вытесанного в скале храма. Над входом расположен символ храма -- карта пути к самому Ираафаанотру отсюда. ]];
 
    entered = function(s)
 
        if (char_anna.follow and s.state == 0) then
 
            pr [[В динамике скафандра вы слышите голос Анны Рэдклифф: "Этот символ - ни что иное, как карта, указывающая путь к городу. В отличие от самого города, здесь я не вижу указаний ни на одно место, кроме храма и Ираафаанотра". ]];
 
    enter = function(s)
 
        if s.state == 0 and ArrayUtils.indexOf(pl.party, 'learr') ~= 0 then
 
            s.state = 1;
 
            walkin("iraa_learr_choice_dlg");
 
        end;
 
        s.state = 1;
 
    end;
 
    obj = {
 
        "iraa_temple_guardians";
 
    };
 
    way = {
 
        kh_vroom("Войти", function(s)
 
            return [[Стражники не пропустят вас. ]];
 
            if pl == player_learr then
 
                return "iraa_temple_main_1";
 
            else
 
                pr [[Стражники не пропустят вас. ]];
 
                return false;
 
            end;
 
            
 
        end);
 
        kh_vroom("Вдоль скалы на север", function(s)
 
            if pl == player_learr then
 
                pr [[В голове Леарр проносится мысль: "Там нет ничего интересного, я много раз там бывала". ]];
 
                return false;
 
            else
 
                return "iraa_temple_north_1";
 
            end;
 
        end);
 
        kh_vroom("Вдоль скалы на север", "iraa_temple_north_1");
 
        kh_vroom("Вдоль скалы на юг", "iraa_temple_south");
 
        kh_vroom("В Левиафан", "leviathan_airlock");
 
        kh_vroom("Вдоль скалы на юг", function(s)
 
            if pl == player_learr then
 
                pr [[В голове Леарр проносится мысль: "Там нет ничего интересного, я много раз там бывала". ]];
 
                return false;
 
            else
 
                return "iraa_temple_south";
 
            end;
 
        end);
 
        kh_vroom("В Левиафан", function(s)
 
            if pl == player_learr and iraa_temple_hidden_pedestal.state == 0 then
 
                pr [[В голове Леарр проносится мысль: "Я еще не сделала все, что нужно". ]];
 
                return false;
 
            else
 
                return "leviathan_airlock";
 
            end;
 
        end);
 
    };
 
};
 

	
 
@@ -845,7 +901,12 @@ iraa_temple_guardians = npc {
 
    nam = "iraa_temple_guardians";
 
    dsc = [[У входа в храм стоят двое {стражников} -- обычный дозор. ]];
 
    phrases = function(s)
 
        if language_known then
 
        if pl == player_learr then
 
            return {
 
                "Один из стражников приветствует Леарр и приглашает войти в храм. ";
 
                "Стражники не обращают на Леарр внимания. ";
 
            };
 
        elseif language_known then
 
            return {
 
                "В вашем присутствии стражники заметно нервничают. ";
 
                "Стражники осторожно переглядываются. ";
 
@@ -1178,9 +1239,6 @@ iraa_temple_guardian = room {
 
        wait = 0;
 
    };
 
    nam = "iraa_temple_guardian";
 
    dsc = function(s)
 
        
 
    end;
 
    life = function(s)
 
        s.wait = s.wait + 1;
 
        if (s.wait < 3) then
 
@@ -1243,8 +1301,10 @@ iraa_temple_guardian = room {
 
        end;
 
    end;
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return "";
 
        end;
 
        if here().index > 6 or here().index < 1 then
 
            --Вы в домике
 
            return [[]];
 
        end;
 
        if s.direction == 1 then
 
@@ -1271,7 +1331,13 @@ iraa_temple_corridor_6 = room {
 
    index = 6;
 
    nam = "iraa_temple_corridor_6";
 
    disp = "Храм Ираафаанотра, коридор";
 
    dsc = [[Вы стоите в самом конце коридора в храме Ираафаанотра. Вокруг -- ровные камееные стены. В одной из них вы видите глубокую, трещину, через которую вы с трудом протиснулись сюда. Еще в одной из стен вы видите небольшой дверной проем, за которым скрывается маленькая комнатка. ]];
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return [[Леарр находится в коридоре в храме Ираафаанотра. Каменные стены покрыты Файирром. В стенах коридора имеются проемы, ведущие в служебные комнаты. Северную стену рассекает глубокая трещина, а в западной находится дверь, ведущая в одну из служебных комнат. ]];
 
        else
 
            return [[Вы стоите в самом конце коридора в храме Ираафаанотра. Вокруг -- камееные стены, покрытые светящимися водорослями. В одной из них вы видите глубокую, трещину, через которую вы с трудом протиснулись сюда. В западной стене вы видите небольшой дверной проем, за которым скрывается маленькая комнатка. ]];
 
        end;
 
    end; 
 
    way = {
 
        kh_vroom("В трещину", "iraa_temple_crack");
 
        kh_vroom("В комнату", "iraa_temple_room_0");
 
@@ -1286,7 +1352,13 @@ iraa_temple_corridor_5 = room {
 
    index = 5;
 
    nam = "iraa_temple_corridor_5";
 
    disp = "Храм Ираафаанотра, коридор";
 
    dsc = [[Вы стоите в коридоре в храме Ираафаанотра. В одной из ровных каменных стен, расположенных по сторонам от вас, имеется небольшой дверной проем, за которым скрывается маленькая комнатка. ]];
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return [[Леарр находится в коридоре в храме Ираафаанотра. Ровные каменные стены покрыты Файирром. В западной стене коридора имеется проем, ведущий в одну из служебных комнат. ]];
 
        else
 
            return [[Вы стоите в коридоре в храме Ираафаанотра. Вокруг -- каменные стены, покрытые светящимися водорослями. В западной стене находится дверной проем, ведущий в небольшую комнату. ]];
 
        end;
 
    end;
 
    way = {
 
        kh_vroom("В комнату", "iraa_temple_room_2");
 
        kh_vroom("По коридору, на север", "iraa_temple_corridor_6");
 
@@ -1301,7 +1373,13 @@ iraa_temple_corridor_4 = room {
 
    index = 4;
 
    nam = "iraa_temple_corridor_4";
 
    disp = "Храм Ираафаанотра, коридор";
 
    dsc = [[Вы стоите в коридоре в храме Ираафаанотра. Вокруг -- ровные каменные стены. ]];
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return [[Леарр находится в коридоре в храме Ираафаанотра. Ровные каменные стены покрыты Файирром. ]];
 
        else
 
            return [[Вы стоите в коридоре в храме Ираафаанотра. Вокруг -- каменные стены, покрытые светящимися водорослями. ]];
 
        end;
 
    end;
 
    way = {
 
        kh_vroom("По коридору, на север", "iraa_temple_corridor_5");
 
        kh_vroom("По коридору, на юг", "iraa_temple_corridor_3");
 
@@ -1315,7 +1393,13 @@ iraa_temple_corridor_3 = room {
 
    index = 3;
 
    nam = "iraa_temple_corridor_3";
 
    disp = "Храм Ираафаанотра, коридор";
 
    dsc = [[Вы стоите в коридоре в храме Ираафаанотра. Вокруг -- ровные каменные стены. Здесь коридор сворачивает под прямым углом к северу. В конце коридора на западе вы видите массивную каменную дверь, которая сейчас открыта. На севере коридор заканчивается тупиком. К востоку от вас массивная каменная дверь, но она заперта. ]];
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return [[Леарр находится в коридоре в храме Ираафаанотра. Ровные каменные стены покрыты Файирром. Коридор сворачивает под прямым углом к северу. В восточной стене расположена массивная каменная дверь -- задний вход в храм. Леарр никогда не понимала этой необходимости, но во всех известных ей храмах было ровно два входа. ]];
 
        else
 
            return [[Вы стоите в коридоре в храме Ираафаанотра. Вокруг -- ровные каменные стены. Здесь коридор сворачивает под прямым углом к северу. В конце коридора на западе вы видите массивную каменную дверь, которая сейчас открыта. На севере коридор заканчивается тупиком. К востоку от вас массивная каменная дверь, но она заперта. ]];
 
        end;
 
    end;
 
    way = {
 
        kh_vroom("По коридору, на север", "iraa_temple_corridor_4");
 
        kh_vroom("В комнату", "iraa_temple_room_5");
 
@@ -1330,7 +1414,13 @@ iraa_temple_corridor_2 = room {
 
    index = 2;
 
    nam = "iraa_temple_corridor_2";
 
    disp = "Храм Ираафаанотра, коридор";
 
    dsc = [[Вы стоите в коридоре в храме Ираафаанотра. Вокруг -- ровные каменные стены. ]];
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return [[Леарр находится в коридоре в храме Ираафаанотра. Ровные каменные стены покрыты Файирром. В стенах коридора имеются проемы, ведущие в служебные комнаты. ]];
 
        else
 
            return [[Вы стоите в коридоре в храме Ираафаанотра. Вокруг -- каменные стены, покрытые светящимися водорослями. В стенах имеются дверные проемы, ведущие в небольшие комнаты. ]];
 
        end;
 
    end;
 
    way = {
 
        kh_vroom("По коридору, на восток", "iraa_temple_corridor_3");
 
        kh_vroom("В комнату в северной стене", "iraa_temple_room_3");
 
@@ -1346,7 +1436,13 @@ iraa_temple_corridor_1 = room {
 
    index = 1;
 
    nam = "iraa_temple_corridor_1";
 
    disp = "Храм Ираафаанотра, коридор";
 
    dsc = [[Вы стоите в коридоре в храме Ираафаанотра. Вокруг -- ровные каменные стены. Прямо перед вами находится дверь, ведущая в основное помещение храма. Отсюда вы видите, что в нем никого нет. ]];
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return [[Леарр впервые за долгие годы оказалась в задней части храма. Хотя проход сюда, в принципе, не запрещен, необходимости бывать здесь, как правило, нет -- все, что доступно пониманию горожан происходит в главном зале. Ровные каменные стены покрыты файирром -- светящимися водорослями, используемыми навьярами повсеместно. В западной стене находится дверь, ведущая в основное помещение храма, а в северной и южной -- проемы, ведущие в служебные комнаты. ]];
 
        else
 
            return [[Вы стоите в коридоре в храме Ираафаанотра. Вокруг -- ровные каменные стены, покрытые светящимися водорослями. Прямо перед вами находится дверь, ведущая в основное помещение храма. Отсюда вы видите, что в нем никого нет. ]];
 
        end;
 
    end;
 
    way = {
 
        kh_vroom("По коридору, на запад", "iraa_temple_corridor_2");
 
        kh_vroom("В комнату в северной стене", "iraa_temple_room_7");
 
@@ -1361,7 +1457,13 @@ iraa_temple_corridor_1 = room {
 
iraa_temple_main_3 = room {
 
    nam = "iraa_temple_main_3";
 
    disp = "Храм Ираафаанотра, главный зал";
 
    dsc = [[Вы находитесь в конце главного зала храма Ираафаанотра. В стенах проделаны многочисленые ниши, в которых покоятся священные реликвии навьяров. Массивная каменная дверь ведет в задние помещения. ]];
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return [[Леарр находится в главном зале Ираафаанотра. Повсюду аккуратно разложены свяценные реликвии, накопленные за века существования Ираафаанотра. Рядом с Леарр расположена дверь, ведущая в задние помещения храма. Обычно там бывают лишь те, кто всю свою жизнь посвятил служению в этом храме. ]];
 
        else
 
            return [[Вы находитесь в конце главного зала храма Ираафаанотра. В стенах проделаны многочисленые ниши, в которых покоятся священные реликвии навьяров. Массивная каменная дверь ведет в задние помещения. ]];
 
        end;
 
    end;
 
    way = {
 
        kh_vroom("в дверь", "iraa_temple_corridor_1");
 
        kh_vroom("К центру зала", "iraa_temple_main_2");
 
@@ -1371,7 +1473,13 @@ iraa_temple_main_3 = room {
 
iraa_temple_main_2 = room {
 
    nam = "iraa_temple_main_2";
 
    disp = "Храм Ираафаанотра, главный зал";
 
    dsc = [[Вы находитесь в центре главного зала храма Ираафаанотра. Рядом с вами находится пустой пьедестал, на котором должна покоиться важнейшая реликвия храма, однако сейчас она отсутствует. Слева и справа от вас находятся залы, именуемые залами Ответа и Вопроса. ]];
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return [[Леарр находится в центре главного зала храма Ираафаанотра. Рядом с ней находится пустой пьедестал, на котором должна находиться важнейшая реликвия храма, украденная ворами из Дипатреанотра. Слева и справа находятся залы, с незапамятных времен именуемые залом Вопроса и залом Ответа. ]];
 
        else
 
            return [[Вы находитесь в центре главного зала храма Ираафаанотра. Рядом с вами находится пустой пьедестал, на котором должна покоиться важнейшая реликвия храма, однако сейчас она отсутствует. Слева и справа от вас находятся залы, именуемые залами Ответа и Вопроса. ]];
 
        end;
 
    end;
 
    way = {
 
        kh_vroom("В конец зала", "iraa_temple_main_3");
 
        kh_vroom("В зал Вопроса", "iraa_temple_qhall");
 
@@ -1386,11 +1494,21 @@ iraa_temple_main_2 = room {
 
iraa_temple_main_1 = room {
 
    nam = "iraa_temple_main_1";
 
    disp = "Храм Ираафаанотра, главный зал";
 
    dsc = [[Вы находитесь в главном зале храма Ираафаанотра. В многочисленных нишах в стенах покоятся древние реликвии. Перед вами возвышаются массивные ворота храма, за которыми наверняка стоит обычная стража -- двое вооруженных навьяров. ]];
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return [[Леарр находится в главном зале храма Ираафаанотра, у центрального входа. Повсюду аккуратно разложены свяценные реликвии, накопленные за века существования Ираафаанотра. ]];
 
        else
 
            return [[Вы находитесь в главном зале храма Ираафаанотра. В многочисленных нишах в стенах покоятся древние реликвии. Перед вами возвышаются массивные ворота храма, за которыми наверняка стоит обычная стража -- двое вооруженных навьяров. ]];
 
        end;
 
    end;
 
    way = {
 
        kh_vroom("В ворота", function(s)
 
            pr("Не стоит делать этого. Стража вас схватит. ");
 
            return false;
 
            if pl == player_learr then
 
                return "iraa_temple_entrance";
 
            else
 
                pr("Не стоит делать этого. Стража вас схватит. ");
 
                return false;
 
            end;
 
        end);
 
        kh_vroom("К центру зала", "iraa_temple_main_2");
 
    };
 
@@ -1398,14 +1516,26 @@ iraa_temple_main_1 = room {
 

	
 
iraa_temple_question = obj {
 
    nam = "iraa_temple_question";
 
    dsc = [[На стене напротив входа нанесены какие-то {письмена}. Видно, что навьяры раз за разом тщательно обновляют их, сохраняя их в первозданном виде. ]];
 
    act = [[Письмена гласят: "Ищи число". ]];
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return [[Единственной достопримечательностью помещения была загадочная надпись "Ты ищешь число здесь", на стене напротив входа. ]];
 
        else
 
            return [[На стене напротив входа нанесены какие-то {письмена}. Видно, что навьяры раз за разом тщательно обновляют их, сохраняя их в первозданном виде. ]];
 
        end;
 
    end;
 
    act = [[Письмена гласят: "Ты число-здесь-ищешь". ]];
 
};
 

	
 
iraa_temple_qhall = room {
 
    nam = "iraa_temple_qhall";
 
    disp = "Храм Ираафаанотра, Зал Вопроса";
 
    dsc = [[Небольшой боковой зал. ]];
 
    disp = "Храм Ираафаанотра, Зал вопроса";
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return [[Назначение небольшого по размерам зала вопроса, отделеного высокой аркой от основного зала, всегда казалось Леарр непонятным -- оно всегда было совершенно пустым. Здесь ничего не хранилось, сюда редко ходили как служители, так и горожане. ]];
 
        else
 
            return [[Зал вопроса представляет собой небольшое помещение, отделенное от основного зала высокой аркой. В отличие от центрального зала, стены здесь не имеют никаких ниш или полок -- здесь явно не должно храниться никаких реликвий. ]];
 
        end;
 
    end;
 
    way = {
 
        kh_vroom("В главный зал", "iraa_temple_main_2");
 
    };
 
@@ -1416,14 +1546,32 @@ iraa_temple_qhall = room {
 

	
 
iraa_temple_answer = obj {
 
    nam = "iraa_temple_answer";
 
    dsc = [[Вы видите вырезанное в стене изображение {спрута}. ]];
 
    act = [[Традиционное для навьяров схематичное изображение спрута. Вам бросается в глаза наличие у существа шестнадцати щупалец. ]];
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return [[Вырезанное в камне стены изображение спрута всегда пугало Леарр, однако и притягивало -- есть в нем что-то необычное, интересное. ]];
 
        else
 
            return [[Вы видите вырезанное в стене изображение {спрута}. ]];
 
        end;
 
    end;
 
    act = function(s)
 
        if pl == player_learr then
 
            return [[В голове Леарр пробегает мысль: "Для чего он здесь?" В первый раз в жизни, Леарр обращает внимание на наличие шестнадцати щупалец у существа. ]];
 
        else
 
            return [[Традиционное для навьяров схематичное изображение спрута. Вам бросается в глаза наличие у существа шестнадцати щупалец. ]];
 
        end;
 
    end;
 
};
 

	
 
iraa_temple_ahall = room {
 
    nam = "iraa_temple_ahall";
 
    disp = "Храм Ираафаанотра, Зал Ответа";
 
    dsc = [[Небольшой боковой зал. ]];
 
    disp = "Храм Ираафаанотра, Зал ответа";
 
    dsc = function(s)
 
        if pl == player_learr then
 
            return [[Назначение небольшого по размерам зала ответа, отделеного высокой аркой от основного зала, всегда казалось Леарр непонятным -- оно всегда было совершенно пустым. Здесь ничего не хранилось, сюда редко ходили как служители, так и горожане. ]];
 
        else
 
            return [[Зал ответа представляет собой небольшое помещение, отделенное от основного зала высокой аркой. В отличие от центрального зала, стены здесь не имеют никаких ниш или полок -- здесь явно не должно храниться никаких реликвий. ]];
 
        end;
 
    end;
 
    way = {
 
        kh_vroom("В главный зал", "iraa_temple_main_2");
 
    };
 
@@ -1734,6 +1882,7 @@ iraa_temple_hidden_pedestal = obj {
 
    end;
 
    act = function(s)
 
        if s.state == 0 then
 
            s.state = 1;
 
            item_lse_map.state = item_lse_map.state + 1;
 
            return [[Вы забираете металлическую табличку себе. ]];
 
        else
main.lua
Show inline comments
 
@@ -181,8 +181,8 @@ function init()
 
    ---game init
 
    pl.where = intro;
 
    ---debug	
 
    --language_known = true;
 
    --pl.where = "iyh_rear_entrance_foot";
 
    language_known = true;
 
    --pl.where = "leviathan_airlock";
 
    --move(submarine_leviathan, "iyh_rear_entrance_foot");
 
    --put(item_suit, pl);
 
    --put(item_suit, pl);
 
@@ -190,9 +190,9 @@ function init()
 
    --pl.where = "atlantis_intro_dock";
 
 
    ---leviathan
 
    --pl.where = "leviathan_airlock";
 
    --submarine_leviathan.airpump = false;
 
    --[[
 
    pl.where = "leviathan_airlock";
 
    submarine_leviathan.airpump = false;
 
    --[[]]
 
    leviathan_airlock.has_light = true;
 
    leviathan_wardroom.has_light = true;
 
    leviathan_wheelhouse.has_light = true;
 
@@ -213,9 +213,10 @@ function init()
 
    submarine_leviathan.circuit_breaks = 0;
 
    submarine_leviathan.valves_to_replace = 0;
 
    submarine_leviathan.power_on = true
 
    pl.party = {'wright'};
 
    atlantis_found = true;
 
    pl.where = leviathan_wheelhouse;]]
 
    pl.party = {'wright', 'learr'};
 
    atlantis_found = true;--]]
 
    --- iraaphaanotrr
 
    move(submarine_leviathan, "iraa_temple_entrance");
 
	--[[
 
	---IYH
 
	lifeon(char_learr);
0 comments (0 inline, 0 general)