diff --git a/first_city_inner_rim.lua b/first_city_inner_rim.lua deleted file mode 100644 --- a/first_city_inner_rim.lua +++ /dev/null @@ -1,163 +0,0 @@ --- TODO (приват) добавить описание шлюза --- TODO (приват) картинка с дисплея терминала --- TODO (приват) вменяемое описание цели данного паззла, тексты на навьярском или реалистичное объяснение их понятности персонажу -first_city_airlock_control = room { - nam = "first_city_airlock"; - disp = "Комната управления шлюзом центрального зала"; - dsc = function (s) - return "Вы находитесь в небольшой комнате. Перед вами расположен дисплей, на котором расположены три вертикальные полосы разной длины. " .. tostring(s.tanks[1]) .. "/" .. tostring(s.tanks[2]) .. "/" .. tostring(s.tanks[3]); - end; - tanks = {10, 0, 0}; - tanks_capacity = {10, 7, 3}; - selected_source = nil; - selected_target = nil; - detect = function(s) - if (tanks[2] == 5) then - return true; - else - return false; - end; - end; - obj = { - "first_city_transfer", - "first_city_select_s", - "first_city_select_p", - "first_city_select_a" - }; -}; - -first_city_transfer = obj { - nam = "first_city_transfer"; - dsc = "{Выполнить} ^"; - act = function(s) - if (first_city_airlock_control.selected_source and first_city_airlock_control.selected_target) then - local tmp = math.min(first_city_airlock_control.tanks[first_city_airlock_control.selected_source], first_city_airlock_control.tanks_capacity[first_city_airlock_control.selected_target] - first_city_airlock_control.tanks[first_city_airlock_control.selected_target]); - first_city_airlock_control.tanks[first_city_airlock_control.selected_source] = first_city_airlock_control.tanks[first_city_airlock_control.selected_source] - tmp; - first_city_airlock_control.tanks[first_city_airlock_control.selected_target] = first_city_airlock_control.tanks[first_city_airlock_control.selected_target] + tmp; - first_city_airlock_control.selected_source = nil; - first_city_airlock_control.selected_target = nil; - return "Выполнено"; - else - return "Невозможно выполнить"; - end; - end; -}; - -first_city_select_s = obj { - nam = "first_city_select_s"; - dsc = "{Выбрать первый баллон} ^"; - act = function(s) - if (not first_city_airlock_control.selected_source) then - first_city_airlock_control.selected_source = 1; - else - first_city_airlock_control.selected_target = 1; - end; - - return ""; - end; -}; - -first_city_select_p = obj { - nam = "first_city_select_p"; - dsc = "{Выбрать второй баллон} ^"; - act = function(s) - if (not first_city_airlock_control.selected_source) then - first_city_airlock_control.selected_source = 2; - else - first_city_airlock_control.selected_target = 2; - end; - - return ""; - end; -}; - -first_city_select_a = obj { - nam = "first_city_select_a"; - dsc = "{Выбрать третий баллон} ^"; - act = function(s) - if (not first_city_airlock_control.selected_source) then - first_city_airlock_control.selected_source = 3; - else - first_city_airlock_control.selected_target = 3; - end; - - return ""; - end; -}; - -first_city_inner_south = room { - nam = "first_city_inner_south"; - disp = "Лсэрианотр, внутреннее кольцо, юг"; - gate = "first_city_middle_south"; - east = "first_city_inner_east"; - west = "first_city_inner_west"; - navigatable = true; - dsc = [[ - Вы находитесь в южной части внутреннего кольца Лсэрианотр. Это огромный коридор, опоясывающий город по периметру. - ]]; - view = [[ - Вы находитесь в южной части внутреннего кольца Лсэрианотр. Это огромный коридор, опоясывающий город по периметру. - ]]; -}; - -first_city_inner_east = room { - nam = "first_city_inner_east"; - disp = "Лсэрианотр, внутреннее кольцо, восток"; - south = "first_city_inner_south"; - north = "first_city_inner_north"; - navigatable = true; - dsc = [[ - Вы находитесь в восточной части внутреннего кольца Лсэрианотр. Это огромный коридор, опоясывающий город по периметру. - ]]; - view = [[ - Вы находитесь в восточной части внутреннего кольца Лсэрианотр. Это огромный коридор, опоясывающий город по периметру. - ]]; -}; - -first_city_inner_west = room { - nam = "first_city_inner_west"; - disp = "Лсэрианотр, внутреннее кольцо, запад"; - south = "first_city_inner_south"; - north = "first_city_inner_north"; - navigatable = true; - dsc = [[ - Вы находитесь в западной части внутреннего кольца Лсэрианотр. Это огромный коридор, опоясывающий город по периметру. - ]]; - view = [[ - Вы находитесь в западной части внутреннего кольца Лсэрианотр. Это огромный коридор, опоясывающий город по периметру. - ]]; -}; - -first_city_inner_north = room { - nam = "first_city_inner_north"; - disp = "Лсэрианотр, внутреннее кольцо, север"; - east = "first_city_inner_east"; - west = "first_city_inner_west"; - navigatable = true; - entered = function(s) - if (first_city_airlock_control.detect(first_city_airlock_control)) then - path("first_city_to_center"):enable(); - end; - end; - dsc = [[ - Вы находитесь в северной части внутреннего кольца Лсэрианотр. Это огромный коридор, опоясывающий город по периметру. - ]]; - view = [[ - Вы находитесь в северной части внутреннего кольца Лсэрианотр. Это огромный коридор, опоясывающий город по периметру. - ]]; - way = { - kh_vroom("Центр города", "first_city_central_room_entrance", "first_city_to_center"):disable(); - kh_vroom("Левиафан", "leviathan_airlock"); - }; -}; - -first_city_central_room_entrance = room { - nam = "first_city_central_room_entrance"; - disp = "Лсэрианотр, Вход в центральный зал"; - dsc = [[ - Вы находитесь у входа в центральный зал Лсэрианотра. Входная дверь закрывается и вода быстро откачивается из помещения. Вы снимаете скафандр и готовитесь к встрече с Уильямом. Отсюда пути назад уже нет. - ]]; - obj = { - vway("Центральный зал", "{Вперед}", "final_scene_before_battle"); - }; -}; \ No newline at end of file