Changeset - ae667b5a708c
[Not reviewed]
default
0 1 0
Silverwing - 8 years ago 2017-01-21 14:12:57

text and savegame fixes
1 file changed with 89 insertions and 295 deletions:
0 comments (0 inline, 0 general)
leviathan.lua
Show inline comments
 
@@ -33,14 +33,7 @@ submarine_leviathan = obj {
 
	};
 
	nam = "submarine_leviathan";
 
	disp = "Левиафан";
 
	
 
	-- dsc = [[
 
	--	Вы видите огромную металлическую конструкцию, напоминающую рыбу. Большие стеклянные иллюминаторы по бортам еще больше усиливают впечатление. На бортах крупными буквами выведено "А04 Левиафан". В верхней части машины вы видите {люк}.^ 
 
	--]];
 
	dsc = [[
 
		Вы видите "{Левиафан}" - вашу субмарину. ^
 
	]];
 
	-- TODO описание составлять из реального состояния подводной лодки.
 
	dsc = [[Вы видите "{Левиафан}" - вашу субмарину. ]];
 
	act = [[ Несмотря на проведенные в бездействии годы, субмарина сейчас в отличном состоянии. Из иллюминаторов льется яркий свет. На борту виднеется слегка пошарпанная, но читаемая надпись "А04 - Левиафан" ]];
 
};
 
 
@@ -79,13 +72,8 @@ leviathan_captains_cabin = darkroom {
 
	nam = "leviathan_captains_cabin";
 
	disp = "Левиафан, каюта капитана";
 
	leviathan = true;
 
	dsc_lit = [[
 
		Вы находитесь в каюте, очевидно, предназначенной для капитана. Эта каюта немного больше остальных, в ней размещен стол и стул. 
 
		В столе несколько ящичков, хитроумно закрытых, чтобы при качке они не открывались.
 
	]];
 
	dsc_halflit = [[
 
		Вы находитесь в каюте, очевидно, предназначенной для капитана. Эта каюта немного больше остальных. В слабом свете лампы вы с трудом различаете очертания дверей и предметов. 
 
	]];
 
	dsc_lit = [[Вы находитесь в каюте, очевидно, предназначенной для капитана. Эта каюта немного больше остальных, в ней размещен стол и стул. В столе имеется несколько ящичков. ]];
 
	dsc_halflit = [[Вы находитесь в каюте, очевидно, предназначенной для капитана. Эта каюта немного больше остальных. В слабом свете лампы вы с трудом различаете очертания дверей и предметов. ]];
 
	dsc_dark = [[Вы находитесь в одной из кают. В темноте вы не можете ничего различить. ]];
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
@@ -99,9 +87,7 @@ leviathan_cabin_1 = darkroom {
 
	nam = "leviathan_cabin_1";
 
	disp = "Левиафан, каюта №1";
 
	leviathan = true;
 
	dsc = [[
 
		Вы находитесь в одной из кают Левиафана
 
	]];
 
	dsc = [[Вы находитесь в одной из кают Левиафана. ]];
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
	};
 
@@ -111,9 +97,7 @@ leviathan_cabin_2 = darkroom {
 
	nam = "leviathan_cabin_2";
 
	disp = "Левиафан, каюта №2";
 
	leviathan = true;
 
	dsc = [[
 
		Вы находитесь в одной из кают Левиафана
 
	]];
 
	dsc = [[Вы находитесь в одной из кают Левиафана. ]];
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
	};
 
@@ -123,9 +107,7 @@ leviathan_cabin_3 = darkroom {
 
	nam = "leviathan_cabin_3";
 
	disp = "Левиафан, каюта №3";
 
	leviathan = true;
 
	dsc = [[
 
		Вы находитесь в одной из кают Левиафана
 
	]];
 
	dsc = [[Вы находитесь в одной из кают Левиафана. ]];
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
	};
 
@@ -135,9 +117,7 @@ leviathan_cabin_4 = darkroom {
 
	nam = "leviathan_cabin_4";
 
	disp = "Левиафан, каюта №4";
 
	leviathan = true;
 
	dsc = [[
 
		Вы находитесь в одной из кают Левиафана
 
	]];
 
	dsc = [[Вы находитесь в одной из кают Левиафана. ]];
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
	};
 
@@ -147,9 +127,7 @@ leviathan_cabin_5 = darkroom {
 
	nam = "leviathan_cabin_5";
 
	disp = "Левиафан, каюта №5";
 
	leviathan = true;
 
	dsc = [[
 
		Вы находитесь в одной из кают Левиафана
 
	]];
 
	dsc = [[Вы находитесь в одной из кают Левиафана. ]];
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
	};
 
@@ -159,15 +137,9 @@ leviathan_corridor = darkroom {
 
	nam = "leviathan_corridor";
 
	disp = "Левиафан, коридор";
 
	leviathan = true;
 
	dsc_lit = [[
 
		Вы находитесь в длинном коридоре с множеством дверей, ведущих в каюты, расположенные по левому борту.
 
	]];
 
	dsc_halflit = [[
 
		Вы находитесь в длинном коридоре с множеством дверей, ведущих в каюты, расположенные по левому борту.
 
	]];
 
	dsc_dark = [[
 
		Вы находитесь в темном коридоре. В темноте ничего не видно. 
 
	]];
 
	dsc_lit = [[Вы находитесь в длинном коридоре с множеством дверей, ведущих в каюты, расположенные по левому борту. ]];
 
	dsc_halflit = [[Вы находитесь в длинном коридоре с множеством дверей, ведущих в каюты, расположенные по левому борту. ]];
 
	dsc_dark = [[Вы находитесь в темном коридоре. В темноте ничего не видно. ]];
 
	way = {
 
		kh_vroom("В каюту капитана", "leviathan_captains_cabin", 1);
 
		kh_vroom("В каюту №1", "leviathan_cabin_1", 1);
 
@@ -189,15 +161,9 @@ leviathan_cargo_hold = darkroom {
 
	nam = "leviathan_cargo_hold";
 
	disp = "Левиафан, грузовой отсек";
 
	leviathan = true;
 
	dsc_lit = [[
 
		Вы находитесь в грузовом отсеке Левиафана
 
	]];
 
	dsc_halflit = [[
 
		Вы находитесь в грузовом отсеке Левиафана
 
	]];
 
	dsc_dark = [[
 
		Вы находитесь в грузовом отсеке Левиафана
 
	]];
 
	dsc_lit = [[Вы находитесь в грузовом отсеке Левиафана. ]];
 
	dsc_halflit = [[Вы находитесь в грузовом отсеке Левиафана. ]];
 
	dsc_dark = [[Вы находитесь в грузовом отсеке Левиафана. ]];
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
	};
 
@@ -210,16 +176,9 @@ leviathan_wardroom = darkroom {
 
	nam = "leviathan_wardroom";
 
	disp = "Левиафан, кают-компания";
 
	leviathan = true;
 
	dsc_lit = [[
 
		Вы находитесь в кают-компании Левиафана. Просторная комната, в центре которой укреплен массивный металлический стол. 
 
		Из машинного отсека доносится гул двигателей. Яркий свет электрических ламп освещает помещение. 
 
	]];
 
	dsc_halflit = [[
 
		Вы находитесь в кают-компании Левиафана. Просторная комната, в центре которой укреплен массивный металлический стол. 
 
	]];
 
	dsc_dark = [[
 
		Вы находитесь в кают-компании Левиафана. В темноте вы ничего не моежет разглядеть
 
	]];
 
	dsc_lit = [[Вы находитесь в кают-компании Левиафана. Просторная комната, в центре которой укреплен массивный металлический стол. Из машинного отсека доносится гул двигателей. Яркий свет электрических ламп освещает помещение. ]];
 
	dsc_halflit = [[Вы находитесь в кают-компании Левиафана. Просторная комната, в центре которой укреплен массивный металлический стол. ]];
 
	dsc_dark = [[Вы находитесь в кают-компании Левиафана. В темноте вы ничего не моежет разглядеть. ]];
 
	way = {
 
		kh_vroom("В рубку", "leviathan_wheelhouse", 1);
 
		kh_vroom("В шлюз", "leviathan_airlock", 1);
 
@@ -237,15 +196,9 @@ leviathan_engines = darkroom {
 
	nam = "leviathan_engines";
 
	disp = "Левиафан, машинное отделение";
 
	leviathan = true;
 
	dsc_lit = [[
 
		Вы находитесь в машинном отделении Левиафана. 
 
	]];
 
	dsc_halflit = [[
 
		Вы находитесь в машинном отделении Левиафана. 
 
	]];
 
	dsc_dark = [[
 
		Вы находитесь в машинном отделении Левиафана. В темноте вы ничего не можете разглядеть
 
	]];
 
	dsc_lit = [[Вы находитесь в машинном отделении Левиафана. ]];
 
	dsc_halflit = [[Вы находитесь в машинном отделении Левиафана. ]];
 
	dsc_dark = [[Вы находитесь в машинном отделении Левиафана. В темноте вы ничего не можете разглядеть. ]];
 
	-- Равномерный гул электрических двигателей сообщает о полной готовности субмарины. 
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
@@ -260,9 +213,7 @@ leviathan_engines = darkroom {
 
 
leviathan_engineering_sensors = obj {
 
	nam = "leviathan_engineering_sensors";
 
	dsc = [[
 
		На стене над батареей расположена {панель} со множеством лампочек.
 
	]];
 
	dsc = [[На стене над батареей расположена {панель} со множеством лампочек. ]];
 
	act = function(s)
 
		if (submarine_leviathan.battery) then
 
			pr("На панели горят следующие лампочки: ");
 
@@ -288,31 +239,21 @@ leviathan_battery = obj {
 
	nam = "leviathan_battery";
 
	dsc = function(s)
 
		if (s.opened) then
 
			return [[
 
				Значительную часть помещения занимает {блок аккумуляторных батарей}. Крышка блока открыта и вы видите, что электроды подверглись сильной коррозии за долгое время неиспользования.
 
			]];
 
			return [[Значительную часть помещения занимает {блок аккумуляторных батарей}. Крышка блока открыта и вы видите, что электроды подверглись сильной коррозии за долгое время неиспользования. ]];
 
		else
 
			return [[
 
				Значительную часть помещения занимает {блок аккумуляторных батарей}. Крышка блока закрыта.
 
			]];
 
			return [[Значительную часть помещения занимает {блок аккумуляторных батарей}. Крышка блока закрыта. ]];
 
		end;
 
	end;
 
	act = function(s)
 
		if (s.opened) then
 
			s.opened = false;
 
			return [[
 
				Вы возвращаете металлический лист, закрывающий батарею, на место.
 
			]];
 
			return [[Вы возвращаете металлический лист, закрывающий батарею, на место. ]];
 
		else
 
			if (not submarine_leviathan.battery) then
 
				s.opened = true;
 
				return [[
 
					Вы сдвигаете металлический лист, закрывающий батарею в сторону, получая доступ к ней.
 
				]];
 
				return [[Вы сдвигаете металлический лист, закрывающий батарею в сторону, получая доступ к ней. ]];
 
			else
 
				return [[
 
					Незачем это трогать. 
 
				]];
 
				return [[Незачем это трогать. ]];
 
			end;
 
		end;
 
	end;
 
@@ -321,9 +262,7 @@ leviathan_battery = obj {
 
			remove(item_electrodes, pl);
 
			submarine_leviathan.battery = true;
 
			s.opened = false;
 
			return [[
 
				Вы заменяете электроды. Теперь аккумулятор готов к работе. Вы возвращаете металлический лист, закрывающий батарею, на место.
 
			]];
 
			return [[Вы заменяете электроды. Теперь аккумулятор готов к работе. Вы возвращаете металлический лист, закрывающий батарею, на место. ]];
 
		else
 
			return false;
 
		end;
 
@@ -336,13 +275,9 @@ leviathan_breaker = obj {
 
	nam = "leviathan_breaker";
 
	dsc = function(s)
 
		if (submarine_leviathan.power_on) then
 
			return [[
 
				Рядом с батареей укреплен {рубильник}. Сейчас он включен.
 
			]];
 
			return [[Рядом с батареей укреплен {рубильник}. Сейчас он включен. ]];
 
		else
 
			return [[
 
				Рядом с батареей укреплен {рубильник}. Сейчас он выключен.
 
			]];
 
			return [[Рядом с батареей укреплен {рубильник}. Сейчас он выключен. ]];
 
		end;
 
	end;
 
	act = function(s)
 
@@ -350,11 +285,11 @@ leviathan_breaker = obj {
 
			submarine_leviathan.power_on = false;
 
			-- TODO включать свет по всему Левиафану, если восстановлены разрывы цепи и установлена батарея
 
			-- TODO включать двигатель если установлена батарея
 
			pr([[Вы выключаете рубильник]]);
 
			pr([[Вы выключаете рубильник. ]]);
 
		else
 
			submarine_leviathan.power_on = true;
 
			-- TODO включать двигатель если установлена батарея
 
			pr([[Вы включаете рубильник]]);
 
			pr([[Вы включаете рубильник. ]]);
 
			if (submarine_leviathan.battery and submarine_leviathan.circuit_breaks == 0) then
 
				leviathan_airlock.has_light = true;
 
				leviathan_wardroom.has_light = true;
 
@@ -381,15 +316,9 @@ leviathan_lower_deck = darkroom {
 
	nam = "leviathan_lower_deck";
 
	disp = "Левиафан, нижняя палуба";
 
	leviathan = true;
 
	dsc_lit = [[
 
		Вы находитесь на нижней палубе Левиафана. Здесь нет иллюминаторов. Повсюду раскиданы обломки металла, неизвестно откуда взявшиеся. В передней части помещения вы видите несколько отверстий для зарядки торпедных аппаратов.
 
	]];
 
	dsc_halflit = [[
 
		Вы находитесь на нижней палубе Левиафана. Здесь нет иллюминаторов. Повсюду раскиданы обломки металла, неизвестно откуда взявшиеся. В передней части помещения вы видите несколько отверстий для зарядки торпедных аппаратов.
 
	]];
 
	dsc_dark = [[
 
		Вы находитесь на нижней палубе Левиафана. Здесь нет иллюминаторов. В темноте вы ничего не можете разглядеть. 
 
	]];
 
	dsc_lit = [[Вы находитесь на нижней палубе Левиафана. Здесь нет иллюминаторов. Повсюду раскиданы обломки металла, неизвестно откуда взявшиеся. В передней части помещения вы видите несколько отверстий для зарядки торпедных аппаратов. ]];
 
	dsc_halflit = [[Вы находитесь на нижней палубе Левиафана. Здесь нет иллюминаторов. Повсюду раскиданы обломки металла, неизвестно откуда взявшиеся. В передней части помещения вы видите несколько отверстий для зарядки торпедных аппаратов. ]];
 
	dsc_dark = [[Вы находитесь на нижней палубе Левиафана. Здесь нет иллюминаторов. В темноте вы ничего не можете разглядеть. ]];
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
		kh_vroom("К системе жизнеобеспечения", "leviathan_life_support", 1);
 
@@ -404,15 +333,9 @@ leviathan_life_support = darkroom {
 
	disp = "Левиафан, система жизнеобеспечения";
 
	leviathan = true;
 
	--TODO прочитать, разобраться как подобный отсек мог бы выглядеть и описать его как подобает
 
	dsc_lit = [[
 
		Вы находитесь в отсеке систем жизнеобеспечения "Левиафана". Это важнейший отсек корабля, в котором расположено все необходимое для обеспечения команды воздухом для дыхания в течение нескольких месяцев.
 
	]];
 
	dsc_halflit = [[
 
		Вы находитесь в отсеке систем жизнеобеспечения "Левиафана". Это важнейший отсек корабля, в котором расположено все необходимое для обеспечения команды воздухом для дыхания в течение нескольких месяцев.
 
	]];
 
	dsc_dark = [[
 
		Вы находитесь в отсеке систем жизнеобеспечения "Левиафана". В темноте вы ничего не можете разглядеть. 
 
	]];
 
	dsc_lit = [[Вы находитесь в отсеке систем жизнеобеспечения "Левиафана". Это важнейший отсек корабля, в котором расположено все необходимое для обеспечения команды воздухом для дыхания в течение нескольких месяцев. ]];
 
	dsc_halflit = [[Вы находитесь в отсеке систем жизнеобеспечения "Левиафана". Это важнейший отсек корабля, в котором расположено все необходимое для обеспечения команды воздухом для дыхания в течение нескольких месяцев. ]];
 
	dsc_dark = [[Вы находитесь в отсеке систем жизнеобеспечения "Левиафана". В темноте вы ничего не можете разглядеть. ]];
 
	way = {
 
		kh_vroom("Назад", "leviathan_lower_deck", 1);
 
	};
 
@@ -428,11 +351,9 @@ leviathan_airtanks = obj {
 
	dsc = function(s)
 
		local percent = submarine_leviathan.air_level / 432000 * 100;
 
		if (percent < 1) then
 
			return [[
 
				Большую часть помещения занимают огромные {кислородные баллоны}. Толстые стенки из прочного сплава способны выдержать огромное давление. Судя по показаниям приборов, баллоны пусты. ]]
 
			return [[Большую часть помещения занимают огромные {кислородные баллоны}. Толстые стенки из прочного сплава способны выдержать огромное давление. Судя по показаниям приборов, баллоны пусты. ]]
 
		else
 
			return [[
 
				Большую часть помещения занимают огромные {кислородные баллоны}. Толстые стенки из прочного сплава способны выдержать огромное давление. Судя по показаниям приборов, баллоны заполнены на ]] .. tostring(math.floor(percent + 0.5)) .. "%. ";
 
			return [[Большую часть помещения занимают огромные {кислородные баллоны}. Толстые стенки из прочного сплава способны выдержать огромное давление. Судя по показаниям приборов, баллоны заполнены на ]] .. tostring(math.floor(percent + 0.5)) .. "%. ";
 
		end;
 
	end;
 
	seen_level = 1;
 
@@ -440,9 +361,7 @@ leviathan_airtanks = obj {
 
 
leviathan_airregen = obj {
 
	nam = "leviathan_airregen";
 
	dsc = [[ 
 
		{Установка регенерации воздуха} сейчас находится в плачевном состоянии - часть деталей отсутствуют, еще некоторые поломаны. 
 
	]];
 
	dsc = [[{Установка регенерации воздуха} сейчас находится в плачевном состоянии - часть деталей отсутствуют, еще некоторые поломаны. ]];
 
	seen_level = 1;
 
};
 
 
@@ -458,9 +377,7 @@ leviathan_wheelhouse = darkroom {
 
			view = where(submarine_leviathan).view;
 
		end;
 
		
 
		return [[
 
			Вы находитесь в рулевой рубке Левиафана. Три огромных иллюминатора дают превосходный обзор. 
 
		]] .. (view);
 
		return [[Вы находитесь в рулевой рубке Левиафана. Три огромных иллюминатора дают превосходный обзор. ]] .. (view);
 
	end;
 
	dsc_halflit = function(s)
 
		local view = "";
 
@@ -470,9 +387,7 @@ leviathan_wheelhouse = darkroom {
 
			view = where(submarine_leviathan).view;
 
		end;
 
		
 
		return [[
 
			Вы находитесь в рулевой рубке Левиафана. Три огромных иллюминатора дают превосходный обзор. 
 
		]] .. (view);
 
		return [[Вы находитесь в рулевой рубке Левиафана. Три огромных иллюминатора дают превосходный обзор. ]] .. (view);
 
	end;
 
	dsc_dark = function(s)
 
		local view = "";
 
@@ -482,9 +397,7 @@ leviathan_wheelhouse = darkroom {
 
			view = where(submarine_leviathan).view;
 
		end;
 
		
 
		return [[
 
			Вы находитесь в рулевой рубке Левиафана. В темноте вы ничего не можете разглядеть, кроме трех огромных иллюминаторов. 
 
		]] .. (view);
 
		return [[Вы находитесь в рулевой рубке Левиафана. В темноте вы ничего не можете разглядеть, кроме трех огромных иллюминаторов. ]] .. (view);
 
	end;
 
	way = {
 
		kh_vroom("В кают-компанию", "leviathan_wardroom", 2);
 
@@ -500,9 +413,7 @@ leviathan_wheelhouse = darkroom {
 
 
leviathan_handwheel = obj {
 
	nam = "leviathan_handwheel";
 
	dsc = [[
 
		Перед вами расположен {штурвал}. Рядом с ним расположено несколько рычагов. 
 
	]];
 
	dsc = [[Перед вами расположен {штурвал}. Рядом с ним расположено несколько рычагов. ]];
 
	act = function(s)
 
		if (atlantis_found and submarine_leviathan.air_level > 400000 and submarine_leviathan.circuit_breaks == 0 and submarine_leviathan.power_on) then
 
			--walkin("demo_end");
 
@@ -513,21 +424,13 @@ leviathan_handwheel = obj {
 
				walkin('leviathan_dlg');
 
			end;
 
		elseif (not submarine_leviathan.power_on) then
 
			return [[
 
				Без электричества _"Левиафан"_ не сдвинется с места. 
 
			]];
 
			return [[Без электричества _"Левиафан"_ не сдвинется с места. ]];
 
		elseif (not atlantis_found) then
 
			return [[
 
				Вы не знаете, куда плыть. 
 
			]];
 
			return [[Вы не знаете, куда плыть. ]];
 
		elseif (submarine_leviathan.air_level <= 400000) then
 
			return [[
 
				Без воздуха вы далеко не уплывете. 
 
			]];
 
			return [[Без воздуха вы далеко не уплывете. ]];
 
		elseif (submarine_leviathan.circuit_breaks > 0) then
 
			return [[
 
				В темноте вы не можете управлять кораблем. 
 
			]];
 
			return [[В темноте вы не можете управлять кораблем. ]];
 
		end;
 
	end;
 
};
 
@@ -536,27 +439,19 @@ leviathan_airpump_control = obj {
 
	nam = "leviathan_airpump_control";
 
	dsc = function(s)
 
		if (submarine_leviathan.airpump) then
 
			return [[
 
				Один из них отвечает за управление {воздушными насосами} и находится сейчас во включенном состоянии. 
 
			]];
 
			return [[Один из них отвечает за управление {воздушными насосами} и находится сейчас во включенном состоянии. ]];
 
		else
 
			return [[
 
				Один из них отвечает за управление {воздушными насосами} и находится сейчас в выключенном состоянии. 
 
			]];
 
			return [[Один из них отвечает за управление {воздушными насосами} и находится сейчас в выключенном состоянии.  ]];
 
		end;
 
	end;
 
	act = function(s)
 
		if (submarine_leviathan.airpump) then
 
			submarine_leviathan.airpump = false;
 
			return [[
 
				Вы выключаете воздушные насосы. 
 
			]];
 
			return [[Вы выключаете воздушные насосы. ]];
 
		else
 
			lifeon(s);
 
			submarine_leviathan.airpump = true;
 
			return [[
 
				Вы включаете воздушные насосы. 
 
			]];
 
			return [[Вы включаете воздушные насосы. ]];
 
		end;
 
	end;
 
	life = function(s)
 
@@ -564,9 +459,7 @@ leviathan_airpump_control = obj {
 
			if (submarine_leviathan.airpump and submarine_leviathan.battery) then
 
				submarine_leviathan.air_level = submarine_leviathan.air_level + 250;
 
				if (submarine_leviathan.air_level > 432000) then submarine_leviathan.air_level = 432000;
 
				pr([[
 
					Вы слышите гул работающих насосов. 
 
				]]);
 
				pr([[Вы слышите гул работающих насосов. ]]);
 
				end;
 
			end;
 
		end;
 
@@ -576,17 +469,13 @@ leviathan_airpump_control = obj {
 
 
leviathan_controls = obj {
 
	nam = "leviathan_controls";
 
	dsc = [[
 
		Остальные {рычаги} используются для управления движением субмарины. 
 
	]];
 
	dsc = [[Остальные {рычаги} используются для управления движением субмарины. ]];
 
	seen_level = 1;
 
};
 
 
leviathan_wheelhouse_sensors = obj {
 
	nam = "leviathan_wheelhouse_sensors";
 
	dsc = [[
 
		Чуть ниже рычагов находится небольшая {панель} с лампочками и стрелками каких-то приборов. 
 
	]];
 
	dsc = [[Чуть ниже рычагов находится небольшая {панель} с лампочками и стрелками каких-то приборов. ]];
 
	act = function(s)
 
		if (submarine_leviathan.battery) then
 
			pr("На панели горят следующие лампочки: ");
 
@@ -612,36 +501,24 @@ leviathan_wheelhouse_sensors = obj {
 
	seen_level = 1;
 
};
 
 
leviathan_wiring_dsc = [[
 
	Под потолком висят какие-то {провода}. 
 
]];
 
leviathan_wiring_dsc = [[Под потолком висят какие-то {провода}. ]];
 
 
leviathan_wiring_act = function(s)
 
	if (submarine_leviathan.power_on and submarine_leviathan.battery) then
 
		return [[
 
			Возможно, лучше отключить электричество, прежде чем копаться в проводах. 
 
		]];
 
		return [[Возможно, лучше отключить электричество, прежде чем копаться в проводах. ]];
 
	end;
 
	if (s.state == 0) then
 
		return [[
 
			Некоторые провода разорваны.
 
		]];
 
		return [[Некоторые провода разорваны. ]];
 
	elseif (s.state == 1) then
 
		return [[
 
			Некоторые провода перемотаны изолентой.
 
		]];
 
		return [[Некоторые провода перемотаны изолентой. ]];
 
	else
 
		return [[
 
			Провода в порядке. 
 
		]];
 
		return [[Провода в порядке. ]];
 
	end;
 
end;
 
 
leviathan_wiring_used = function(s, o)
 
	if (submarine_leviathan.power_on and submarine_leviathan.battery) then
 
		return [[
 
			Возможно, лучше отключить электричество, прежде чем копаться в проводах. 
 
		]];
 
		return [[Возможно, лучше отключить электричество, прежде чем копаться в проводах. ]];
 
	end;
 
	if (o == item_ducttape and s.state == 0) then
 
		s.state = 1;
 
@@ -652,72 +529,84 @@ leviathan_wiring_used = function(s, o)
 
				-- TODO если игрок ТУП pr("Скорее всего, это был последний разрыв. Можно проверять. ");
 
			end;
 
		end;
 
		return [[
 
			Вы соединяете провода и заматываете их изолентой. 
 
		]];
 
		return [[Вы соединяете провода и заматываете их изолентой. ]];
 
	end;
 
end;
 
 
leviathan_wheelhouse_wiring = obj {
 
    var {
 
        state = 2;
 
    };
 
	nam = "leviathan_wheelhouse_wiring";
 
	dsc = leviathan_wiring_dsc;
 
	act = leviathan_wiring_act;
 
	used = leviathan_wiring_used;
 
	state = 2;
 
	seen_level = 1;
 
};
 
 
leviathan_wardroom_wiring = obj {
 
    var {
 
        state = 2;
 
    };
 
	nam = "leviathan_wardroom_wiring";
 
	dsc = leviathan_wiring_dsc;
 
	act = leviathan_wiring_act;
 
	used = leviathan_wiring_used;
 
	state = 2;
 
	seen_level = 1;
 
};
 
 
leviathan_engineering_wiring = obj {
 
    var {
 
        state = 2;
 
    };
 
	nam = "leviathan_engineering_wiring";
 
	dsc = leviathan_wiring_dsc;
 
	act = leviathan_wiring_act;
 
	used = leviathan_wiring_used;
 
	state = 2;
 
	seen_level = 1;
 
};
 
 
leviathan_cargo_wiring = obj {
 
    var {
 
        state = 2;
 
    };
 
	nam = "leviathan_cargo_wiring";
 
	dsc = leviathan_wiring_dsc;
 
	act = leviathan_wiring_act;
 
	used = leviathan_wiring_used;
 
	state = 2;
 
	seen_level = 1;
 
};
 
 
leviathan_corridor_wiring = obj {
 
    var {
 
        state = 2;
 
    };
 
	nam = "leviathan_corridor_wiring";
 
	dsc = leviathan_wiring_dsc;
 
	act = leviathan_wiring_act;
 
	used = leviathan_wiring_used;
 
	state = 2;
 
	seen_level = 1;
 
};
 
 
leviathan_lower_wiring = obj {
 
    var {
 
        state = 2;
 
    };
 
	nam = "leviathan_lower_wiring";
 
	dsc = leviathan_wiring_dsc;
 
	act = leviathan_wiring_act;
 
	used = leviathan_wiring_used;
 
	state = 2;
 
	seen_level = 1;
 
};
 
 
leviathan_life_wiring = obj {
 
    var {
 
        state = 2;
 
    };
 
	nam = "leviathan_life_wiring";
 
	dsc = leviathan_wiring_dsc;
 
	act = leviathan_wiring_act;
 
	used = leviathan_wiring_used;
 
	state = 2;
 
	seen_level = 1;
 
};
 
 
@@ -742,51 +631,9 @@ leviathan_dlg = dlg {
 
			view = where(submarine_leviathan).view;
 
		end;
 
		
 
		return [[
 
			Вы находитесь в рубке Левиафана перед штурвалом. 
 
			Отсюда вы можете направиться куда-нибудь. 
 
			Яркий свет электрических ламп освещает помещение. ^
 
		]] .. (view);
 
		return [[Вы находитесь в рубке Левиафана перед штурвалом. Отсюда вы можете направиться куда-нибудь. Яркий свет электрических ламп освещает помещение. ]] .. (view);
 
	end;
 
	update_options = function()
 
		--[[leviathan_dlg:poff(10,11,12,13,14);
 
		if (where(submarine_leviathan).navigatable) then 
 
			leviathan_dlg:poff(1,2,3,4,5);
 
			if (where(submarine_leviathan).south) then 
 
				pon(10);
 
			end;
 
			if (where(submarine_leviathan).north) then 
 
				pon(11);
 
			end;
 
			if (where(submarine_leviathan).east) then 
 
				pon(12);
 
			end;
 
			if (where(submarine_leviathan).west) then 
 
				pon(13);
 
			end;
 
			if (where(submarine_leviathan).gate) then 
 
				pon(14);
 
			end;
 
		else
 
			if (atlantis_found) then
 
				leviathan_dlg:pon(1);
 
			end;
 
			--leviathan_dlg:pon(1, 2, 3, 4);
 
			leviathan_dlg:poff(5);
 
			if (where(submarine_leviathan) == atlantis_dock) then	
 
				leviathan_dlg:poff(1);
 
			end;
 
			if (where(submarine_leviathan) == navjiarr_settlement) then
 
				leviathan_dlg:poff(2);
 
			end;
 
			if (where(submarine_leviathan) == navjiarr_hostile_settlement) then
 
				leviathan_dlg:poff(3);
 
			end;
 
			if (where(submarine_leviathan) == first_city_entrance) then
 
				leviathan_dlg:poff(4);
 
				leviathan_dlg:pon(5);
 
			end;
 
		end;]]
 
		leviathan_dlg:poff("atlantis", "old_temple", "iraaphaanotrr", "iraaphaanotrr_temple", "dypatreanotrr", "dypatreanotrr_temple");
 
		if (atlantis_found and where(submarine_leviathan) ~= atl_aqua_leviathan_dock) then
 
			leviathan_dlg:pon("atlantis");
 
@@ -849,49 +696,6 @@ leviathan_dlg = dlg {
 
			move(submarine_leviathan, "ctt_dyp_temple_entrance");
 
			leviathan_dlg:update_options();
 
		end},
 
		--[[{always = "true", "Вперед, в город", function()
 
			if (first_city_entrance.open) then
 
				return [ [
 
					Движимый вашей рукой, Левиафан вплывает в ворота. Оказавшись среди светящихся стен древнего города, вы отключаете прожектор.
 
				] ];
 
			else
 
				return [ [
 
					Вы не рискуете протаранить ворота, простоявшие не одно тысячелетие.
 
				] ];
 
			end;
 
		end,
 
		function()
 
			if (first_city_entrance.open) then
 
				move(submarine_leviathan, "first_city_outer_south");
 
				leviathan_dlg:update_options();
 
			end;
 
		end;
 
		},]]
 
		--[[{10, always = "true", "На юг", "", function()
 
			move(submarine_leviathan, where(submarine_leviathan).south);
 
			leviathan_dlg:update_options();
 
			return where(submarine_leviathan).view;
 
		end;};
 
		{11, always = "true", "На север", "", function()
 
			move(submarine_leviathan, where(submarine_leviathan).north);
 
			leviathan_dlg:update_options();
 
			return where(submarine_leviathan).view;
 
		end;};
 
		{12, always = "true", "На восток", "", function()
 
			move(submarine_leviathan, where(submarine_leviathan).east);
 
			leviathan_dlg:update_options();
 
			return where(submarine_leviathan).view;
 
		end;};
 
		{13, always = "true", "На запад", "", function()
 
			move(submarine_leviathan, where(submarine_leviathan).west);
 
			leviathan_dlg:update_options();
 
			return where(submarine_leviathan).view;
 
		end;};
 
		{14, always = "true", "В ворота", "", function()
 
			move(submarine_leviathan, where(submarine_leviathan).gate);
 
			leviathan_dlg:update_options();
 
			return where(submarine_leviathan).view;
 
		end;};]]
 
		{always = "true", "Назад", "", function()
 
			back();
 
		end}
 
@@ -901,9 +705,7 @@ leviathan_dlg = dlg {
 
phone_wheelhouse = obj {
 
	nam = "phone_wheelhouse";
 
	disp = "Телефон";
 
	dsc = [[
 
		Рядом со штурвалом установлен {телефонный аппарат} для связи в пределах субмарины. ^
 
	]];
 
	dsc = [[Рядом со штурвалом установлен {телефонный аппарат} для связи в пределах субмарины. ]];
 
	act = function(s)
 
		walkin(phone_dlg);
 
	end;
 
@@ -913,9 +715,7 @@ phone_wheelhouse = obj {
 
phone_cabin = obj {
 
	nam = "phone_cabin";
 
	disp = "Телефон";
 
	dsc = [[
 
		На столе установлен {телефонный аппарат} для связи в пределах субмарины. ^
 
	]];
 
	dsc = [[На столе установлен {телефонный аппарат} для связи в пределах субмарины. ]];
 
	act = function(s)
 
		walkin(phone_dlg);
 
	end;
 
@@ -925,9 +725,7 @@ phone_cabin = obj {
 
phone_wardroom = obj {
 
	nam = "phone_wardroom";
 
	disp = "Телефон";
 
	dsc = [[
 
		На столе, рядом с креслом командира установлен {телефонный аппарат} для связи в пределах субмарины. ^
 
	]];
 
	dsc = [[На столе, рядом с креслом командира установлен {телефонный аппарат} для связи в пределах субмарины. ]];
 
	act = function(s)
 
		walkin(phone_dlg);
 
	end;
 
@@ -938,9 +736,7 @@ phone_dlg = dlg {
 
	nam = "phone_dlg";
 
	disp = "Телефон";
 
	hideinv = true;
 
	dsc = [[
 
		Вы снимаете трубку и можете вызвать кого-нибудь
 
	]];
 
	dsc = [[Вы снимаете трубку и можете вызвать кого-нибудь. ]];
 
	entered = function(s)
 
		poff("phaetlarr", "learr", "radcliffe", "wright", "aikerjarr", "anna");
 
		for i = 1, #pl.party do
 
@@ -948,9 +744,7 @@ phone_dlg = dlg {
 
		end;
 
	end;
 
	phr = {
 
		{ tag = "aikerjarr", always = true, "Аикерьярр", [[
 
			Аикерьярр не берет трубку
 
		]]},
 
		{ tag = "aikerjarr", always = true, "Аикерьярр", [[Аикерьярр не берет трубку. ]]},
 
		{ tag = "phaetlarr", always = true, "Фаэтларр", code = [[walkin(phaetlarr_phone_dlg)]]},
 
		{ tag = "learr", always = true, "Леарр", code = [[walkin(learr_phone_dlg)]]},
 
		{ tag = "radcliffe", always = true, "Уолтер Рэдклифф", code = [[walkin(radcliffe_phone_dlg)]]},
0 comments (0 inline, 0 general)