# HG changeset patch # User Silverwing # Date 2019-01-04 12:56:46 # Node ID 7b031c50917ac85845796960e40d0823f890d4da # Parent b18b47905d46dc338d5d757bc5005c37bafc629e chapter 2: deep temple code now retrievable diff --git a/items.lua b/items.lua --- a/items.lua +++ b/items.lua @@ -827,7 +827,6 @@ item_raybox = obj { used = function(s, o) if o == item_map_disc then deep_temple_found = true; - remove(item_map_disc, pl); return [[Вы помещаете диск внутрь коробочки и он тут же опутывается лучами, которые начинают отражаться от него. Над поверхностью коробочки возникает полупрозрачное изображение -- это очень детальная навьярская карта, описывающая какое-то место, находящееся очень далеко отсюда. Цветные полосы, возникшие над изображением гласят "храм". ]]; end; end @@ -838,5 +837,16 @@ item_map_disc = obj { disp = "Светодиск из катакомб"; dsc = [[У стены лежит небольшой блестящий {диск}. ]]; tak = [[Вы поднимаете диск. ]]; - inv = [[Найденный в катакомбах Нлейисланотра блестящий гладкий диск из неизвестного материала. Диаметр около 10 сантиметров. В центре небольшое треугольное отверстие. Вдоль внешней кромки тянутся цветные полосы. ]]; + inv = function(s) + local dt =''; + + for i = 1, #dt_code do + dt = dt .. dt_wire_colors[dt_code[i]]; + if i < #dt_code then + dt = dt .. ', '; + end; + end; + + return([[Найденный в катакомбах Нлейисланотра блестящий гладкий диск из неизвестного материала. Диаметр около 10 сантиметров. В центре небольшое треугольное отверстие. Вдоль внешней кромки тянутся цветные полосы: ]] .. dt .. [[. ]]); + end; } \ No newline at end of file diff --git a/journey_temple.lua b/journey_temple.lua --- a/journey_temple.lua +++ b/journey_temple.lua @@ -625,8 +625,8 @@ dt_term1 = obj { return "Вы нажимаете на кнопку, но ничего не происходит. "; else table.insert(dt_terminal_room.code, dt_wires_room.connections[1]); + pr "Вы нажимаете на кнопку, и на экране зажигается соответствующая ей цветная полоса. "; dt_terminal_room:check(); - pr "Вы нажимаете на кнопку, и на экране зажигается соответствующая ей цветная полоса. "; end; end; }; @@ -639,8 +639,8 @@ dt_term2 = obj { return "Вы нажимаете на кнопку, но ничего не происходит. "; else table.insert(dt_terminal_room.code, dt_wires_room.connections[2]); + pr "Вы нажимаете на кнопку, и на экране зажигается соответствующая ей цветная полоса. "; dt_terminal_room:check(); - pr "Вы нажимаете на кнопку, и на экране зажигается соответствующая ей цветная полоса. "; end; end; }; @@ -653,8 +653,8 @@ dt_term3 = obj { return "Вы нажимаете на кнопку, но ничего не происходит. "; else table.insert(dt_terminal_room.code, dt_wires_room.connections[3]); + pr "Вы нажимаете на кнопку, и на экране зажигается соответствующая ей цветная полоса. "; dt_terminal_room:check(); - pr "Вы нажимаете на кнопку, и на экране зажигается соответствующая ей цветная полоса. "; end; end; }; @@ -667,8 +667,8 @@ dt_term4 = obj { return "Вы нажимаете на кнопку, но ничего не происходит. "; else table.insert(dt_terminal_room.code, dt_wires_room.connections[4]); + pr "Вы нажимаете на кнопку, и на экране зажигается соответствующая ей цветная полоса. "; dt_terminal_room:check(); - pr "Вы нажимаете на кнопку, и на экране зажигается соответствующая ей цветная полоса. "; end; end; }; @@ -681,8 +681,8 @@ dt_term5 = obj { return "Вы нажимаете на кнопку, но ничего не происходит. "; else table.insert(dt_terminal_room.code, dt_wires_room.connections[5]); + pr "Вы нажимаете на кнопку, и на экране зажигается соответствующая ей цветная полоса. "; dt_terminal_room:check(); - pr "Вы нажимаете на кнопку, и на экране зажигается соответствующая ей цветная полоса. "; end; end; }; @@ -695,8 +695,8 @@ dt_term6 = obj { return "Вы нажимаете на кнопку, но ничего не происходит. "; else table.insert(dt_terminal_room.code, dt_wires_room.connections[6]); + pr "Вы нажимаете на кнопку, и на экране зажигается соответствующая ей цветная полоса. "; dt_terminal_room:check(); - pr "Вы нажимаете на кнопку, и на экране зажигается соответствующая ей цветная полоса. "; end; end; }; @@ -729,13 +729,8 @@ dt_wires_room = dlg { Перед вами открытая панель, за которой находятся шесть проводов, подключенные к своим разъемам. Провода отличаются цветами. ]]; choose_socket = function(s) - pon("s0"); - pon("s1"); - pon("s2"); - pon("s3"); - pon("s4"); - pon("s5"); - for conn = 1, #dt_wires_room.connections do + pon("s0", "s1", "s2", "s3", "s4", "s5"); + for conn = 1, 6 do if (dt_wires_room.connections[conn] == 1) then poff("s0"); elseif (dt_wires_room.connections[conn] == 2) then diff --git a/startup.lua b/startup.lua --- a/startup.lua +++ b/startup.lua @@ -161,10 +161,11 @@ function init() end; local nums = {1,2,3,4,5,6}; - for i = 1, 4 do - local index = rnd(#nums); - table.insert(dt_code, nums[index]); - table.remove(nums, index); + if #dt_code == 0 then + for i = 1, 4 do + local index = rnd(#nums); + table.insert(dt_code, nums[index]); + end; end; nums = {1,2,3,4,5,6}; for i = 1, 3 do