Changeset - 8332ba017b93
[Not reviewed]
default
0 1 0
silverwing - 4 years ago 2019-11-21 17:32:23

fix dypatreanotrr quest
1 file changed with 31 insertions and 7 deletions:
0 comments (0 inline, 0 general)
atlantis_dyp.lua
Show inline comments
 
@@ -326,12 +326,9 @@ dyp_library_floor2 = room {
 
};
 

	
 
dyp_librarian = npc {
 
    var {
 
        state = 0;
 
    };
 
    nam = "dyp_librarian";
 
    dsc = function(s)
 
        if s.state == 0 then
 
        if dyp_librarian_dlg.state == 0 then
 
            return [[Перед вами на полу сидит {навьяр}. Вокруг него разложены какие-то записи, которые он рассматривает, время от времени перекладывая с места на место. ]];
 
        else
 
            return [[Перед вами на полу сидит {Эйлехиарр}. Вокруг него разложены какие-то записи, которые он рассматривает, время от времени перекладывая с места на место. ]];
 
@@ -503,12 +500,29 @@ dyp_chief_dlg = dlg {
 
            end;
 
            if (dyp_quest_state == 1 or dyp_quest_state == 2) and have(item_electric_lamp, pl) and (item_electric_lamp.state == 0 or item_electric_lamp.state == 2) then
 
                pon("quest1");
 
            else
 
                poff("quest1");
 
            end;
 
            if dyp_quest_state == 2 and have(item_shark_tooth, pl) then
 
                pon("quest2");
 
            if dyp_quest_state == 2 then
 
                if have(item_shark_tooth, pl) then
 
                    pon("quest2");
 
                    poff("quest1_repeat");
 
                else
 
                    pon("quest1_repeat");
 
                    poff("quest2");
 
                end;
 
            else
 
                poff("quest2");
 
            end;
 
            if dyp_stones_known and dyp_quest_state == 0 then
 
            if dyp_quest_state >= 3 and dyp_quest_state < 7 then
 
                pon("quest2_repeat");
 
            else
 
                poff("quest2_repeat");
 
            end;
 
            if dyp_stones_known and (dyp_quest_state == 0 or dyp_quest_state == 1) then
 
                pon("quest");
 
            else
 
                poff('quest');
 
            end;
 
            poff("quest3");
 
            if have(dyp_item_star_map_copy) or have(dyp_item_star_map) and not dyp_map then
 
@@ -528,6 +542,7 @@ dyp_chief_dlg = dlg {
 
        {tag="lseryanotrr", false, "[Кодировщик] Я ищу карту пути в Лсэрианотр.", [[Вождь отвечает: "Не мое дело следить за этим. Ты спроси в храме или в библиотеке". ]]};
 
        {tag="quest", false, "[Кодировщик] Мне нужен камень из твоего жезла. Что я могу предложить в обмен на него?", [[Глаза вождя загораются, он ухмыляется. По плавникам быстро, словно в нетерпении бегут цветные полосы: "Принеси мне три вещи, что я попрошу и получишь жезл вместе с камнем". ]], code [[psub("agree_quest");]]};
 
        {tag="quest1", false, "[Отдать светильник] [Кодировщик] Вот то, что ты просил. Что тебе еще нужно?", function(s)
 
            poff("quest", "quest1_repeat");
 
            if dyp_quest_state == 1 then
 
                if item_electric_lamp.state == 0 then
 
                    dyp_quest_lamp_failed = true;
 
@@ -543,6 +558,13 @@ dyp_chief_dlg = dlg {
 
                return [[Вождь кладет светильник на стол рядом с зубом и говорит: "Я хочу карту небесных огней из Ираафаанотра. Принеси ее и забирай этот жезл вместе с камнем". ]];
 
            end;
 
        end};
 
        {tag="quest1_repeat", false, "[Кодировщик] Что ты хочешь, чтобы я принес тебе?", function(s)
 
            if have(item_electric_lamp, pl) then
 
                return [[Вождь отвечает: "Принеси мне светяющуюся капсулу с Атлантиды. И смотри, чтобы она не погасла как предыдущая". ]];
 
            else
 
                return [[Вождь отвечает: "Принеси мне зуб акулы, что живет у храма Ираафаанотра". ]];
 
            end;
 
        end};
 
        {tag="quest2", false, "[Отдать зуб акулы] [Кодировщик] Вот то, что ты просил. Что тебе еще нужно?", function(s)
 
            remove("item_shark_tooth", pl);
 
            if dyp_quest_lamp_failed then
 
@@ -555,7 +577,9 @@ dyp_chief_dlg = dlg {
 
                return [[Вождь кладет зуб на стол рядом со светильником и говорит: "Я хочу карту небесных огней из Ираафаанотра. Принеси ее и забирай этот жезл вместе с камнем". ]];
 
            end;
 
        end};
 
        {tag="quest2_repeat", false, "[Кодировщик] Что ты хочешь, чтобы я принес тебе?", [[Вождь отвечает: "Принеси мне карту небесных огней из Ираафаанотра. Они могут быть против. Уговори их". ]]};
 
        {tag="quest3", false, function(s)
 
            poff("quest1_repeat", "quest2_repeat");
 
            if have(dyp_item_star_map_copy) then
 
                return "[Отдать копию карты небесных огней] Вот то, что ты просил. Я могу забрать камень?"
 
            else
0 comments (0 inline, 0 general)