|
@@ -359,13 +359,13 @@ leviathan_wardroom = darkroom {
|
|
|
has_light = function(s)
|
|
|
return submarine_leviathan.power_on and submarine_leviathan.battery;
|
|
|
end;
|
|
|
disp = "Левиафан, кают-компания";
|
|
|
leviathan = true;
|
|
|
dsc_lit = [[В центре просторной кают-компании Левиафана укреплен массивный деревянный стол. Электрические лампы, укрепленные на потолке над столом и на стенах излучают яркий свет. ]];
|
|
|
dsc_halflit = [[В слабом свете лампы, вы с трудом различаете очертания предметов. Судя по всему, вы находитесь в кают-компании. В центре установлен массивный стол, вокруг которого стоят несколько стульев. ]];
|
|
|
dsc_halflit = [[В слабом свете лампы вы с трудом различаете очертания предметов. Судя по всему, вы находитесь в кают-компании. В центре установлен массивный стол, вокруг которого стоят несколько стульев. ]];
|
|
|
dsc_dark = [[Кают-компания погружена во мрак и вы совсем ничего не видите. ]];
|
|
|
way = {
|
|
|
kh_vroom("В рубку", "leviathan_wheelhouse", 1);
|
|
|
kh_vroom("В шлюз", "leviathan_airlock", 1);
|
|
|
kh_vroom("В коридор", "leviathan_corridor", 1);
|
|
|
kh_vroom("В грузовой отсек", "leviathan_cargo_hold", 1):disable();
|
|
@@ -381,30 +381,30 @@ leviathan_engines = darkroom {
|
|
|
nam = "leviathan_engines";
|
|
|
has_light = function(s)
|
|
|
return submarine_leviathan.power_on and submarine_leviathan.battery;
|
|
|
end;
|
|
|
disp = "Левиафан, машинное отделение";
|
|
|
leviathan = true;
|
|
|
dsc_lit = [[Вы находитесь в машинном отделении Левиафана. ]];
|
|
|
dsc_halflit = [[Вы находитесь в машинном отделении Левиафана. ]];
|
|
|
dsc_dark = [[Вы находитесь в машинном отделении Левиафана. В темноте вы ничего не можете разглядеть. ]];
|
|
|
dsc_lit = [[Вы стоите на небольшой металлической платформе посреди достаточно большого помещения. Вверху и внизу тянутся какие-то трубы. Слева и справа от вас расположены механизмы, приводящие субмарину в движение. Единственная лампа, расположенная над входом, дает достаточно света, чтобы можно было осмотреться. ]];
|
|
|
dsc_halflit = [[В слабом свете лампы вы с трудом различаете очертания предметов. Вы стоите на небольшой металлической платформе посреди достаточно большого помещения. Вверху и внизу тянутся какие-то трубы. Слева и справа от вас расположены механизмы, приводящие субмарину в движение. ]];
|
|
|
dsc_dark = [[Машинный отсек Левиафана погружен во мрак и вы совсем ничего не видите. ]];
|
|
|
-- Равномерный гул электрических двигателей сообщает о полной готовности субмарины.
|
|
|
way = {
|
|
|
kh_vroom("В коридор", "leviathan_corridor", 1);
|
|
|
};
|
|
|
obj = {
|
|
|
'leviathan_battery';
|
|
|
'leviathan_battery';
|
|
|
'leviathan_breaker';
|
|
|
'leviathan_engineering_sensors';
|
|
|
'leviathan_engineering_wiring';
|
|
|
};
|
|
|
};
|
|
|
|
|
|
leviathan_engineering_sensors = obj {
|
|
|
nam = "leviathan_engineering_sensors";
|
|
|
dsc = [[На стене над батареей расположена {панель} со множеством лампочек. ]];
|
|
|
dsc = [[Рядом с батареей расположена {панель} со множеством лампочек. ]];
|
|
|
act = function(s)
|
|
|
if (submarine_leviathan.battery) then
|
|
|
pr("На панели горят следующие лампочки: ");
|
|
|
pr("батарея работает");
|
|
|
if (submarine_leviathan.power_on) then
|
|
|
pr(", питание включено");
|
|
@@ -424,15 +424,15 @@ leviathan_engineering_sensors = obj {
|
|
|
};
|
|
|
|
|
|
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 [[Вы возвращаете крышку блока батарей на место. ]];
|
|
@@ -504,15 +504,15 @@ leviathan_lower_deck = darkroom {
|
|
|
nam = "leviathan_lower_deck";
|
|
|
has_light = function(s)
|
|
|
return submarine_leviathan.power_on and submarine_leviathan.battery;
|
|
|
end;
|
|
|
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);
|
|
|
};
|
|
|
obj = {
|
|
|
"leviathan_lower_wiring";
|
|
@@ -523,16 +523,15 @@ leviathan_life_support = darkroom {
|
|
|
nam = "leviathan_life_support";
|
|
|
has_light = function(s)
|
|
|
return submarine_leviathan.power_on and submarine_leviathan.battery;
|
|
|
end;
|
|
|
disp = "Левиафан, система жизнеобеспечения";
|
|
|
leviathan = true;
|
|
|
--TODO прочитать, разобраться как подобный отсек мог бы выглядеть и описать его как подобает
|
|
|
dsc_lit = [[Вы находитесь в отсеке систем жизнеобеспечения "Левиафана". Это важнейший отсек корабля, в котором расположено все необходимое для обеспечения команды воздухом для дыхания в течение нескольких месяцев. ]];
|
|
|
dsc_halflit = [[Вы находитесь в отсеке систем жизнеобеспечения "Левиафана". Это важнейший отсек корабля, в котором расположено все необходимое для обеспечения команды воздухом для дыхания в течение нескольких месяцев. ]];
|
|
|
dsc_dark = [[Вы находитесь в отсеке систем жизнеобеспечения "Левиафана". В темноте вы ничего не можете разглядеть. ]];
|
|
|
dsc_lit = [[Электрическая лампа освещает важнейший отсек корабля. Здесь расположено все необходимое для обеспечения команды воздухом для дыхания в течение нескольких месяцев. ]];
|
|
|
dsc_halflit = [[Слабый свет лампы освещает важнейший отсек корабля. Здесь расположено все необходимое для обеспечения команды воздухом для дыхания в течение нескольких месяцев. ]];
|
|
|
dsc_dark = [[Отсек погружен во мрак и вы не видите совсем ничего. ]];
|
|
|
way = {
|
|
|
kh_vroom("Назад", "leviathan_lower_deck", 1);
|
|
|
};
|
|
|
obj = {
|
|
|
'leviathan_airtanks';
|
|
|
'leviathan_airregen';
|
|
@@ -542,15 +541,15 @@ leviathan_life_support = darkroom {
|
|
|
|
|
|
leviathan_airtanks = obj {
|
|
|
nam = "leviathan_airtanks";
|
|
|
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;
|
|
|
};
|
|
|
|
|
|
leviathan_airregen = obj {
|
|
@@ -571,33 +570,33 @@ leviathan_wheelhouse = darkroom {
|
|
|
if (type(where(submarine_leviathan).view) == "function") then
|
|
|
view = where(submarine_leviathan):view();
|
|
|
else
|
|
|
view = where(submarine_leviathan).view;
|
|
|
end;
|
|
|
|
|
|
return [[Вы находитесь в рулевой рубке Левиафана. Три огромных иллюминатора дают превосходный обзор. ]] .. (view);
|
|
|
return [[Небольшое помещение в передней части субмарины освещено ярким светом электрических ламп. Через три огромных иллюминатора вы можете увидеть происходящее снаружи субмарины. ]] .. (view);
|
|
|
end;
|
|
|
dsc_halflit = function(s)
|
|
|
local view = "";
|
|
|
if (type(where(submarine_leviathan).view) == "function") then
|
|
|
view = where(submarine_leviathan):view();
|
|
|
else
|
|
|
view = where(submarine_leviathan).view;
|
|
|
end;
|
|
|
|
|
|
return [[Вы находитесь в рулевой рубке Левиафана. Три огромных иллюминатора дают превосходный обзор. ]] .. (view);
|
|
|
return [[Небольшое помещение в передней части субмарины освещено слабым светом вашей лампы. Через три огромных иллюминатора вы можете увидеть происходящее снаружи субмарины. ]] .. (view);
|
|
|
end;
|
|
|
dsc_dark = function(s)
|
|
|
local view = "";
|
|
|
if (type(where(submarine_leviathan).view) == "function") then
|
|
|
view = where(submarine_leviathan):view();
|
|
|
else
|
|
|
view = where(submarine_leviathan).view;
|
|
|
end;
|
|
|
|
|
|
return [[Вы находитесь в рулевой рубке Левиафана. В темноте вы ничего не можете разглядеть, кроме трех огромных иллюминаторов. ]] .. (view);
|
|
|
return [[Небольшое помещение в передней части субмарины не освещено. В темноте вы ничего не можете разглядеть. Через три огромных иллюминатора вы можете увидеть происходящее снаружи субмарины. ]] .. (view);
|
|
|
end;
|
|
|
way = {
|
|
|
kh_vroom("В кают-компанию", "leviathan_wardroom", 2);
|
|
|
};
|
|
|
obj = {
|
|
|
'leviathan_handwheel';
|
|
@@ -901,33 +900,51 @@ leviathan_dlg = dlg {
|
|
|
|
|
|
phone_wheelhouse = obj {
|
|
|
nam = "phone_wheelhouse";
|
|
|
disp = "Телефон";
|
|
|
dsc = [[Рядом со штурвалом установлен {телефонный аппарат} для связи в пределах субмарины. ]];
|
|
|
act = function(s)
|
|
|
walkin(phone_dlg);
|
|
|
if (not submarine_leviathan.power_on or not submarine_leviathan.battery) then
|
|
|
return [[Без электричества телефон не заработает. ]];
|
|
|
elseif (#pl.party < 1) then
|
|
|
return [[Здесь никого нет. ]];
|
|
|
else
|
|
|
walkin(phone_dlg);
|
|
|
end;
|
|
|
end;
|
|
|
seen_level = 1;
|
|
|
};
|
|
|
|
|
|
phone_cabin = obj {
|
|
|
nam = "phone_cabin";
|
|
|
disp = "Телефон";
|
|
|
dsc = [[На столе установлен {телефонный аппарат} для связи в пределах субмарины. ]];
|
|
|
act = function(s)
|
|
|
walkin(phone_dlg);
|
|
|
if (not submarine_leviathan.power_on or not submarine_leviathan.battery) then
|
|
|
return [[Без электричества телефон не заработает. ]];
|
|
|
elseif (#pl.party < 1) then
|
|
|
return [[Здесь никого нет. ]];
|
|
|
else
|
|
|
walkin(phone_dlg);
|
|
|
end;
|
|
|
end;
|
|
|
seen_level = 1;
|
|
|
};
|
|
|
|
|
|
phone_wardroom = obj {
|
|
|
nam = "phone_wardroom";
|
|
|
disp = "Телефон";
|
|
|
dsc = [[На столе, рядом с креслом командира установлен {телефонный аппарат} для связи в пределах субмарины. ]];
|
|
|
act = function(s)
|
|
|
walkin(phone_dlg);
|
|
|
if (not submarine_leviathan.power_on or not submarine_leviathan.battery) then
|
|
|
return [[Без электричества телефон не заработает. ]];
|
|
|
elseif (#pl.party < 1) then
|
|
|
return [[Здесь никого нет. ]];
|
|
|
else
|
|
|
walkin(phone_dlg);
|
|
|
end;
|
|
|
end;
|
|
|
seen_level = 1;
|
|
|
};
|
|
|
|
|
|
phone_dlg = dlg {
|
|
|
nam = "phone_dlg";
|