diff --git a/warehouse32.lua b/warehouse32.lua --- a/warehouse32.lua +++ b/warehouse32.lua @@ -5,9 +5,11 @@ ]] warehouse_32_guard = npc { + var { + dlg = 'warehouse_32_guard_dlg'; + }; nam = "warehouse_32_guard"; dsc = "Рядом со входом, опершись на стену, стоит {охранник}. Он не обращает на вас никакого внимания. "; - dlg = 'warehouse_32_guard_dlg'; phrases = { 'Мне больше не о чем с ним говорить. '; 'Он меня не пропустит. '; @@ -171,6 +173,10 @@ w32_backdoor = room { }; w32_mgr = darkroom { + var { + key_inplace = true; + book_inplace = true; + }; nam = "w32_mgr"; disp = "Склад 32, кабинет управляющего"; dsc_dark = [[ @@ -182,8 +188,6 @@ w32_mgr = darkroom { entered = function(s) warehouse_32.pos = "54"; end; - key_inplace = true; - book_inplace = true; way = { kh_vroom("Выйти", function(s) print(w32_mgr.key_inplace); @@ -223,6 +227,10 @@ w32_journal = obj { }; w32_mgr_table = obj { + var { + open = false; + locked = true; + }; seen_level = 1; nam = 'w32_mgr_table'; dsc = function(s) @@ -236,8 +244,6 @@ w32_mgr_table = obj { ]]; end; end; - open = false; - locked = true; act = function(s) if (not s.locked) then if (s.open) then @@ -421,6 +427,16 @@ function getDirName(dir) end; warehouse_32 = room { + var{ + pos = "01"; + hidden = false; + guards = { + { pos = "21", dir=1, s = 1 }; --s=1 - должен повернуть направо, s=2 - должен пройти прямо + { pos = "31", dir=4, s = 1 }; --s=1 - должен повернуть направо, s=2 - должен пройти прямо + { pos = "24", dir=2, s = 1 }; --s=1 - должен повернуть направо, s=2 - должен пройти прямо + { pos = "34", dir=3, s = 1 }; --s=1 - должен повернуть направо, s=2 - должен пройти прямо + }; + }; nam = "warehouse_32"; nolamp = true; disp = function(s) @@ -432,14 +448,6 @@ warehouse_32 = room { return 'Вы стоите где-то между стеллажами склада 32. В помещении темно, за исключением фонарей охранников. ' .. s.definitions[s.pos].dsc; end; definitions = warehouse_32_definitions; - pos = "01"; - hidden = false; - guards = { - { pos = "21", dir=1, s = 1 }; --s=1 - должен повернуть направо, s=2 - должен пройти прямо - { pos = "31", dir=4, s = 1 }; --s=1 - должен повернуть направо, s=2 - должен пройти прямо - { pos = "24", dir=2, s = 1 }; --s=1 - должен повернуть направо, s=2 - должен пройти прямо - { pos = "34", dir=3, s = 1 }; --s=1 - должен повернуть направо, s=2 - должен пройти прямо - }; checkGuardSight = function(s) --Проверить область зрения каждого стражника, если игрок находится в области зрения - FAIL for i = 1, #s.guards do @@ -553,11 +561,6 @@ warehouse_32 = room { end; end; makeTurn = function(s) - --print("turn"); - --print(s.guards[1].pos, s.guards[1].dir); - --print(s.guards[2].pos, s.guards[2].dir); - --print(s.guards[3].pos, s.guards[3].dir); - --print(s.guards[4].pos, s.guards[4].dir); -- TODO debug if (s:checkGuardSight()) then s:guardTurn(); @@ -678,8 +681,10 @@ warehouse_32 = room { }; warehouse_32_shelves = obj { + var { + current = "E1"; + }; nam = "warehouse_32_shelves"; - current = "E1"; dsc = function (s) return "Стеллажи, расположенные в этой секции отмечены табличкой {" .. s.current .. "}"; end; @@ -690,6 +695,12 @@ warehouse_32_shelves = obj { }; w32_shelf_input = input_number { + var { + items = { + { n = "item_electrodes"; }; + { n = "item_pump_details"; }; + }; + }; nam = "w32_shelf_input"; disp = function(s) return "Стеллаж с отметкой " .. s.sector; @@ -705,10 +716,6 @@ w32_shelf_input = input_number { back(); end; label = "Укажите номер позиции:"; - items = { - { n = "item_electrodes"; }; - { n = "item_pump_details"; }; - }; }; function warehouse32_init()