diff --git a/leviathan.lua b/leviathan.lua --- a/leviathan.lua +++ b/leviathan.lua @@ -10,7 +10,7 @@ Плохо освещено - Описания минимальны, большинство действий недостпны Хорошо освещено - полные описания, все действия доступны -На складе имеется три скафандра в хорошем состоянии. Без них невозможно покинуть корабль в подводных локациях. Скафандр может быть испорчен и потребует ремонта. Если оба скафандра выведены из строя их потребуется отремонтировать. +Скафандры придется зарабатывать на Атлантиде ]] submarine_leviathan = obj { nam = "submarine_leviathan"; @@ -63,6 +63,9 @@ leviathan_captains_cabin = room { way = { vroom("Каюты", "leviathan_cabins"); }; + obj = { + "phone_cabin"; + }; }; leviathan_cabins = room { @@ -97,11 +100,11 @@ leviathan_wardroom = room { Из машинного отсека доносится гул двигателей. Яркий свет электрических ламп освещает помещение. ]]; way = { - vroom("Машинный отсек", "leviathan_engines"); vroom("Рубка", "leviathan_dlg"); vroom("Шлюз", "leviathan_airlock"); vroom("Каюты", "leviathan_cabins"); vroom("Грузовой отсек", "leviathan_cargo_hold"); + vroom("Машинный отсек", "leviathan_engines"); }; obj = { --vway("Машинный отсек", "Из {машинного отсека} доносится легкий гул.^", "leviathan_engines"); @@ -110,9 +113,10 @@ leviathan_wardroom = room { --vway("Каюты", "{В каюты экипажа}^", "leviathan_cabins"); --vway("Грузовой отсек", "{В грузовой отсек}^", "leviathan_cargo_hold"); "char_learr"; - "char_phaetlarr"; + --"char_phaetlarr"; "char_radcliffe"; "char_wright"; + "phone_wardroom"; }; }; @@ -127,6 +131,50 @@ leviathan_engines = room { }; }; +phone_cabin = obj { + nam = "phone_cabin"; + disp = "Телефон"; + dsc = [[ + На столе установлен {телефонный аппарат} для связи в пределах субмарины + ]]; + act = function(s) + walkin(phone_dlg); + end; +}; + +phone_wardroom = obj { + nam = "phone_wardroom"; + disp = "Телефон"; + dsc = [[ + На столе, рядом с креслом командира установлен {телефонный аппарат} для связи в пределах субмарины + ]]; + act = function(s) + walkin(phone_dlg); + end; +}; + +phone_dlg = dlg { + nam = "phone_dlg"; + disp = "Телефон"; + hideinv = true; + dsc = [[ + Вы снимаете трубку и можете вызвать кого-нибудь + ]]; + entered = function(s) + poff("phaetlarr", "learr", "radcliffe", "wright"); + for i = 1, #pl.party do + pon(pl.party[i]); + end; + end; + phr = { + { tag = "phaetlarr", always = true, "Фаэтларр", code = [[walkin(phaetlarr_dlg)]]}, + { tag = "learr", always = true, "Леарр", code = [[walkin(learr_dlg)]]}, + { tag = "radcliffe", always = true, "Рэдклифф", code = [[walkin(radcliffe_dlg)]]}, + { tag = "wright", always = true, "Райт", code = [[walkin(wright_dlg)]]}, + { tag = "exit", always = true, "Полождить трубку", code = [[back()]]} + } +}; + leviathan_dlg = dlg { nam = "leviathan_dlg"; disp = "Штурвал Левиафана"; @@ -182,7 +230,7 @@ leviathan_dlg = dlg { end; end; enter = function(s) - leviathan_dlg.update_options(); + s.update_options(); end; phr = { {1, always = "true", "Атлантида", function()