Библиотека дверей
This commit is contained in:
commit
e4b15e00f7
3
README.md
Normal file
3
README.md
Normal file
|
@ -0,0 +1,3 @@
|
|||
# Дополнительные библиотеки для метапарсера INSTEAD
|
||||
|
||||
* [Двери](doors.lus) - автосписок закрытых дверей в посещённых комнатах
|
29
doors.lua
Normal file
29
doors.lua
Normal file
|
@ -0,0 +1,29 @@
|
|||
Verb {
|
||||
"#doors",
|
||||
"двери",
|
||||
"Doors"
|
||||
}
|
||||
|
||||
function mp:Doors()
|
||||
local doors = std.list {};
|
||||
std.for_each_obj(function(v)
|
||||
-- посещённые комнаты
|
||||
if (v and v:type 'room' and visited(v)) then
|
||||
v.obj:for_each(function(d)
|
||||
if (d and d:has('locked')) then
|
||||
doors:add(d.nam)
|
||||
end
|
||||
end)
|
||||
end
|
||||
end)
|
||||
if (#doors == 0) then
|
||||
p("Пока что вы не встречали запертых дверей.");
|
||||
else
|
||||
pn('В комнатах, которые вы посещали, всё ещё закрыты:')
|
||||
doors:for_each(function(v)
|
||||
p(' '..where(v).title)
|
||||
p(' - ')
|
||||
pn(_(v):noun('им'))
|
||||
end)
|
||||
end
|
||||
end
|
Loading…
Reference in a new issue