diff --git a/locations/abandoned.lua b/locations/abandoned.lua index 1ecef0d..aa90e01 100644 --- a/locations/abandoned.lua +++ b/locations/abandoned.lua @@ -286,7 +286,7 @@ obj { disp = 'автомобиль'; dsc = 'Недалеко от вас припаркован ваш {автомобиль.}'; tak = function() - enable('end-game') + char.can_leave = true p 'Вы вынимаете ключи из замка зажигания. Больше никто не угонит авто просто так.' return true end diff --git a/locations/chos.lua b/locations/chos.lua index d4eb8e1..3dbef37 100644 --- a/locations/chos.lua +++ b/locations/chos.lua @@ -223,7 +223,21 @@ dlg { onempty = function() return "Она отворачивается. Видимо, разговор закончен." end, - {'Привет.', 'Привет.'}; + { + '#привет', + 'Привет.', + function() + disable '#привет' + return 'Привет.' + end + }; + { + 'Покажешь дорогу до этого Павла?', + function() + walk 'pavels' + return 'Ну пошли.' + end, + }; { always = true, function() diff --git a/tools.lua b/tools.lua index 573cc45..fb4f7b4 100644 --- a/tools.lua +++ b/tools.lua @@ -11,6 +11,7 @@ init = function () char.wounds = 0 char.actions = 50 char.reputation = 50 + char.can_leave = false place(menu { nam = "Персонаж", menu = function() @@ -37,11 +38,16 @@ init = function () }, me()) place(menu { nam = "end-game", - disp = fmt.b("Уехать"), + disp = function() + if char.can_leave then + return fmt.b("Уехать") + end + return false + end, menu = function() walk('ending') end - }:disable(), me()) + }, me()) char.act = nil place( proxy_menu { disp = 'ОСМОТРЕТЬ';