# HG changeset patch # User Silverwing # Date 2017-02-24 13:53:54 # Node ID 7a77759c31ff20b0d2734258651ff6f5db0653d2 # Parent 821efcc2adc740fcbf2cb193fae5b062537f2c87 Atlantis overhaul progress; Progress on 238/239 diff --git a/atlantis.lua b/atlantis.lua --- a/atlantis.lua +++ b/atlantis.lua @@ -719,13 +719,17 @@ char_anna_atlantis = npc { disp = "Анна Рэдклифф"; dsc = function(s) if (where(char_learr_atlantis) ~= atl_oculus_lab_c) then - return [[ - {Анна Рэдклифф} внимательно слушает навьяра, иногда что-то спрашивая. - ]]; + if (char_anna_atlantis_dlg.state == 0) then + return [[{Девушка} лет двадцати-пяти внимательно слушает навьяра, иногда что-то спрашивая. ]]; + else + return [[{Анна Рэдклифф} внимательно слушает навьяра, иногда что-то спрашивая. ]]; + end; else - return [[ - {Анна Рэдклифф} внимательно слушает навьяров, иногда что-то спрашивая. - ]]; + if (char_anna_atlantis_dlg.state == 0) then + return [[{Девушка} лет тридцати внимательно слушает навьяров, иногда что-то спрашивая. ]]; + else + return [[{Анна Рэдклифф} внимательно слушает навьяров, иногда что-то спрашивая. ]]; + end; end; end; dlg = "char_anna_atlantis_dlg"; @@ -736,12 +740,16 @@ char_learr_atlantis = npc { offended = false; }; nam = "Леарр"; - __where__ = 'atl_oculus_lab_c'; dsc = function(s) - -- TODO Описание Леарр меняется в зависимости от комнаты, где она находится - return [[ - {Леарр} стоит, опершись одной рукой на стол. Другой рукой она активно жестикулирует, рассказывая что-то. - ]]; + if (stead.deref(here()) == "atl_oculus_lab_c") then + return [[{Леарр} стоит, опершись одной рукой на стол. Другой рукой она активно жестикулирует, рассказывая что-то. ]]; + else + if (where(char_jack_wright_atlantis) == atl_ignis_hall_a) then + return [[{Леарр} стоит перед иллюминатором и что-то рассказывает ]]; + else + return [[{Леарр} стоит перед иллюминатором и смотрит вдаль. ]]; + end; + end; end; dlg = "char_learr_atlantis_dlg"; }; @@ -749,9 +757,11 @@ char_learr_atlantis = npc { char_aikerjarr = npc { nam = "Аикерьярр"; dsc = function(s) - return [[ - {Аикерьярр} неподвижно стоит у одного из столов. - ]]; + if (char_aikerjarr_dlg.state == 0) then + return [[У одного из столов неподвижно стоит {навьяр}. ]]; + else + return [[У одного из столов неподвижно стоит {Аикерьярр}. ]]; + end; end; dlg = "char_aikerjarr_dlg"; }; @@ -760,13 +770,17 @@ char_ryveerr = npc { nam = "Ривеерр"; dsc = function(s) if (where(char_learr_atlantis) ~= atl_oculus_lab_c) then - return [[ - {Ривеерр} что-то рассказывает. - ]]; - else - return [[ - {Ривеерр} иногда прерывает рассказ Леарр, добавляя что-то. - ]]; + if (char_ryveerr_dlg.state == 0) then + return [[У одного из столов стоит {навьяр} и что-то рассказывает. ]]; + else + return [[У одного из столов стоит {Ривеерр} и что-то рассказывает. ]]; + end; + else + if (char_ryveerr_dlg.state == 0) then + return [[Рядом стоит {навьяр} и иногда прерывает рассказ Леарр, добавляя что-то. ]]; + else + return [[Рядом стоит {Ривеерр} и иногда прерывает рассказ Леарр, добавляя что-то. ]]; + end; end; end; dlg = "char_ryveerr_dlg"; @@ -775,16 +789,11 @@ char_ryveerr = npc { char_loong = npc { nam = "Джинхэй Лун"; dsc = function(s) - -- TODO описание должно мелянться, если Леарр не здесь - if (where(char_learr_atlantis) ~= atl_oculus_lab_c) then - return [[ - {Джинхэй Лун} стоит рядом с блокнотом и делает записи по ходу рассказа навьяра. - ]]; - else - return [[ - {Джинхэй Лун} стоит рядом с блокнотом и делает записи по ходу рассказа навьяров. - ]]; - end; + if (char_loong_dlg.state == 0) then + return [[Там же стоит немолодой {китаец} с блокнотом и делает какие-то записи. ]]; + else + return [[Там же стоит {Джинхэй Лун} с блокнотом и делает какие-то записи. ]]; + end; end; dlg = "char_loong_dlg"; }; @@ -805,13 +814,9 @@ char_jack_wright_atlantis = npc { nam = "Джек Райт"; dsc = function(s) if (where(char_jack_wright_atlantis) == atl_ignis_hall_a) then - return [[ - {Джек Райт} сидит рядом и о чем-то с ней разговаривает. - ]]; + return [[{Джеку Райт}, стоящему рядом. ]]; else - return [[ - {Джек Райт} - ]]; + return [[{Джеком}. ]]; end; end; dlg = "char_jack_wright_atlantis_dlg"; @@ -819,75 +824,85 @@ char_jack_wright_atlantis = npc { char_michael_wright = npc { nam = "Майкл Райт"; - dsc = [[ - {Майкл Райт} просматривает какие-то чертежи. - ]]; + dsc = function(s) + if (where(char_jack_wright_atlantis) == atl_ignis_hall_a) then + return [[{Майкл Райт} оживленно беседует о чем-то с ]]; + else + return [[{Майкл Райт} просматривает какие-то чертежи. ]]; + end; + end; dlg = "char_michael_wright_dlg"; }; char_legrand = npc { nam = "Мари Легран"; - dsc = [[ - {Мари Легран} стоит у верстака, рассматривая какую-то деталь. - ]]; + dsc = function(s) + if (char_legrand_dlg.state == 0) then + return [[У верстака стоит {женщина} лет сорока--сорока-пяти и рассматривает какую-то деталь.]]; + else + return [[У верстака стоит {Мари Легран} и рассматривает какую-то деталь. ]]; + end; + end; dlg = "char_legrand_dlg"; }; char_radcliffe_atlantis = npc { nam = "Уолтер Рэдклифф"; - dsc = [[ - {Уолтер Рэдклифф} стоит, навалившись на стену. - ]]; + dsc = function(s) + if (char_radcliffe_atlantis_dlg.state == 0) then + return [[{Человек} лет пятидесяти стоит, навалившись на стену. ]]; + else + return [[{Уолтер Рэдклифф} стоит, навалившись на стену. ]]; + end; + end; dlg = "char_radcliffe_atlantis_dlg"; }; char_xiao = npc { nam = "Вейюан Сяо"; - dsc = [[ - {Вейюан Сяо} осматривает Наутилус. - ]]; + dsc = function(s) + if (char_xiao_dlg.state == 0) then + return [[Немолодой {китаец} осматривает Наутилус. ]]; + else + return [[{Вейюан Сяо} осматривает Наутилус. ]]; + end; + end; dlg = "char_xiao_dlg"; }; char_leroy = npc { nam = "Мишель Леруа"; - dsc = [[ - {Мишель Леруа} что-то чертит. - ]]; + dsc = function(s) + if (char_leroy_dlg.state == 0) then + return [[{Мужчина} лет пятидесяти работает над каким-то чертежом. ]]; + else + return [[{Мишель Леруа} работает над каким-то чертежом. ]]; + end; + end; dlg = "char_leroy_dlg"; }; -char_atlantis_guards = npc { - nam = "Охранники"; - dsc = [[ - Рядом с дверью в оружейную стоят два вооруженных {охранника}. - ]]; - phr = { - [[ - "Входа нет". - ]]; - [[ - "Вам сюда нельзя". - ]]; - [[ - "Начальник в соседнем кабинете". - ]]; - }; -}; - char_goldman = npc { nam = "Леонард Голдман"; - dsc = [[ - {Леонард Голдман} сидит на койке о чем-то раздумывая. - ]]; + dsc = function(s) + if (char_goldman_dlg.state == 0) then + return [[На койке, закинув руки за голову, лежит светловолосый {мужчина} лет пятидесяти. ]]; + else + return [[На койке, закинув руки за голову, лежит {Леонард Голдман}. ]]; + end; + end; dlg = "char_goldman_dlg"; }; char_jones = npc { nam = "Чарли Джонс"; - dsc = [[ - {Чарли Джонс} осматривает свой револьвер. - ]]; + dsc = function(s) + if (char_jones_dlg.state == 0) then + return [[Пожилой {человек}, одетый в простой серый костюм, сидит на койке и задумчиво вертит в руках карандаш. ]]; + else + return [[{Чарли Джонс} сидит на койке и задумчиво вертит в руках карандаш. ]]; + end; + end; dlg = "char_jones_dlg"; }; @@ -920,115 +935,48 @@ atl_nih_tubes_gen = function(nam, dsc) }; end; -atl_nih_tubes_near_aqua = atl_nih_tubes_gen("atl_nih_tubes_near_aqua", [[ - Рядом со шлюзом из стены выходят несколько {труб}, по которым подается воздух. -]]); +atl_nih_tubes_near_aqua = atl_nih_tubes_gen("atl_nih_tubes_near_aqua", [[Рядом со шлюзом из стены выходят несколько {труб}, по которым подается воздух. ]]); -atl_nih_tubes_near_a = atl_nih_tubes_gen("atl_nih_tubes_near_a", [[ - За снятой декоративной панелью находятся несколько {труб}, по которым подается воздух. -]]); - -atl_nih_tubes_near_admin = atl_nih_tubes_gen("atl_nih_tubes_near_admin", [[ - За снятой декоративной панелью находятся несколько {труб}, по которым подается воздух. -]]); +atl_nih_tubes_near_a = atl_nih_tubes_gen("atl_nih_tubes_near_a", [[За снятой декоративной панелью находятся несколько {труб}, по которым подается воздух. ]]); -atl_nih_tubes_near_luna = atl_nih_tubes_gen("atl_nih_tubes_near_luna", [[ - За снятой декоративной панелью находятся несколько {труб}, по которым подается воздух. -]]); +atl_nih_tubes_near_admin = atl_nih_tubes_gen("atl_nih_tubes_near_admin", [[За снятой декоративной панелью находятся несколько {труб}, по которым подается воздух. ]]); -atl_nih_tubes_near_oculus = atl_nih_tubes_gen("atl_nih_tubes_near_oculus", [[ - Вдоль стены протянуто несколько {труб}, по которым подается воздух. -]]); +atl_nih_tubes_near_luna = atl_nih_tubes_gen("atl_nih_tubes_near_luna", [[За снятой декоративной панелью находятся несколько {труб}, по которым подается воздух. ]]); -atl_nih_tubes_near_terra = atl_nih_tubes_gen("atl_nih_tubes_near_oculus", [[ - Вдоль стены протянуто несколько {труб}, по которым подается воздух. -]]); +atl_nih_tubes_near_oculus = atl_nih_tubes_gen("atl_nih_tubes_near_oculus", [[Вдоль стены протянуто несколько {труб}, по которым подается воздух. ]]); -atl_nih_tubes_near_arctos = atl_nih_tubes_gen("atl_nih_tubes_near_arctos", [[ - За снятой декоративной панелью находятся несколько {труб}, по которым подается воздух. -]]); +atl_nih_tubes_near_terra = atl_nih_tubes_gen("atl_nih_tubes_near_oculus", [[Вдоль стены протянуто несколько {труб}, по которым подается воздух. ]]); -atl_nih_tubes_oculus = atl_nih_tubes_gen("atl_nih_tubes_oculus", [[ - За снятой декоративной панелью находятся несколько {труб}, по которым подается воздух. -]]); - -atl_nih_tubes_terra = atl_nih_tubes_gen("atl_nih_tubes_terra", [[ - За снятой декоративной панелью находятся несколько {труб}, по которым подается воздух. -]]); +atl_nih_tubes_near_arctos = atl_nih_tubes_gen("atl_nih_tubes_near_arctos", [[За снятой декоративной панелью находятся несколько {труб}, по которым подается воздух. ]]); -atl_nih_tubes_luna = atl_nih_tubes_gen("atl_nih_tubes_luna", [[ - Под потолком протянуто несколько {труб}, по которым подается воздух. -]]); - -atl_nih_tubes_arctos = atl_nih_tubes_gen("atl_nih_tubes_arctos", [[ - Под потолком протянуто несколько {труб}, по которым подается воздух. -]]); +atl_nih_tubes_oculus = atl_nih_tubes_gen("atl_nih_tubes_oculus", [[За снятой декоративной панелью находятся несколько {труб}, по которым подается воздух. ]]); -atl_nih_tubes_aqua = atl_nih_tubes_gen("atl_nih_tubes_aqua", [[ - Под потолком протянуто несколько {труб}, по которым подается воздух. -]]); +atl_nih_tubes_terra = atl_nih_tubes_gen("atl_nih_tubes_terra", [[За снятой декоративной панелью находятся несколько {труб}, по которым подается воздух. ]]); -atl_nih_tubes_aqua_a = atl_nih_tubes_gen("atl_nih_tubes_aqua_a", [[ - Под потолком протянуто несколько {труб}, по которым подается воздух. -]]); +atl_nih_tubes_luna = atl_nih_tubes_gen("atl_nih_tubes_luna", [[Под потолком протянуто несколько {труб}, по которым подается воздух. ]]); -atl_nih_tubes_aqua_b = atl_nih_tubes_gen("atl_nih_tubes_aqua_b", [[ - Под потолком протянуто несколько {труб}, по которым подается воздух. -]]); +atl_nih_tubes_arctos = atl_nih_tubes_gen("atl_nih_tubes_arctos", [[Под потолком протянуто несколько {труб}, по которым подается воздух. ]]); -atl_nih_panel_near_a = obscured_obj("atl_nih_panel_near_a", [[ - Рядом со шлюзом установлена {защитная панель}, за которой скрываются трубы для подачи воздуха. -]], [[ - Вы снимаете панель, открывая доступ к трубам. -]], "atl_nih_tubes_near_a", true); +atl_nih_tubes_aqua = atl_nih_tubes_gen("atl_nih_tubes_aqua", [[Под потолком протянуто несколько {труб}, по которым подается воздух. ]]); -atl_nih_panel_near_admin = obscured_obj("atl_nih_panel_near_admin", [[ - Рядом со шлюзом установлена {защитная панель}, за которой скрываются трубы для подачи воздуха. -]], [[ - Вы снимаете панель, открывая доступ к трубам. -]], "atl_nih_tubes_near_admin", true); +atl_nih_tubes_aqua_a = atl_nih_tubes_gen("atl_nih_tubes_aqua_a", [[Под потолком протянуто несколько {труб}, по которым подается воздух. ]]); -atl_nih_panel_near_luna = obscured_obj("atl_nih_panel_near_luna", [[ - Рядом со шлюзом установлена {защитная панель}, за которой скрываются трубы для подачи воздуха. -]], [[ - Вы снимаете панель, открывая доступ к трубам. -]], "atl_nih_tubes_near_luna", true); +atl_nih_tubes_aqua_b = atl_nih_tubes_gen("atl_nih_tubes_aqua_b", [[Под потолком протянуто несколько {труб}, по которым подается воздух. ]]); -atl_nih_panel_oculus = obscured_obj("atl_nih_panel_oculus", [[ - Рядом со шлюзом установлена {защитная панель}, за которой скрываются трубы для подачи воздуха. -]], [[ - Вы снимаете панель, открывая доступ к трубам. -]], "atl_nih_tubes_oculus", true); +atl_nih_panel_near_a = obscured_obj("atl_nih_panel_near_a", [[Рядом со шлюзом установлена {защитная панель}, за которой скрываются трубы для подачи воздуха. ]], [[Вы снимаете панель, открывая доступ к трубам. ]], "atl_nih_tubes_near_a", true); -atl_nih_boxes_near_oculus = obscured_obj("atl_nih_boxes_near_oculus", [[ - За грудой {ящиков}, вы замечаете несколько труб подачи воздуха. -]], [[ - Вы сдвигаете несколько ящиков, открывая себе доступ к трубам. -]], "atl_nih_tubes_near_oculus", false, [[ - У стены расположена груда ящиков. -]], [[ - Вам незачем что-то еще здесь делать. -]]); +atl_nih_panel_near_admin = obscured_obj("atl_nih_panel_near_admin", [[Рядом со шлюзом установлена {защитная панель}, за которой скрываются трубы для подачи воздуха. ]], [[Вы снимаете панель, открывая доступ к трубам. ]], "atl_nih_tubes_near_admin", true); + +atl_nih_panel_near_luna = obscured_obj("atl_nih_panel_near_luna", [[Рядом со шлюзом установлена {защитная панель}, за которой скрываются трубы для подачи воздуха. ]], [[Вы снимаете панель, открывая доступ к трубам. ]], "atl_nih_tubes_near_luna", true); + +atl_nih_panel_oculus = obscured_obj("atl_nih_panel_oculus", [[Рядом со шлюзом установлена {защитная панель}, за которой скрываются трубы для подачи воздуха. ]], [[Вы снимаете панель, открывая доступ к трубам. ]], "atl_nih_tubes_oculus", true); -atl_nih_boxes_near_terra = obscured_obj("atl_nih_boxes_near_terra", [[ - За грудой {ящиков}, вы замечаете несколько труб подачи воздуха. -]], [[ - Вы сдвигаете несколько ящиков, открывая себе доступ к трубам. -]], "atl_nih_tubes_near_terra", false, [[ - У стены расположена груда ящиков. -]], [[ - Вам незачем что-то еще здесь делать. -]]); +atl_nih_boxes_near_oculus = obscured_obj("atl_nih_boxes_near_oculus", [[За грудой {ящиков}, вы замечаете несколько труб подачи воздуха. ]], [[Вы сдвигаете несколько ящиков, открывая себе доступ к трубам. ]], "atl_nih_tubes_near_oculus", false, [[У стены расположена груда ящиков. ]], [[Вам незачем что-то еще здесь делать. ]]); -atl_nih_boxes_terra = obscured_obj("atl_nih_boxes_terra", [[ - За грудой {ящиков}, вы замечаете несколько труб подачи воздуха. -]], [[ - Вы сдвигаете несколько ящиков, открывая себе доступ к трубам. -]], "atl_nih_tubes_terra", false, [[ - У стены расположена груда ящиков. -]], [[ - Вам незачем что-то еще здесь делать. -]]); +atl_nih_boxes_near_terra = obscured_obj("atl_nih_boxes_near_terra", [[За грудой {ящиков}, вы замечаете несколько труб подачи воздуха. ]], [[Вы сдвигаете несколько ящиков, открывая себе доступ к трубам. ]], "atl_nih_tubes_near_terra", false, [[У стены расположена груда ящиков. ]], [[Вам незачем что-то еще здесь делать. ]]); + +atl_nih_boxes_terra = obscured_obj("atl_nih_boxes_terra", [[За грудой {ящиков}, вы замечаете несколько труб подачи воздуха. ]], [[Вы сдвигаете несколько ящиков, открывая себе доступ к трубам. +]], "atl_nih_tubes_terra", false, [[У стены расположена груда ящиков. ]], [[Вам незачем что-то еще здесь делать. ]]); atl_nih_tubes_near_aqua:disable(); atl_nih_panel_near_a:disable(); diff --git a/atlantis_dlg.lua b/atlantis_dlg.lua --- a/atlantis_dlg.lua +++ b/atlantis_dlg.lua @@ -1306,7 +1306,7 @@ char_goldman_dlg = dlg { s.state = 1; psub("first_meeting"); return [[ - Перед вами высокий человек лет пятидесяти. Густые черные волосы коротко острижены. Лицо гладко выбрито. Увидев вас, он говорит: "Вы прибыли на Левиафане? Я Леонард Голдман. Занимаюсь электросистемами станции" + Перед вами высокий человек лет пятидесяти. Густые светлые волосы коротко острижены. Лицо украшают пышные золотистые усы. Увидев вас, он говорит: "Вы прибыли на Левиафане? Я Леонард Голдман. Занимаюсь электросистемами станции" ]]; else psub("generic"); diff --git a/atlantis_ignis_on_fire.lua b/atlantis_ignis_on_fire.lua --- a/atlantis_ignis_on_fire.lua +++ b/atlantis_ignis_on_fire.lua @@ -1199,7 +1199,7 @@ atl_iof_end = room { put(char_learr_atlantis, atl_oculus_lab_c); else atl_iof_learr_dead = true; - put(char_aikerjarr, atl_oculus_lab_c); + put(char_aikerjarr, atl_oculus_lab_b); end; atl_iof_completed = true; end; diff --git a/main.lua b/main.lua --- a/main.lua +++ b/main.lua @@ -178,6 +178,8 @@ function init() ---game init pl.where = intro; ---debug + pl.where = "atlantis_intro_dock"; + ---leviathan --pl.where = "leviathan_airlock"; --submarine_leviathan.airpump = false;