Changeset - 35b9281a0ed9
[Not reviewed]
default
0 2 0
Silverwing - 7 years ago 2017-02-25 13:28:45

Darkstar dlg added, progress on 238/239
2 files changed with 163 insertions and 61 deletions:
0 comments (0 inline, 0 general)
atlantis.lua
Show inline comments
 
@@ -679,10 +679,22 @@ atl_lift_lever = obj {
 
]]
 
 
char_darkstar = npc {
 
    var {
 
        drake_asked = 0;
 
        black_asked = 0;
 
        darkstar_asked = 0;
 
        svetlova_asked = 0;
 
        moreau_asked = 0;
 
        wright_asked = 0;
 
        leroy_asked = 0;
 
        jones_asked = 0;
 
        goldman_asked = 0;
 
        atlantis_asked = 0;
 
    };
 
	nam = "Винсент Даркстар";
 
	dsc = function(s)
 
        if (char_darkstar_dlg == 0) then
 
            return [[В одном из кресел сидит средних лет {мужчина} с короткими черными волосами. Он одет в строгий деловой костюм черного цвета без каких-либо изысков. Лицо его гладко выбрито. Холодный взгляд его черных глаз устремлен на вас. Сложив руки на столе, он ждет ваших дальнейших действий. ]];
 
            return [[В одном из кресел сидит средних лет {мужчина} с короткими черными волосами. Он одет в строгий деловой костюм черного цвета. Лицо его гладко выбрито. Холодный взгляд его черных глаз устремлен на вас. Сложив руки на столе, он ждет ваших дальнейших действий. ]];
 
        else
 
            return [[В одном из кресел сидит {Винсент Даркстар}. Холодный взгляд его черных глаз устремлен на вас. Сложив руки на столе, он ждет ваших дальнейших действий. ]];
 
        end;
atlantis_dlg.lua
Show inline comments
 
@@ -6,84 +6,174 @@ char_darkstar_dlg = dlg {
 
	disp = "Винсент Даркстар";
 
	entered = function(s)
 
		if (atl_lfc_leroy_spoken) then
 
			pon("leroy");
 
			pon("accuse_leroy");
 
		end;
 
		
 
		if (atl_lfc_goldman_spoken) then
 
			pon("goldman");
 
			pon("accuse_goldman");
 
		end;
 
		
 
        if (atl_rep_darkstar < 0) then
 
            if (char_darkstar.drake_asked == 0) then pon("on_drake"); end;
 
            if (char_darkstar.black_asked == 0) then pon("on_black"); end;
 
            if (char_darkstar.darkstar_asked == 0) then pon("on_darkstar"); end;
 
            if (char_darkstar.svetlova_asked == 0) then pon("on_svetlova"); end;
 
            if (char_darkstar.moreau_asked == 0) then pon("on_moreau"); end;
 
            if (char_darkstar.wright_asked == 0) then pon("on_wright"); end;
 
            
 
            if (atl_iof_completed) then
 
                if (char_darkstar.leroy_asked == 0) then pon("on_leroy"); end;
 
                if (char_darkstar.jones_asked == 0) then pon("on_jones"); end;
 
                if (char_darkstar.goldman_asked == 0) then pon("on_goldman"); end;
 
            end;
 
            
 
            if (char_darkstar.atlantis_asked == 0) then pon("on_atlantis"); end;
 
        else
 
            if (char_darkstar.drake_asked < 2) then pon("on_drake"); end;
 
            if (char_darkstar.black_asked < 2) then pon("on_black"); end;
 
            if (char_darkstar.darkstar_asked < 2) then pon("on_darkstar"); end;
 
            if (char_darkstar.svetlova_asked < 2) then pon("on_svetlova"); end;
 
            if (char_darkstar.moreau_asked < 2) then pon("on_moreau"); end;
 
            if (char_darkstar.wright_asked < 2) then pon("on_wright"); end;
 
            if (atl_iof_completed) then
 
                if (char_darkstar.leroy_asked < 2) then pon("on_leroy"); end;
 
                if (char_darkstar.jones_asked < 2) then pon("on_jones"); end;
 
                if (char_darkstar.goldman_asked < 2) then pon("on_goldman"); end;
 
            end;
 
            if (char_darkstar.atlantis_asked < 2) then pon("on_atlantis"); end;
 
        end;
 
        
 
        if (char_darkstar.drake_asked == 0) then
 
            pon("on_drake");
 
        elseif  (char_darkstar.drake_asked == 1 and atl_rep_darkstar >= 0) then
 
            pon("on_drake");
 
        elseif (char_darkstar.drake_asked < 3 and atl_rep_darkstar > 0) then
 
            pon("on_drake");
 
        end;
 
        
 
		if (s.state == 0) then
 
			psub("first_meeting");
 
            s.state = 1;         
 
			return [[
 
				За столом сидит средних лет мужчина в деловом костюме. Как только вы обращаетесь к нему он говорит первым: "Добрый день, господин Дрейк. Я Винсент Даркстар, мы уже общались по радио. Надеюсь, вы понимаете мое решение касательно Левиафана. Безопасность станции - моя основная работа".
 
			]];
 
			return [[За столом сидит средних лет мужчина с короткими черными волосами. Он одет в строгий деловой костюм черного цвета. Лицо его гладко выбрито. Холодный взгляд его черных глаз устремлен на вас. Сложив руки на столе, он приветствует вас: "Добро пожаловать на Атлантиду, господин Дрейк. Я Винсент Даркстар, мы уже общались по радио. Я занимаю на Атлантиде пост начальника службы безопаности". ]];
 
		elseif (atl_fta_state == 2) then
 
			psub("fta");
 
			return [[
 
				Винсент Даркстар достает из ящика папку с бумагами и кладет перед собой. Не глядя на вас он говорит: "Рассказывайте".
 
			]];
 
			return [[Винсент Даркстар приказывает: "Рассказывайте". ]];
 
		else
 
			psub("generic");
 
			return [[
 
				"Я слушаю"
 
			]];
 
			return [[Винсент Даркстар сообщает: "Я слушаю". ]];
 
		end;
 
	end;
 
	phr = {
 
    phr = {
 
		{tag="first_meeting"};
 
		{"Что мне нужно сделать, чтобы мне вернули Левиафан?", [[
 
			"Вести себя хорошо и не пытаться навредить кому-либо на станции".
 
		]]};
 
		{"Когда мне вернут Левиафан?", [[
 
			"В свое время. Пока вы можете попытаться понять, куда вам следует направиться, если вы хотите найти отца".
 
		]]};
 
		{"Я пришел кое-что спросить", [[
 
			"Я слушаю".
 
		]], code [[psub("generic");]]};
 
		{"Что мне нужно сделать, чтобы мне вернули Левиафан?", [[Винсент Даркстар хлопает ладонями о стол и уверенно сообщает: "Вести себя хорошо и не делать глупостей". ]]};
 
		{"Когда мне вернут Левиафан?", [[Винсент Даркстар отвечает: "Всему свое время. Используйте это время с пользой. Если хотите найти Уильяма, сначала стоит выяснить где и как его искать. И вам не помешает узнать кое-что помимо этого". ]]};
 
		{"Я пришел кое-что спросить. ", [[Винсент Даркстар сообщает :"Я слушаю". ]], code [[psub("generic");]]};
 
		{tag="generic"};
 
		{"Расскажите об Уильяме", [[
 
			"Уильям - таланливый человек. Вместе с Райтом они построили эту станцию целиком на средства Уильяма".
 
		]]};
 
		{tag="goldman", "Саботаж - дело рук Голдмана", [[
 
			"Во-первых, я вас просил не лезть в это дело. Во-вторых, я бы не был так уверен. В третьих, я еще раз прошу вас больше расследованию не мешать".
 
		]], code [[ atl_lfc_suspect="goldman"; ]]};
 
		{tag="leroy", "Саботаж - дело рук Леруа", [[
 
			"Во-первых, я вас просил не лезть в это дело. Во-вторых, я бы не был так уверен. В третьих, я еще раз прошу вас больше расследованию не мешать".
 
		]], code [[ atl_lfc_suspect="leroy"; ]]};
 
		{always=true, "Я пойду", [[
 
			"До встречи"
 
		]], code [[ back(); ]]};
 
		{tag="on_drake", false, "Расскажите об Уильяме. ", function()
 
            if (atl_rep_darkstar < 0) then
 
                char_darkstar.drake_asked = 1;
 
                return [[Винсент Даркстар отвечает: "Мне нечего вам сказать". ]];
 
            else
 
                char_darkstar.drake_asked = 2;
 
                return [[Винсент Даркстар отвечает: "Что вы ожидаете услышать? Дрейк -- основатель Вестхейвен Трансоушен. Он -- мой непосредственный руководитель, однако у нас, на Атлантиде, принято решать важные вопросы совместно. Не так давно он отправился в научную экспедицию вместе с Адрианом Блэком и еще несколькими сотрудниками. Дрейк неосторожен и склонен к опрометчивым решениям. Это может сыграть с ним злую шутку".]];
 
            end;
 
        end};
 
        {tag="on_black", false, "Расскажите об Адриане Блэке. ", function()
 
            if (atl_rep_darkstar < 0) then
 
                char_darkstar.black_asked = 1;
 
                return [[Винсент Даркстар отвечает: "Мне нечего вам сказать". ]];
 
            else
 
                char_darkstar.black_asked = 2;
 
                return [[Винсент Даркстар отвечает: "Блэк -- главный помощник Дрейка по управлению компанией. Ни одно важное решение в Вестхейвен Трансоушен не принимается без его участия. Не так давно он отправился в научную экспедицию вместе с Уильямом Дрейком и еще несколькими сотрудниками. С одной стороны -- он хороший руководитель и Дрейку повезло иметь такого помощника, с другой -- Блэк, несомненно, принесет в жертву и станцию и всех нас, если это послужит его интересам. Будьте осторожны при общении с ним". ]];
 
            end;
 
        end};
 
        {tag="on_darkstar", false, "Расскажите о себе. ", function()
 
            if (atl_rep_darkstar < 0) then
 
                char_darkstar.darkstar_asked = 1;
 
                return [[Винсент Даркстар отвечает: "Мне нечего вам сказать". ]];
 
            else
 
                char_darkstar.darkstar_asked = 2;
 
                return [[Винсент Даркстар отвечает: "Мне нечего рассказывать, кроме того, что я уже сказал. Мое имя Винсент Даркстар и я занимаю пост начальника службы безопасности Атлантиды". ]];
 
            end;
 
        end};
 
        {tag="on_svetlova", false, "Расскажите о Екатерине Светловой", function()
 
            if (atl_rep_darkstar < 0) then
 
                char_darkstar.svetlova_asked = 1;
 
                return [[Винсент Даркстар отвечает: "Мне нечего вам сказать". ]];
 
            else
 
                char_darkstar.svetlova_asked = 2;
 
                return [[Винсент Даркстар отвечает: "Екатерина Светлова -- руководитель исследовательского отдела на Атлантиде. Секция Окулус находится в ее ведении. Атлантида для нее -- неисчерпаемый источник материала для исследований, поэтому она заинтересована в продолжении работы станции". ]];
 
            end;
 
        end};
 
        {tag="on_moreau", false, "Расскажите о Фредерике Моро", function()
 
            if (atl_rep_darkstar < 0) then
 
                char_darkstar.moreau_asked = 1;
 
                return [[Винсент Даркстар отвечает: "Мне нечего вам сказать". ]];
 
            else
 
                char_darkstar.moreau_asked = 2;
 
                return [[Винсент Даркстар отвечает: "Фредерик Моро руководит станцией в отсутствие Дрейка и Блэка. Должен сказать, справляется он неплохо. Ему можно доверять безоговорочно -- он с полной ответственностью подходит к управлению станцией. Хотя он склонен делегировать многие решения, он отдает их правильным людям". ]];
 
            end;
 
        end]};
 
        {tag="on_wright", false, "Расскажите о Майлке Райте", function()
 
            if (atl_rep_darkstar < 0) then
 
                char_darkstar.wright_asked = 1;
 
                return [[Винсент Даркстар отвечает: "Мне нечего вам сказать". ]];
 
            else
 
                char_darkstar.wright_asked = 2;
 
                return [[Винсент Даркстар отвечает: "Майкл Райт -- руководитель инженерного отдела на Атлантиде. В его задачи входит поддержание работоспособности станции и ее техническое развитие. Станция -- дело всей его жизни. Когда поднимался вопрос, он не колеблясь оставил семью на поверхности ради возможности развивать Атлантиду". ]];
 
            end;
 
        end};
 
        {tag="on_leroy", false, "Расскажите о Мишеле Леруа", function()
 
            if (atl_rep_darkstar < 0) then
 
                char_darkstar.leroy_asked = 1;
 
                return [[Винсент Даркстар отвечает: "Мне нечего вам сказать". ]];
 
            else
 
                char_darkstar.leroy_asked = 2;
 
                return [[Винсент Даркстар отвечает: "Леруа много знает об устройстве Атлантиды и он открыто выступает в пользу закрытия станции и возвращения на поверхность. Он не выглядит настолько глупым, чтобы саботировать работу станции, однако он один из немногих подпадающих под подозрение. Вообще-то, интересоваться сотрудниками Атлантиды - моя работа, а не ваша". ]];
 
            end;
 
        end};
 
        {tag="on_jones", false, "Расскажите о Чарли Джонсе", function()
 
            if (atl_rep_darkstar < 0) then
 
                char_darkstar.jones_asked = 1;
 
                return [[Винсент Даркстар отвечает: "Мне нечего вам сказать". ]];
 
            else
 
                char_darkstar.jones_asked = 2;
 
                return [[Винсент Даркстар отвечает: "Джонс много знает об устройстве Атлантиды и он открыто выступает в пользу закрытия станции и возвращения на поверхность. Он недостаточно смел, чтобы попытаться саботировать работу станции, однако он один из немногих попадающих под подозрение. Вообще-то, интересоваться сотрудниками Атлантиды - моя работа, а не ваша". ]];
 
            end;
 
        end};
 
        {tag="on_goldman", false, "Расскажите о Леонарде Голдмане", function()
 
            if (atl_rep_darkstar < 0) then
 
                char_darkstar.goldman_asked = 1;
 
                return [[Винсент Даркстар отвечает: "Мне нечего вам сказать". ]];
 
            else
 
                char_darkstar.goldman_asked = 2;
 
                return [[Винсент Даркстар отвечает: "Голдман много знает об устройстве Атлантиды и он открыто выступает в пользу закрытия станции и возвращения на поверхность. Он эмоционально неуравновешен. Если бы он устроил аварию, он бы уже выдал себя. Однако, он один из немногих, кому хватает знаний, чтобы спланировать саботаж. Вообще-то, интересоваться сотрудниками Атлантиды - моя работа, а не ваша". ]];
 
            end;
 
        end};
 
        {tag="on_atlantis", false, "Расскажите об Атлантиде", function()
 
            if (atl_rep_darkstar < 0) then
 
                char_darkstar.atlantis_asked = 1;
 
                return [[Винсент Даркстар отвечает: "Мне нечего вам сказать". ]];
 
            else
 
                char_darkstar.atlantis_asked = 2;
 
                return [[Винсент Даркстар отвечает: "Атлантида построена на средства Вестхейвен Трансоушен -- компании вашего отца. Майкл Райт -- создатель станции, многое продумал, существенно облегчив мне работу. Конечно, периодически, мне приходится иметь дело с нарушениями правил -- я неоднократно просил не загромоздать коридоры; всегда закрывать за собой шлюзы, двери, щитки, панели; не перекрывать посторонними предметами доступ к важным узлам станции. Думаю, вы сами заметили, как исполняются эти указания". ]];
 
            end;
 
        end};
 
		{tag="accuse_goldman", false, "Саботаж - дело рук Голдмана", [[Даркстар недовольно отчитывает вас: "Во-первых, я вас просил не лезть в это дело. Во-вторых, я бы не был так уверен. В третьих, я еще раз прошу вас больше расследованию не мешать". ]], code [[ atl_lfc_suspect="goldman"; ]]};
 
		{tag="accuse_leroy", "Саботаж - дело рук Леруа", [[Даркстар недовольно отчитывает вас: "Во-первых, я вас просил не лезть в это дело. Во-вторых, я бы не был так уверен. В третьих, я еще раз прошу вас больше расследованию не мешать". ]], code [[ atl_lfc_suspect="leroy"; ]]};
 
		{always=true, "Я пойду", [[Даркстар прощается: "До встречи". ]], code [[ back(); ]]};
 
		{tag="fta"};
 
		{"Что рассказывать?", [[
 
			"Что произошло в Солисе. Прежде всего - все, что вам показалось подозрительным"
 
		]]};
 
		{"Первый взрыв раздался, когда я был у входа в секцию[Кратко пересказать основные события]", [[
 
			"Хорошо, что подозрительного вы заметили?"
 
		]]};
 
		{"Один из клапанов работал неправильно - давление в нем было выше нормы", [[
 
			"Интересно. За десять лет работы станции такого никогда не было".
 
		]]};
 
		{tag="clock", "[Показать часы]А еще я нашел там вот это", [[
 
			"Так-так-так. Франсуа Голдман. Значит Леонард однозначно в этом замешан. Но, зная его, я скажу, что действовал он не один. Я снова ставлю на то, что они попытаются вывести из строя одну из субмарин. И, скорее всего их целью будет Наутилус".
 
		]], code [[ atl_lfc_goldman_exposed = true; psub("why_lev"); ]]};
 
		{tag="why_lev"};
 
		{"Почему Наутилус?", [[
 
			"Потому что саботажник не хочет нашей смерти. Он хочет остановить работу станции. Наутилус используется только для операций поблизости от станции. Энтерпрайз же и Левиафан способны доставить нас на континенты".
 
		]]};
 
		{"Соглашусь с вашим предположением", [[
 
			"Отлично. Я попрошу вас помочь мне с этим заданием".
 
		]], code [[ psub("lfc_help"); ]]};
 
		{"Мне кажется, целью будет другая субмарина", [[
 
			"Можете не волноваться, мы будем следить за всеми доками - я не хочу, чтобы ситуация вышла из под контроля. Кроме того, я попрошу вас помочь мне с этим заданием".
 
		]], code [[ psub("lfc_help"); ]]};
 
		{"Что вы хотите услышать?", [[Даркстар поясняет: "Все, что произошло в Солисе и показалось вам подозрительным". ]]};
 
		{"Первый взрыв раздался, когда я был у входа в секцию[Кратко пересказать основные события]", [[Даркстар молча кивает. ]]};
 
		{"Один из клапанов работал неправильно - давление в нем было выше нормы", [[Даркстар с сомнением произносит: "Интересно. За десять лет работы станции такого никогда не было". ]]};
 
		{tag="clock", "[Показать часы]А еще я нашел там вот это", [[Даркстар забирает часы и вертит их в руках: "Так-так-так. Франсуа Голдман. Леонард однозначно в этом замешан, но действовал он не один. Я все еще думаю, что они попытаются вывести из строя одну из субмарин. Скорее всего их целью будет Наутилус". ]], code [[ atl_lfc_goldman_exposed = true; psub("why_nau"); ]]};
 
		{tag="why_nau"};
 
		{"Почему именно Наутилус?", [[Даркстар объясняет:"Саботажник хочет не убить всех, а поломать станцию. Он хочет наверх, а не умереть здесь. Наутилус - субмарина малого радиуса, а Энтерпрайз и Левиафан способны доставить нас на континенты". ]]};
 
		{"Соглашусь с вашим предположением", [[Даркстар кивает: "Хорошо. Я попрошу вас помочь мне с этим заданием". ]], code [[ psub("lfc_help"); ]]};
 
		{"Мне кажется, целью будет другая субмарина", [[Даркстар кивает: "Я это учел. Мы будем следить за всеми доками. Также, я попрошу вас помочь мне с этим заданием". ]], code [[ psub("lfc_help"); ]]};
 
		{tag="lfc_help"};
 
		{"Почему я?", [[
 
			"Вы один из немногих в курсе ситуации. Я не хотел бы посвящать слишком многих в происходящее - это увеличит риск утечки и может спровоцировать панику".
 
		]]};
 
		{"Я слушаю", [[
 
			"Я хочу, чтобы в семь часов вечера вы отправились в док Наутилуса и в течение ближайшей ночи наблюдали за происходящим. Если вы заметите что-то подозрительное - принимаете меры на ваше усмотрение", -- Даркстар достает из ящика стола револьвер и кладет перед вами: "Это вам понадобится".
 
		{"Почему я?", [[Даркстар объясняет:"Я хочу свести количество людей, знающих о саботажах к минимуму, а вы уже в курсе ситуации". ]]};
 
		{"Что я должен сделать?", [[Даркстар рассказывает:"В семь часов вечера вы отправляетесь в док Наутилуса и наблюдаете за происходящим в течение ночи. Если вы замечаете что-то подозрительное - принимаете меры на ваше усмотрение", -- Даркстар достает из ящика стола револьвер и кладет перед вами: "Это вам не помешает".
 
		]], code [[
 
			take(item_colt);
 
			atl_lfc_state = 2;
0 comments (0 inline, 0 general)