Changeset - af14fb414868
[Not reviewed]
default
0 3 0
Silverwing - 8 years ago 2017-03-19 11:22:25

Progress on dlg rewrite; Anna dlg rewrite
3 files changed with 9 insertions and 20 deletions:
0 comments (0 inline, 0 general)
atlantis.lua
Show inline comments
 
@@ -723,97 +723,97 @@ char_moreau = npc {
 
        ryveerr_asked = 0;
 
        aikerjarr_asked = 0;
 
    };
 
	nam = "Фредерик Моро";
 
	dsc = function(s)
 
        if (char_moreau_dlg.state == 0) then
 
            return [[За столом в кресле сидит немолодой {мужчина}. Кудрявые седые волосы обрамляют его лицо. Он носит длинные седые усы. Одет человек в строгий деловой костюм бежевого цвета. Его серые глаза, скрытые очками, внимательно рассматривают вас. В руках он вертит перо. ]];
 
        else
 
            return [[За столом в кресле сидит {Фредерик Моро} и внимательно наблюдает за вами сквозь стекла очков. В руках он вертит перо. ]];
 
        end;
 
    end;   
 
	dlg = "char_moreau_dlg";
 
};
 
 
char_svetlova = 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;
 
        navjiarr_asked = 0;
 
        learr_asked = 0;
 
        ryveerr_asked = 0;
 
        aikerjarr_asked = 0;
 
    };
 
	nam = "Екатерина Светлова";
 
	dsc = function(s)
 
        if (char_svetlova_dlg.state == 0) then   
 
            return [[За столом сидит {женщина} лет сорока-пяти. Золотистые волосы собраны в пучок на затылке. Она одета в простое синее платье. В правой руке она держит карандаш, которым периодически делает пометки в бумагах, лежащих на столе. Кажется, она не обращает на вас никакого внимания. ]];
 
        else
 
            return [[За столом сидит {Екатерина Светлова}. Периодически она делает какие-то пометки карандашом в ]];
 
        end;
 
    end;
 
	dlg = "char_svetlova_dlg";
 
};
 
 
char_anna_atlantis = npc {
 
	nam = "Анна Рэдклифф";
 
	disp = "Анна Рэдклифф";
 
	dsc = function(s)
 
		if (where(char_learr_atlantis) ~= atl_oculus_lab_c) then
 
            if (char_anna_atlantis_dlg.state == 0) then
 
                return [[{Девушка} лет двадцати-пяти внимательно слушает навьяра, иногда что-то спрашивая. ]];
 
                return [[{Девушка} лет двадцати-пяти--тридцати внимательно слушает навьяра, иногда что-то спрашивая. ]];
 
            else
 
			    return [[{Анна Рэдклифф} внимательно слушает навьяра, иногда что-то спрашивая. ]];
 
            end;         
 
		else
 
            if (char_anna_atlantis_dlg.state == 0) then      
 
                return [[{Девушка} лет тридцати внимательно слушает навьяров, иногда что-то спрашивая. ]];
 
            else
 
			    return [[{Анна Рэдклифф} внимательно слушает навьяров, иногда что-то спрашивая. ]];
 
            end;         
 
		end;
 
	end;
 
	dlg = "char_anna_atlantis_dlg";
 
};
 
 
char_learr_atlantis = npc {
 
	var {
 
		offended = false;
 
	};
 
	nam = "Леарр";
 
	dsc = function(s)
 
        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";
 
};
 
 
char_aikerjarr = npc {
 
	nam = "Аикерьярр";
 
	dsc = function(s)
 
        if (char_aikerjarr_dlg.state == 0) then
 
            return [[У одного из столов неподвижно стоит {навьяр}. ]];
 
        else
 
		    return [[У одного из столов неподвижно стоит {Аикерьярр}. ]];
 
        end;      
 
	end;
 
	dlg = "char_aikerjarr_dlg";
 
};
 
 
char_ryveerr = npc {
 
	nam = "Ривеерр";
 
	dsc = function(s)
atlantis_dlg.lua
Show inline comments
 
@@ -774,127 +774,115 @@ char_svetlova_dlg = dlg {
 
				return [[Екатерина Светлова отвечает: "Я думаю вы и сами прекрасно знаете. Может расскажете?". ]];
 
			end;
 
		end};
 
		{tag = "hard_to_understand", false, "Я поговорил с Аикерьярром, но я почти ничего не понял из его слов[Кратко пересказать диалог с Аикерьярром]", [[Екатерина Светлова откладывает бумаги в сторону и задумывается. Через некоторое время она сообщает: "Интересно. Аикерьярр упорно отрицает причастность Ираафаанотра к краже реликвии. Что говорит Ривеерр по этому поводу?" ]], code [[ char_svetlova_dlg.state = 2; psub('ryveerr_on_steal');]]};
 
		{tag = "explanation", false, "Я поговорил с Леарр. Она отрицает причастность Ираафаанотра к краже[Кратко пересказать диалог с Ираафаанотром]", [[Екатерина Светлова откладывает бумаги в сторону и задумывается. Через некоторое время она спрашивает: "Что говорит Ривеерр по этому поводу?" ]], code [[ char_svetlova_dlg.state = 2; psub('ryveerr_on_steal');]]};
 
		{always = true, "Я пойду", [[Светлова возвращается ко своим бумагам: "До встречи". ]], code [[ back(); ]]};
 
		{tag = "ignis_sabotage"};
 
		{"Даркстар считает, что причиной пожара был саботаж", function(s)
 
			psub("generic");
 
			atl_rep_svetlova = atl_rep_svetlova + 1;
 
            return [[Екатерина Светлова отвечает: "Даркстар просил вас об этом никому не говорить, но я понимаю ваш интерес. Саботажником может быть только кто-то из сторонников закрытия станции. Поговорите с Мишелем Леруа, чтобы больше об этом узнать. О саботаже попробуйте поговорить с Уолтером Рэдклиффом, если вам действительно интересно. И, пожалуйста, постарайтесь не разводить панику на станции". ]];
 
		end};
 
		{"Понятия не имею", [[Екатерина Светлова разочарованно отвечает: "Очень жаль". ]], code [[ psub("generic"); ]]};
 
		{tag = "ryveerr_on_steal"};
 
		{tag = "ryveerr_spoken", false, "Ривеерр рассказал о нападении на храм Дипатреанотра и краже реликвии оттуда. Он уверен, что это сделали именно жители Ираафаанотра. Он говорит, что Дипатреанотр готов обменять реликвии обратно. То есть реликвия Ираафаанотра, судя по всему, находится в Дипатреанотре. ", [[Светлова задумчиво потирает лоб: "Как видите, мы в тупике. Но у меня есть идея". ]], code [[ pon("ryveerr_more"); ]]};
 
		{tag = "ryveerr_more", false, "Идея?", [[Екатерина Светлова открывает ящик стола и что-то там ищет. Судя по всему, она не находит искомого. Махнув рукой, она продолжает: "Есть еще один храм - очень старый, его даже навьяры не посещают. В этом храме живет гигантский скат и эта ситуация очень похожа на описанную в одной из навьярских легенд. Если хотите узнать больше -- спросите Сильвию Уинтерлайт. Она расскажет все гораздо лучше меня". ^Екатерина закрывает ящик стола и продолжает: "Я хочу, чтобы вы отправились в этот храм. Навьярам не стоит ничего знать -- я думаю, вы догадываетесь, как они отреагируют, если им сообщить". ]], code [[ atl_iyh_state = 4; psub("secret_op"); ]]};
 
		{"Я пойду", [[Светлова возвращается ко своим бумагам: "До встречи". ]], code [[ back(); ]]};
 
		{tag="secret_op"};
 
		{"Хорошо, я ничего не скажу навьярам. ", [[Екатерина Светлова отвечает: "Отлично. Осталось дождаться, когда вам позволят покидать станцию". ]], code [[ back(); ]]};
 
		{"Мне кажется, нам стоит поставить их в известность. Как они отреагируют, если мы просто принесем им реликвию? ", [[Екатерина Светлова отвечает: "Они будут благодарить нас. А теперь представьте, что вы сообщаете им, что отправляетесь в их священное место охотиться на их священную рыбу. Что будет?" ]], code [[ psub("so_answer"); ]]};
 
		{tag="so_answer"};
 
		{"Да, пожалуй вы правы", [[Екатерина Светлова отвечает: "Отлично. Осталось дождаться, когда вам позволят покидать станцию". ]]};
 
		{"А что будет, если мы принесем им реликвию, которая должна по их мнению быть в Ираафаанотре? Разве они не посчитают, что мы украли ее оттуда? ", [[Екатерина Светлова недовольно отвечает: "Поступайте как знаете. Если ваши действия повредят станции, то Левиафана вам не видать". ]], code [[ back(); ]]};
 
		{tag="iyh_more"};
 
		{"Я могу чем-то еще помочь?", [[Екатерина Светлова отвечает: "Пока у нас нет для вас заданий, но возможно позже появится что-то. Сейчас вы можете продолжать ваши поиски". ]]};
 
		{"Спасибо за помощь, я пойду", [[Екатерина Светлова прощается с вами: "До встречи. Удачи в поисках Уильяма".]], code [[ back(); ]]};
 
	};
 
};
 
 
char_anna_atlantis_dlg = dlg {
 
	var {
 
		state = 0;
 
	};
 
	nam = "Анна Рэдклифф";
 
	disp = "Анна Рэдклифф";
 
	entered = function(s)
 
		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 (s.state == 0) then
 
			s.state = 1;
 
			psub("first_meeting");
 
			return [[
 
				Перед вами стоит молодая женщина лет двадцати-пяти-тридцати. Каштановые волосы ниспадают на плечи. Зеленые глаза внимательно следят за движениями навьяра, с которым она разговаривает. Заметив вас, она просит навьяра подождать и обращается к вам: "Приветствую, я Анна Рэдклифф". 
 
			]];
 
			return [[Перед вами стоит девушка лет двадцати-пяти--тридцати. Каштановые волосы ниспадают на плечи. Зеленые глаза внимательно следят за движениями навьяра, с которым она разговаривает. Заметив вас, она просит навьяра подождать и обращается к вам: "Приветствую. Вы, должно быть господин Дрейк? Мое имя Анна Рэдклифф". ]];
 
		else
 
			psub("generic");
 
			return [[
 
				Анна разговаривает с навьяром, стоящим рядом. Заметив вас, она просит его подождать и обращается к вам: "Приветствую, вы что-то хотели?"
 
			]];
 
			return [[Анна Рэдклифф разговаривает с навьяром, стоящим рядом. Заметив вас, она просит его подождать и обращается к вам: "Приветствую, вы что-то хотели?" ]];
 
		end;
 
	end;
 
	phr = {
 
		{tag="first_meeting"};
 
		{"Я Дэвид Дрейк. Очень приятно", [[
 
			Анна улыбается: "Вы что-то хотели?"
 
		]], code = [[ psub('generic'); ]]};
 
		{"Да, я Дэвид Дрейк. Рад знакомству", [[Анна Рэдклифф улыбается и спрашивает: "Вы что-то хотели?" ]], code = [[ psub('generic'); ]]};
 
		{tag="generic"};
 
		{tag="sabotage", "Вы знаете, что пожар в Игнисе - следствие саботажа?", function(s)
 
			atl_lfc_panic = atl_lfc_panic + 1;
 
			atl_rep_darkstar = atl_rep_darkstar - 1;
 
			rel_walter = rel_walter - 1;
 
			rel_anna = rel_anna - 1;
 
			return [[
 
				Анна в ужасе смотрит на вас: "Вы серьезно? Ну да... Оборудование здесь хорошее, мне Уолтер не раз рассказывал насколько здесь все надежное. Не знаю, что и думать... А если этот псих вздумает поджечь еще что-то?"
 
			]];
 
			return [[Анна удивленно смотрит на вас: "Зачем вы это говорите? Кому может прийти в голову подобное?" ]];
 
		end};
 
		{tag="ignis_what", "Вы знаете, что произошло в Игнисе?", [[
 
			"Практически ничего. Поговорите с Даркстаром или Райтом. Можете еще Уолтера спросить".
 
		]]};
 
		{always=true, "Я пойду", [[
 
			"До встречи"
 
		]], code [[ back(); ]]};
 
		{tag="ignis_what", "Вы знаете, что произошло в Игнисе?", [[Анна отрицательно качает головой: "Мне почти ничего неизвестно. Поговорите с Даркстаром или Райтом. Или спросите моего брата, Уолтера. Я думаю он в курсе". ]]};
 
		{always=true, "Я пойду", [[Анна прощается с вами: "До встречи". ]], code [[ back(); ]]};
 
	};
 
};
 
 
char_learr_atlantis_dlg = dlg {
 
	var {
 
		state = 0;
 
	};
 
	nam = "Леарр";
 
	disp = "Леарр";
 
	entered = function(s)
 
		if (s.state == 0) then
 
			if (char_learr_atlantis.offended) then
 
				psub("offended");
 
				return [[
 
					Леарр поворачивается к вам, плавники ее становятся ярко-оранжевыми, а она говорит: "Я приветствую тебя-презренный-монстр-he'vji'a'rr".
 
				]];
 
			else
 
				psub("pre_iof");
 
				return [[
 
					Леарр поворачивается к вам, плавники ее становятся сине-зелеными, а она говорит: "Я приветствую тебя-he'vji'a'rr".
 
				]];
 
			end;
 
		elseif (s.state == 1) then
 
			s.state = 2;
 
			psub("after_iof");
 
			if (atl_iof_learr_suit) then
 
				return [[
 
					При виде вас, плавники Леарр меняют цвет на ярко-красный. Она плавно опускает руки вниз и делает что-то вроде поклона. После этого она поднимается и говорит: "Я благодарю вас. Ваша-со-скафандром-идея невероятна".
 
				]];
 
			else
 
				return [[
 
					При виде вас, плавники Леарр меняют цвет на ярко-красный. Она плавно опускает руки вниз и делает что-то вроде поклона. После этого она поднимается и говорит: "Я благодарю вас".
 
				]];
 
			end;
 
		else
 
			if (atl_iyh_state == 4) then
 
				pon("iyh4");
 
			elseif (atl_iyh_state == 5) then
 
				pon("iyh5");
 
			end;
 
			psub("generic");
 
			if (rel_learr > 0) then
 
				return [[
 
					Леарр поворачивается к вам, плавники ее становятся сине-зелеными, а она говорит: "Я рада-видеть тебя".
 
				]];
 
			else
 
				return [[
 
					Леарр поворачивается к вам, плавники ее становятся сине-зелеными, а она говорит: "Я приветствую тебя-he'vji'a'rr".
party.lua
Show inline comments
 
@@ -96,97 +96,98 @@ char_radcliffe = obj {
 
			return [[
 
				{Уолтер Рэдклифф} ждет ваших указаний. ^
 
			]];
 
		end;
 
	end;
 
	home = "leviathan_engines";
 
	accompany = party_accompany;
 
	life = party_follow;
 
	act = function(s)
 
		if (stead.nameof(where(s)) == s.home) then
 
			walkin(radcliffe_home_dlg);
 
		else
 
			walkin(radcliffe_dlg);
 
		end;
 
	end;
 
};
 
 
char_wright = obj {
 
	var {
 
		follow = false;
 
	};
 
	nam = "wright";
 
	disp = "Джек Райт";
 
	dsc = function(s)
 
		if (stead.nameof(where(s)) == s.home) then
 
			return [[
 
				{Джек Райт} читает какую-то книгу. ^
 
			]];
 
		else
 
			return [[
 
				{Джек Райт} ждет ваших указаний. ^
 
			]];
 
		end;
 
	end;
 
	home = "leviathan_wardroom";
 
	accompany = party_accompany;
 
	life = party_follow;
 
	act = function(s)
 
		if (stead.nameof(where(s)) == s.home) then
 
			walkin(wright_home_dlg);
 
		else
 
			walkin(wright_dlg);
 
		end;
 
	end;
 
};
 
 
char_anna = obj {
 
	var {
 
		follow = false;
 
        follow = false;
 
        
 
	};
 
	nam = "anna";
 
	disp = "Анна Рэдклифф";
 
	dsc = function(s)
 
		if (stead.nameof(where(s)) == s.home) then
 
			return [[
 
				{Анна Рэдклифф} смотрит в иллюминатор. ^
 
			]];
 
		else
 
			return [[
 
				{Анна Рэдклифф} ждет ваших указаний. ^
 
			]];
 
		end;
 
	end;
 
	home = "leviathan_wardroom";
 
	accompany = party_accompany;
 
	life = party_follow;
 
	act = function(s)
 
		if (stead.nameof(where(s)) == s.home) then
 
			walkin(anna_home_dlg);
 
		else
 
			walkin(anna_dlg);
 
		end;
 
	end;
 
};
 
 
learr_home_dlg = dlg {
 
	nam = "learr_dlg";
 
	disp = "Леарр";
 
	hideinv = true;
 
	entered = function(s)
 
		if (atl_iyh_state == 7) then
 
			pon("on_iyh");
 
		else
 
			poff("on_iyh");
 
		end;
 
	
 
		if (char_learr.follow) then
 
			pon('stay');
 
			poff('join');
 
		else
 
			pon('join');
 
			poff('stay');
 
		end;
 
	
 
		return [[
 
			Леарр вопросительно смотрит на вас
 
		]];
0 comments (0 inline, 0 general)