# HG changeset patch # User Silverwing # Date 2016-07-02 11:53:58 # Node ID 49542c019655d2867beac66c4f064a146522f6fe # Parent 1b70865c6e41685a4097b2c1e66eba9e3b3ef09e iyh complete diff --git a/atlantis_dlg.lua b/atlantis_dlg.lua --- a/atlantis_dlg.lua +++ b/atlantis_dlg.lua @@ -230,29 +230,48 @@ char_svetlova_dlg = dlg { Светлова отрывает взгляд от бумаг, лежащих перед ней и смотрит на вас: "Ну как? Поговорили с Ривеерром?" ]]; else - psub('generic'); - - if (atl_lfc_state ~= 1) then - poff('sabotage', 'ignis_what'); - end; - - if (atl_lfc_state == 1 and not s.lfc_dialog) then - s.lfc_dialog = true; - pon('sabotage', 'ignis_what'); + if (atl_iyh_state == 9) then + atl_iyh_state = 10; + psub('iyh_more'); + take("item_map_2"); + take("item_talk_device"); + take("item_navjiarr_chart_1"); + take("item_navjiarr_chart_2"); + take("item_navjiarr_chart_3"); + if (atl_iyh_artifacts_on_atlantis) then + return [[ + Светлова отрывает взгляд от бумаг, лежащих перед ней и смотрит на вас: "Добрый день, Дрейк. Мы изучили артефакты, найденные вами в храме. Среди всего прочего, мы нашли несколько фрагментов карты, которые я возвращаю вам - они понадобятся вам в ваших поисках. К сожалению, это именно что фрагменты и мы не можем по ним определить местоположение чего бы то ни было. Однако, недостающие фрагменты могут быть в расположенных неподалеку навьярских города - Дипатреанотре и Ираафаанотре". Она достает из-под стола небольшой чемоданчик с лампочками и кнопочками и вручает его вам: "Этот прибор позволит вам общаться с навьярами под водой. Просто набирайте слова как на клавиатуре печатной машинки, при этом будут последовательно зажигаться лампочки соответствующих цветов". Затем она достает карту, на которой отмечены Атлантида, Ираафаанотр и Дипатреанотр и так же отдает ее вам: "Вы можете взять эту карту". + ]]; + else + return [[ + Светлова отрывает взгляд от бумаг, лежащих перед ней и смотрит на вас: "Добрый день, Дрейк. К сожалению, мы не смогли получить доступ к артефактам, добытым вами в храме. Поэтому, единственное, что вы можете сделать чтобы найти отца - это посетить навьярские города, расположенные неподалеку - Дипатреанотр и Ираафаанотр". Она достает из-под стола небольшой чемоданчик с лампочками и кнопочками и вручает его вам: "Этот прибор позволит вам общаться с навьярами под водой. Просто набирайте слова как на клавиатуре печатной машинки, при этом будут последовательно зажигаться лампочки соответствующих цветов". Затем она достает карту, на которой отмечены Атлантида, Ираафаанотр и Дипатреанотр и так же отдает ее вам: "Вы можете взять эту карту". + ]]; + end; + else + psub('generic'); + + if (atl_lfc_state ~= 1) then + poff('sabotage', 'ignis_what'); + end; + + if (atl_lfc_state == 1 and not s.lfc_dialog) then + s.lfc_dialog = true; + pon('sabotage', 'ignis_what'); + end; + + if (atl_iyh_state == 2) then + pon("hard_to_understand"); + end; + if (atl_iyh_state == 3) then + pon("explanation"); + end; + if (atl_iyh_state < 4 and atl_iyh_ryveerr_spoken) then + pon("ryveerr_spoken"); + end; + return [[ + Светлова отрывает взгляд от бумаг, лежащих перед ней и смотрит на вас: "Добрый день". + ]]; end; - - if (atl_iyh_state == 2) then - pon("hard_to_understand"); - end; - if (atl_iyh_state == 3) then - pon("explanation"); - end; - if (atl_iyh_state < 4 and atl_iyh_ryveerr_spoken) then - pon("ryveerr_spoken"); - end; - return [[ - Светлова отрывает взгляд от бумаг, лежащих перед ней и смотрит на вас: "Добрый день". - ]]; end; end; phr = { @@ -355,7 +374,6 @@ char_svetlova_dlg = dlg { ]], code [[ psub("generic"); ]]}; - {tag = "ryveerr_on_steal"}; {tag = "ryveerr_spoken", false, "Ривеерр рассказал о нападении на храм. Он уверен, что именно жители Ираафаанотра украли ее. И он с уверенностью говорит, что они готовы обменяться реликвиями обратно. То есть реликвия Ираафаанотра, судя по всему, находится в Дипатреанотре. ", [[ Светлова задумчиво потирает лоб: "Хм. Тогда мы в тупике". @@ -381,6 +399,13 @@ char_svetlova_dlg = dlg { {"А что будет, если мы принесем им реликвию, которая должна по их мнению быть в Ираафаанотре? Разве они не посчитают, что мы украли ее оттуда? ", [[ "Это маловероятно. Впрочем, поступайте как знаете". ]], code [[ back(); ]]}; + {tag="iyh_more"}; + {"Я могу чем-то еще помочь?", [[ + "Пока у нас нет для вас заданий, но возможно позже появится что-то. Сейчас вы можете продолжать ваши поиски". + ]]}; + {"Спасибо за помощь, я пойду", [[ + "Удачи в поисках Уильяма, Дрейк". + ]], code [[ back(); ]]}; }; }; diff --git a/items.lua b/items.lua --- a/items.lua +++ b/items.lua @@ -313,6 +313,18 @@ item_map = obj { end; }; +item_map_2 = obj { + nam = "item_map"; + disp = "Карта"; + inv = function(s) + iraaphaanotrr_found = true; + dypatreanotrr_found = true; + return [[ + Карта, отданная вам Екатериной Светловой. Эта карта почти идентична найденной вам на складе, за исключением наличия дополнительных точек, указывающих навьярские города Дипатреанотр и Ираафаанотр. + ]]; + end; +}; + item_unknown_schematics = obj { nam = "item_unknown_schematics"; disp = "Чертежи"; @@ -520,4 +532,12 @@ item_navjiarr_cube = obj { inv = [[ Небольшой прозрачный куб, очень холодный на ощупь - холод ощущается даже в скафандре. От него исходит слабое свечение. ]]; +}; + +item_talk_device = obj { + nam = "item_talk_device"; + disp = "Устройство для общения с навьярами"; + inv = [[ + Небольшое устройство с клавиатурой и большим количеством цветных лампочек. Оно полностью герметично и может быть использовано под водой. + ]]; }; \ No newline at end of file diff --git a/leviathan.lua b/leviathan.lua --- a/leviathan.lua +++ b/leviathan.lua @@ -22,7 +22,7 @@ submarine_leviathan = obj { hull_integrity = 100; -- Целостность корпуса electric_integrity = 100; -- Целостность электросистем torpedoes = 2; -- Количество заряженных торпед - suits = 0; -- Количество водолазных костюмов. + suits = 2; -- Количество водолазных костюмов. battery = false; -- Состояние батареи battery_charge = 100; -- Уровень заряда батареи circuit_breaks = 2; -- Разрывы цепи diff --git a/main.lua b/main.lua --- a/main.lua +++ b/main.lua @@ -50,6 +50,9 @@ global { dock_found = false; leviathan_discovered = false; atlantis_found = false; + temple_found = false; + iraaphaanotrr_found = false; + dypatreanotrr_found = false; rel_phaetlarr = 0; rel_walter = 0; @@ -157,7 +160,6 @@ function init() atlantis_found = true; move(submarine_leviathan, "iyh_far_from_entrance_foot"); pl.where = leviathan_wheelhouse; - submarine_leviathan.suits = 2; -- Количество водолазных костюмов. submarine_leviathan.battery = true; -- Состояние батареи submarine_leviathan.battery_charge = 100; -- Уровень заряда батареи submarine_leviathan.circuit_breaks = 0; -- Разрывы цепи