559 lines
18 KiB
Lua
559 lines
18 KiB
Lua
|
--$Name: Разорванный цикл$
|
|||
|
--$Version: 1.0$
|
|||
|
--$Author: Андрей Лобанов
|
|||
|
instead_version "1.9.1"
|
|||
|
require "lib"
|
|||
|
require "para"
|
|||
|
require "dash"
|
|||
|
require "quotes"
|
|||
|
require "timer"
|
|||
|
require "xact"
|
|||
|
game.use=_('Не получается.')
|
|||
|
|
|||
|
main=room{
|
|||
|
nam='...',
|
|||
|
enter = music_("spell",0),
|
|||
|
title = _("РАЗОРВАННЫЙ ЦИКЛ"),
|
|||
|
num = 6,
|
|||
|
dsc=_('Сознание вернулось. А в месте с ним вернулись мрак и холод.'),
|
|||
|
act=code 'walk(capsule)',
|
|||
|
obj={vobj('', '{'.._('Открыть глаза')..'}')},
|
|||
|
}
|
|||
|
capsule=room{
|
|||
|
nam=_('Капсула'),
|
|||
|
dsc=_('Я нахожусь в капсуле криосна.'),
|
|||
|
obj={'capsule_cap'},
|
|||
|
}
|
|||
|
capsule_cap=obj{
|
|||
|
_seen=false,
|
|||
|
nam=_('Крышка'),
|
|||
|
dsc=_('Я вижу {крышку} капсулы.'),
|
|||
|
act=function(s)
|
|||
|
if not s._seen then
|
|||
|
s._seen=true
|
|||
|
put(button)
|
|||
|
return _('Рядом с крышкой я заметил кнопку аварийного открытия капсулы.')
|
|||
|
else
|
|||
|
return _('Не получается открыть её изнутри.')
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
button=obj{
|
|||
|
nam=_('Кнопка'),
|
|||
|
dsc=_('Рядом находится {кнопка}.'),
|
|||
|
act=function()
|
|||
|
if not path(k007) then
|
|||
|
ways():add(k007)
|
|||
|
return _('Я нажал на кнопку и крышка плавно отъехала в сторону.')
|
|||
|
else
|
|||
|
return _('Крышка уже открыта.')
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
k007=room{
|
|||
|
nam=_('K007'),
|
|||
|
dsc=_('Тёмный отсек.'),
|
|||
|
pxa = {
|
|||
|
{ "door4", 10 },
|
|||
|
{ "panel", 220 },
|
|||
|
{ "crio", 300 }
|
|||
|
};
|
|||
|
obj={'mcapsule','capsules','cabinets','cabinet'},
|
|||
|
exit=function(s,w)
|
|||
|
if w==crioblock and not have(cloth) then
|
|||
|
p(_('Мне холодно. Да и разгуливать по кораблю в одних трусах нет никакого желания.'))
|
|||
|
return false
|
|||
|
end
|
|||
|
end,
|
|||
|
way={'capsule','crioblock'},
|
|||
|
}
|
|||
|
mcapsule=obj{
|
|||
|
nam=_('Капсула'),
|
|||
|
dsc=_('Крышка моей {капсулы} открыта.'),
|
|||
|
act=_('Ничего примечательного.'),
|
|||
|
obj={'display'},
|
|||
|
}
|
|||
|
display=obj{
|
|||
|
nam=_('Экран'),
|
|||
|
dsc=_('Рядом с открытой крышкой находится {блок} управления криосном.'),
|
|||
|
act=_('На экран выведено сообщение о поломке капсулы. Странно, что вахтенный робот не предпринял никаких действий.'),
|
|||
|
}
|
|||
|
capsules=obj{
|
|||
|
nam=_('Капсулы'),
|
|||
|
dsc=_('Вокруг меня пять других {капсул} криосна.'),
|
|||
|
act=_('В каждой капсуле находится человек. Интересно почему я вышел из криосна.')
|
|||
|
}
|
|||
|
cabinets=obj{
|
|||
|
nam=_('Шкафы'),
|
|||
|
dsc=_('Напротив капсул находятся {шкафы} с вещами членов экипажа.'),
|
|||
|
act=function()
|
|||
|
if not have(cloth) then
|
|||
|
take(cloth)
|
|||
|
return _('Я открыл свой шкаф и взял свою одежду.')
|
|||
|
else
|
|||
|
return _('Шкаф пуст.')
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
cloth=obj{
|
|||
|
nam=_('Одежда'),
|
|||
|
inv=_('Стандартная форма члена экипажа.'),
|
|||
|
use=function(s,w)
|
|||
|
if w==sparecabinet then
|
|||
|
inv():del(s)
|
|||
|
return _('Я сложил одежду в шкаф.')
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
cabinet=obj{
|
|||
|
nam=_('Шкаф'),
|
|||
|
dsc=_('{Один} из шкафов сильно повреждён.'),
|
|||
|
act=_('Такое впечатление, что его били чем-то увесистым.'),
|
|||
|
}
|
|||
|
crioblock=room{
|
|||
|
nam=_('Криоблок'),
|
|||
|
_grate=0,
|
|||
|
pxa = {
|
|||
|
{ "box3", 20 },
|
|||
|
{ if_("exist(grenade)","extin"), 90 },
|
|||
|
{ "window", 170 },
|
|||
|
{ function(s)
|
|||
|
if s._grate == 1 then
|
|||
|
return "shaft";
|
|||
|
elseif s._grate == 2 then
|
|||
|
return "shaft_open";
|
|||
|
end
|
|||
|
end, 440},
|
|||
|
{ "door2", 300 }
|
|||
|
},
|
|||
|
dsc=_('Коридор едва освещён.'),
|
|||
|
obj={'grenade','lift'},
|
|||
|
way={'k007'},
|
|||
|
}
|
|||
|
grenade=obj {
|
|||
|
nam=_('Огнетушитель'),
|
|||
|
dsc=function()
|
|||
|
if here()==crioblock then
|
|||
|
return _('Рядом с пожарным шкафчиком лежит {огнетушитель}.')
|
|||
|
else
|
|||
|
return _('На полу лежит {огнетушитель}.')
|
|||
|
end
|
|||
|
end,
|
|||
|
tak=_('Я поднял огнетушитель.'),
|
|||
|
inv=_('Похоже, им кто-то уже воспользовался.'),
|
|||
|
use=function(s,w)
|
|||
|
if w==grate then
|
|||
|
if here()==crioblock then
|
|||
|
crioblock._grate=2;
|
|||
|
objs(lift):del(w)
|
|||
|
ways():add(shaft)
|
|||
|
else
|
|||
|
here()._grate=true;
|
|||
|
objs():del(w)
|
|||
|
ways():add(techblock)
|
|||
|
end
|
|||
|
objs():del(grate)
|
|||
|
return _('Я выломал решётку огнетушителем.')
|
|||
|
elseif w==button2 and not sparehand._not then
|
|||
|
cell21._opened=true
|
|||
|
cell20._opened=nil,
|
|||
|
objs(cell20):del(robot)
|
|||
|
objs(cell20):del(button2)
|
|||
|
objs(cell21):add(robot)
|
|||
|
drop(s)
|
|||
|
return _('Я швырнул огнетушитель в кнопку, он нажал её и выкатился обратно в технический блок прежде чем дверь закрылась.')
|
|||
|
else
|
|||
|
return _('Не нужно крушить всё подряд.')
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
lift=obj{
|
|||
|
nam=_('Лифт'),
|
|||
|
dsc=_('Двери {лифта} закрыты.'),
|
|||
|
act=function(s)
|
|||
|
v=_('Я нажал на кнопку вызова, но лифт не приехал.')
|
|||
|
if not s._seen then
|
|||
|
s._seen=0
|
|||
|
elseif s._seen==0 then
|
|||
|
s._seen=1
|
|||
|
elseif s._seen==1 then
|
|||
|
s._seen=2
|
|||
|
crioblock._grate=1;
|
|||
|
put(grate,s)
|
|||
|
v=v..' '.._('Рядом с лифтом я заметил вентиляционное отверстие.')
|
|||
|
end
|
|||
|
return v
|
|||
|
end,
|
|||
|
}
|
|||
|
grate=obj{
|
|||
|
nam=_('Решётка'),
|
|||
|
dsc=function()
|
|||
|
if here()==crioblock then
|
|||
|
return _('Рядом с лифтом находится {решётка} вентиляционной шахты.')
|
|||
|
else
|
|||
|
return _('Здесь есть {решётка}.')
|
|||
|
end
|
|||
|
end,
|
|||
|
act=_('Металлическая решётка.'),
|
|||
|
}
|
|||
|
shaft=room{
|
|||
|
nam=_('Шахта'),_grate=false,
|
|||
|
pxa = {
|
|||
|
{ if_("shaft._grate", "shaft_open", "shaft"), 217 }
|
|||
|
},
|
|||
|
dsc=_('Я нахожусь на дне вентиляционной шахты.'),
|
|||
|
enter=function(s)
|
|||
|
if not s._seen then
|
|||
|
s._seen=true
|
|||
|
return _('Я залез в шахту и попытался удержаться, упёршись руками и коленями в стенки, но после криосна силы ещё не полностью вернулись ко мне и я упал вниз.')
|
|||
|
end
|
|||
|
end,
|
|||
|
obj={'grate'},
|
|||
|
}
|
|||
|
techblock=room{
|
|||
|
nam=_('Технический блок'),
|
|||
|
dsc=_('Технический блок №10.'),
|
|||
|
pxa = {
|
|||
|
{ if_("not _endgame", "robot_nohand"), 47 },
|
|||
|
{ if_("cell20._opened","door2_open","door4"), 10 },
|
|||
|
{ if_("have(hand)", "robot_nohand", "robot"), 177 },
|
|||
|
{ if_("cell21._opened","door2_open","door4"), 140 },
|
|||
|
{ "toolbox", 300 },
|
|||
|
{ if_("door._opened","door1_open","door1"), 370 }
|
|||
|
},
|
|||
|
exit=function()
|
|||
|
if not sparehand._not then
|
|||
|
if have(hand) then
|
|||
|
p(_('Нужно прикрутить руку обратно.'))
|
|||
|
return false
|
|||
|
elseif have(wrench) then
|
|||
|
p(_('Незачем таскать с собой гаечный ключ.'))
|
|||
|
return false
|
|||
|
end
|
|||
|
end
|
|||
|
end,
|
|||
|
obj={'cell20','cell21','box','door'},
|
|||
|
way={'shaft'},
|
|||
|
}
|
|||
|
cell21=obj{
|
|||
|
nam=_('Отсек №21'),
|
|||
|
dsc=function(s)
|
|||
|
local v
|
|||
|
v=_('{Дверь} отсека №21')..' '
|
|||
|
if s._opened then
|
|||
|
v=v.._('открыта.')
|
|||
|
else
|
|||
|
v=v.._('закрыта.')
|
|||
|
end
|
|||
|
return v
|
|||
|
end,
|
|||
|
act=function(s)
|
|||
|
if not s._opened then
|
|||
|
return _('Мне не открыть эту дверь руками.')
|
|||
|
else
|
|||
|
return _('Дверь открыта.')
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
cell20=obj{
|
|||
|
_opened=true,
|
|||
|
nam=_('Отсек №20'),
|
|||
|
dsc=function(s)
|
|||
|
local v
|
|||
|
v=_('{Дверь} отсека №20')..' '
|
|||
|
if s._opened then
|
|||
|
v=v.._('открыта.')
|
|||
|
else
|
|||
|
v=v.._('закрыта.')
|
|||
|
end
|
|||
|
return v
|
|||
|
end,
|
|||
|
act=_('Стандартный отсек, в котором робот пребывает во время гибернации.'),
|
|||
|
obj={'robot','button2'},
|
|||
|
}
|
|||
|
button2=obj{
|
|||
|
nam=_('Кнопка'),
|
|||
|
dsc=_('В отсеке №20 на стене находится большая круглая {кнопка}.'),
|
|||
|
act=_('Если я её нажму, то просто останусь в отсеке с роботом на ближайшие 99 лет.'),
|
|||
|
}
|
|||
|
robot=obj{
|
|||
|
nam=_('Робот'),
|
|||
|
dsc=_('В отсеке находится вахтенный {робот}.'),
|
|||
|
act=function(s)
|
|||
|
if exist(s,cell20) then
|
|||
|
return _('У робота отсутствует правая рука.')
|
|||
|
else
|
|||
|
return _('Стандартный вахтенный робот.')
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
hand=obj{
|
|||
|
nam=_('Рука робота'),
|
|||
|
inv=_('Стандартная правая рука вахтенного робота. На ней есть универсальный ключ.'),
|
|||
|
use=function(s,w)
|
|||
|
if w==door and not w._opened then
|
|||
|
door._opened=true
|
|||
|
ways():add(deck)
|
|||
|
return _('Я использовал ключ на руке робота чтобы открыть дверь на главную палубу.')
|
|||
|
elseif w==robot then
|
|||
|
if have(wrench) then
|
|||
|
inv():del(hand)
|
|||
|
return _('Я прикрутил руку на место.')
|
|||
|
else
|
|||
|
return _('Мне нечем прикрутить руку.')
|
|||
|
end
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
box=obj{
|
|||
|
nam=_('Ящик'),
|
|||
|
dsc=_('На полу лежит {ящик} с инструментами.'),
|
|||
|
act=function(s)
|
|||
|
if not have(wrench) then
|
|||
|
take(wrench)
|
|||
|
return _('Я взял гаечный ключ.')
|
|||
|
else
|
|||
|
return _('В ящике больше нет ничего полезного.')
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
wrench=obj{
|
|||
|
nam=_('Гаечный ключ'),
|
|||
|
inv=_('Обычный разводной ключ.'),
|
|||
|
use=function(s,w)
|
|||
|
if w==robot and exist(robot,cell21) and not have(hand) and not path(deck) then
|
|||
|
take(hand)
|
|||
|
return _('Я открутил правую руку у робота WR021.')
|
|||
|
elseif w == box then
|
|||
|
drop(s,box)
|
|||
|
return _('Я положил ключ обратно в ящик.')
|
|||
|
elseif w==sparehand and sparehand._not then
|
|||
|
walk(hend)
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
door=obj{
|
|||
|
nam=_('Дверь'),
|
|||
|
dsc=_('Большая {дверь}, ведущая на главную палубу, находится напротив отсеков с роботами.'),
|
|||
|
act=function(s)
|
|||
|
if not s._opened then
|
|||
|
return _('Для открытия двери нужен ключ, который находится на правой руке роботов.')
|
|||
|
else
|
|||
|
return _('Дверь открыта.')
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
deck=room{
|
|||
|
nam=_('Главная палуба'),
|
|||
|
pxa = {
|
|||
|
{ "door2", 189 },
|
|||
|
{ "window", 125 },
|
|||
|
{ "window", 351 }
|
|||
|
},
|
|||
|
dsc=_('Я нахожусь на главной палубе.'),
|
|||
|
obj={'mainlift'},
|
|||
|
way={'techblock'},
|
|||
|
}
|
|||
|
mainlift=obj{
|
|||
|
nam=_('Лифт'),
|
|||
|
dsc=_('Здесь находятся двери главного {лифта} корабля.'),
|
|||
|
act=function()
|
|||
|
if not path(liftinside) then
|
|||
|
ways():add(liftinside)
|
|||
|
return _('Я вызвал лифт.')
|
|||
|
else
|
|||
|
return _('Лифт уже здесь.')
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
liftinside=room{
|
|||
|
nam=_('Главный лифт'),
|
|||
|
pxa = {
|
|||
|
{ "door2", 189 }
|
|||
|
},
|
|||
|
dsc=_('Я нахожусь внутри главного лифта.'),
|
|||
|
obj={'liftbuttons'},
|
|||
|
way={'deck'},
|
|||
|
}
|
|||
|
liftbuttons=obj{
|
|||
|
nam=_('Кнопки'),
|
|||
|
dsc=_('На стене лифта находятся {кнопки}.'),
|
|||
|
act=function()
|
|||
|
if not exist(sparehand, cell20) then
|
|||
|
if path(deck) then
|
|||
|
ways():del(deck)
|
|||
|
ways():add(warehouse)
|
|||
|
return _('Я нажал кнопку с подписью "Склад".')
|
|||
|
else
|
|||
|
ways():del(warehouse)
|
|||
|
ways():add(deck)
|
|||
|
return _('Я нажал кнопку с надписью "Главная палуба".')
|
|||
|
end
|
|||
|
else
|
|||
|
if path(deck) then
|
|||
|
ways():del(deck)
|
|||
|
ways():add(sparecrioblock)
|
|||
|
return _('Я нажал кнопку с надписью "Резервный криоблок".')
|
|||
|
else
|
|||
|
ways():del(sparecrioblock)
|
|||
|
ways():add(deck)
|
|||
|
return _('Я нажал кнопку с надписью "Главная палуба".')
|
|||
|
end
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
warehouse=room{
|
|||
|
nam=_('Склад'),
|
|||
|
pxa = {
|
|||
|
{ "box", 10 },
|
|||
|
{ "box", 100 },
|
|||
|
{ "door2", 250 },
|
|||
|
{ "shelf", 415 }
|
|||
|
},
|
|||
|
dsc=_('Я нахожусь в гигантском помещении склада.'),
|
|||
|
obj={'boxes'},
|
|||
|
way={'liftinside'},
|
|||
|
}
|
|||
|
boxes=obj{
|
|||
|
_look=0,
|
|||
|
nam=_('Ящики'),
|
|||
|
dsc=_('На складе стоит множество стеллажей, заставленных {ящиками}.'),
|
|||
|
act=function(s)
|
|||
|
if s._look==0 then
|
|||
|
s._look=1
|
|||
|
return _('Где-то среди них должны быть ящики с запасными частями для вахтенных роботов.')
|
|||
|
elseif s._look==1 then
|
|||
|
s._look=2
|
|||
|
return _('Я нашёл стеллажи, на которых хранятся запасные части для вахтенных роботов.')
|
|||
|
elseif s._look==2 then
|
|||
|
s._look=3
|
|||
|
return _('Я нашёл ящики с запасными руками для роботов. Правда только левыми.')
|
|||
|
elseif s._look==3 then
|
|||
|
s._look=4
|
|||
|
take(sparehand)
|
|||
|
return _('Наконец, я нашёл ящики с правыми руками роботов.')
|
|||
|
else
|
|||
|
return _('Я уже нашёл то что мне было нужно.')
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
sparehand=obj{
|
|||
|
nam=_('Запасная рука'),
|
|||
|
dsc=_('Рядом с дверью отсека №20 лежит запасная правая {рука} робота.'),
|
|||
|
tak=_('Я взял руку.'),
|
|||
|
inv=function(s)
|
|||
|
if not s._not then
|
|||
|
return _('Правая рука робота. Я нашёл её на складе.')
|
|||
|
else
|
|||
|
return _('Правая рука.')
|
|||
|
end
|
|||
|
end,
|
|||
|
use=function(s,w)
|
|||
|
if w==cell20 and not s._not then
|
|||
|
drop(s,cell20)
|
|||
|
return _('Я положил запасную руку рядом с дверью отсека №20. Теперь можно отправляться в резервный криоблок.')
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
sparecrioblock=room{
|
|||
|
nam=_('Резервный криоблок'),
|
|||
|
pxa = {
|
|||
|
{ "door4", 10 },
|
|||
|
{ "panel", 220 },
|
|||
|
{ "crio", 300 }
|
|||
|
},
|
|||
|
dsc=_('Я нахожусь в резервном криоблоке.'),
|
|||
|
obj={'sparecapsule','sparecabinet'},
|
|||
|
way={'liftinside'},
|
|||
|
}
|
|||
|
sparecapsule=obj{
|
|||
|
nam=_('Капсулы'),
|
|||
|
dsc=_('Здесь находятся резервные {капсулы} для криосна.'),
|
|||
|
act=function()
|
|||
|
if have(cloth) then
|
|||
|
return _('Прежде чем погружаться в криосон необходимо раздеться. Складки одежды могут навредить моему телу.')
|
|||
|
else
|
|||
|
walk(last)
|
|||
|
end
|
|||
|
end,
|
|||
|
}
|
|||
|
sparecabinet=obj{
|
|||
|
nam=_('Шкаф'),
|
|||
|
dsc=_('Напротив капсул стоят {шкафы}.'),
|
|||
|
act=_('Обычные металлические шкафы для личных вещей.'),
|
|||
|
}
|
|||
|
last=room{
|
|||
|
nam=_('Резервный криоблок'),
|
|||
|
dsc=_('Напоследок, оглядев криоблок, я закрыл капсулу и погрузился в долгий сон, наполненный виртуальной жизнью...'),
|
|||
|
act=function()
|
|||
|
walk(epilogue)
|
|||
|
end,
|
|||
|
obj={vobj('next','{'.._('Далее')..'}')},
|
|||
|
}
|
|||
|
epilogue=room{
|
|||
|
nam=_("Отсек №21"),
|
|||
|
dsc=_('Я -- вахтенный робот WR020. Раз в сто лет я выхожу из режима гибернации и несу на корабле вахту на протяжении года, а потом снова отключаюсь. Куда корабль летит я не знаю -- этого нет в моих банках памяти. Но я знаю, что весь экипаж в глубокой криозаморозке.^^И вот вновь настала моя очередь дежурить. Я включаюсь...'),
|
|||
|
enter=function()
|
|||
|
sparehand._not=true
|
|||
|
inv():del(wrench)
|
|||
|
inv():disable_all()
|
|||
|
objs(cell21):del(robot)
|
|||
|
cell20._opened=true
|
|||
|
cell21._opened=nil
|
|||
|
end,
|
|||
|
act=function()
|
|||
|
walk(wakeup)
|
|||
|
end,
|
|||
|
obj={vobj('next', '{'.._('Далее')..'}')}
|
|||
|
}
|
|||
|
wakeup=room {
|
|||
|
nam=_("Пробуждение"),_s=1,_f=0,
|
|||
|
dsc=function(s) return s._dsc end,
|
|||
|
_dsc=_([[Я только что вышел из режима гибернации. Необходимо запустить {diag|программу диагностики}.^]]),
|
|||
|
timer=function(s)
|
|||
|
s._f=s._f+1;
|
|||
|
if s._f==1 then
|
|||
|
s._dsc=s._dsc.."^"..s.diags[s._s];
|
|||
|
elseif s._f>1 and s._f<5 then
|
|||
|
s._dsc=s._dsc..".";
|
|||
|
elseif s._f==5 then
|
|||
|
if s._s==4 then
|
|||
|
s._dsc=s._dsc.._(" ошибка! отсутствует правая рука!");
|
|||
|
timer:stop();
|
|||
|
put(vobj('next','{'.._('Продолжить')..'}'))
|
|||
|
else
|
|||
|
s._dsc=s._dsc.." ".._("нормально");
|
|||
|
s._f=0;
|
|||
|
s._s=s._s+1;
|
|||
|
end
|
|||
|
end
|
|||
|
walk(wakeup);
|
|||
|
end,
|
|||
|
act=function()
|
|||
|
walk(e_cell21)
|
|||
|
end,
|
|||
|
diags={_("Банки памяти"),_("Центральный процессор"),_("Зрительные окуляры"),_("Моторика")},
|
|||
|
obj ={xact("diag",code[[timer:set(500)]])}
|
|||
|
}
|
|||
|
_endgame=false;
|
|||
|
e_cell21=room{
|
|||
|
nam=_('Отсек №21'),
|
|||
|
enter=function() _endgame=true; end,
|
|||
|
pxa = {
|
|||
|
{ "door1", 189 }
|
|||
|
},
|
|||
|
dsc=_('Я нахожусь в отсеке №21.'),
|
|||
|
way={'techblock'},
|
|||
|
}
|
|||
|
hend=room{
|
|||
|
nam=_('Конец'),
|
|||
|
dsc=_('Я прикрутил руку и спокойно начал нести свою вахту.'),
|
|||
|
enter=function()
|
|||
|
mute_()();
|
|||
|
complete_("brokencycle")();
|
|||
|
inv():disable_all()
|
|||
|
end,
|
|||
|
act = gamefile_("meteor.lua"),
|
|||
|
obj = { vobj("next", txtc("^{".._('Продолжение').."...}")) }
|
|||
|
}
|