1
0
Fork 0
mirror of https://gitlab.com/Oreolek/duel.git synced 2024-06-23 18:40:54 +03:00

Выделил отдельно элементы интерфейса

This commit is contained in:
Alexander Yakovlev 2017-02-26 16:45:05 +07:00
parent 58eec7eb0b
commit a45374507b
3 changed files with 104 additions and 101 deletions

107
main3.lua
View file

@ -2,6 +2,8 @@
--$Version:1.0
require "format"
require "dbg"
require 'ui'
require 'tools'
declare "char" ({})
format.dash = true
@ -16,105 +18,6 @@ format.para = true
-- 4. Отключить автосписок инвентаря в области, собственно, инвентаря
-- 5. вернуть txtem() и вообще функции форматирования
init = function ()
map = obj {
nam = "Карта",
inv = function()
walk('map')
end
}
take(map)
quests = obj {
nam = "Квесты",
inv = function()
walk('quests')
end
}
take(quests)
inventory = obj {
nam = "Инвентарь",
inv = function()
walk('inventory')
end
}
take(inventory)
char.act = nil
end
obj {
nam = 'back',
act = function()
return walkout()
end
}
local markers = {
chos = "626,666",
}
room {
nam = 'map',
disp = "Карта",
hideinv = true,
enter = function (here, from)
char.lastroom = from.nam
end,
pic = function()
local map = 'images/satellite.jpg'
if markers[char.lastroom] then
map = map .. ';images/marker.png@' .. markers[char.lastroom]
end
return map
end,
decor = [[
Вы сверяетесь с картой.^^
{back|Назад}
]],
obj = {'back'}
}
dlg {
nam = 'quests',
disp = "Квесты",
hideinv = true,
decor = [[
Вы вспоминаете обо всём, что нужно сделать.^^
]],
obj = {{
{
true,
cond = function()
return char.act == nil
end,
'Нет активных квестов',
'Пройдите чуть подальше по сюжету и возвращайтесь.'
},
{
true,
cond = function()
return char.act == 1 and char.kathy == true
end,
'Найти дом Павла',
'Вы должны найти дом Павла при помощи своего проводника и попросить у него доступ в мастерскую.'
},
{
true,
'Назад',
function() walkout() end,
},
}}
}
room {
nam = 'inventory',
disp = "Инвентарь",
hideinv = true,
decor = function()
local dsc = 'Пока что ваши карманы пусты.'
return dsc..'^^{back|Назад}'
end,
obj = {'back'}
}
dlg {
nam = 'main',
dsc = [[
@ -282,7 +185,7 @@ dlg {
nam = 'start4',
dsc = function()
return [[
Комбайн оказался старым, очень старым.
Комбайн оказался ещё довоенным.
Вы копались не меньше часа, пока не нашли износившийся программаторный блок.^^
-- Ну что же, надо чинить. Случай гарантийный, всё за счёт фирмы. Но придётся забрать в город, в мастерскую.^^
@ -321,6 +224,7 @@ dlg {
obj = {{
onempty = function()
char.act = 1
p "Она отворачивается. Видимо, разговор закончен."
walk('chos')
end,
{'Привет.', 'Привет.'}
@ -366,7 +270,8 @@ room {
disp = 'Дом Чо',
way = {'town', 'intersection'},
dsc = [[
Небольшой дом с большой пашней.
Вы стоите перед небольшим домом.
Отсюда видна бесконечная пашня, по которой ходят фермерские роботы.
]]
}
room {

View file

@ -1,3 +1,28 @@
init = function ()
map = obj {
nam = "Карта",
inv = function()
walk('map')
end
}
take(map)
quests = obj {
nam = "Квесты",
inv = function()
walk('quests')
end
}
take(quests)
inventory = obj {
nam = "Инвентарь",
inv = function()
walk('inventory')
end
}
take(inventory)
char.act = nil
end
engineer = function()
if char.charural == true then
return 'инженеры'

73
ui.lua Normal file
View file

@ -0,0 +1,73 @@
obj {
nam = 'back',
act = function()
return walkout()
end
}
local markers = {
chos = "626,666",
}
room {
nam = 'map',
disp = "Карта",
hideinv = true,
enter = function (here, from)
char.lastroom = from.nam
end,
pic = function()
local map = 'images/satellite.jpg'
if markers[char.lastroom] then
map = map .. ';images/marker.png@' .. markers[char.lastroom]
end
return map
end,
decor = [[
Вы сверяетесь с картой.^^
{back|Назад}
]],
obj = {'back'}
}
dlg {
nam = 'quests',
disp = "Квесты",
hideinv = true,
decor = [[
Вы вспоминаете обо всём, что нужно сделать.^^
]],
obj = {{
{
true,
cond = function()
return char.act == nil
end,
'Нет активных квестов',
'Пройдите чуть подальше по сюжету и возвращайтесь.'
},
{
true,
cond = function()
return char.act == 1 and char.kathy == true
end,
'Найти дом Павла',
'Вы должны найти дом Павла при помощи своего проводника и попросить у него доступ в мастерскую.'
},
{
true,
'Назад',
function() walkout() end,
},
}}
}
room {
nam = 'inventory',
disp = "Инвентарь",
hideinv = true,
decor = function()
local dsc = 'Пока что ваши карманы пусты.'
return dsc..'^^{back|Назад}'
end,
obj = {'back'}
}