diff --git a/autoscript b/autoscript index 3a3c035..7b1231b 100644 --- a/autoscript +++ b/autoscript @@ -23,6 +23,7 @@ включить робота выключить робота включить робота +обнять робота вырезать К из булавки выйти юг @@ -31,5 +32,5 @@ осмотреть дверь вырезать И из щи съесть щи -выйти -открыть дверь +#выйти +#юг diff --git a/custom_parser.lua b/custom_parser.lua index c81bbe1..20ae331 100644 --- a/custom_parser.lua +++ b/custom_parser.lua @@ -26,6 +26,7 @@ mp.msg.Jump.JUMP = "Прыг-скок. Не помогает." mp.msg.Consult.CONSULT = "{#You} не {#g/находишь,находите} ничего подходящего." mp.msg.Cut.CUT = "Резать {#first/вн} бессмысленно." mp.msg.Cut.CUT2 = "Резать {#first/вн} {#second/тв} бессмысленно." +mp.msg.Eat.EAT = "{#You} {#g/съедаешь,съедаете} {#first/вн}." local function split(s, sep) if sep == nil then diff --git a/main3.lua b/main3.lua index b306cb3..69f6e00 100644 --- a/main3.lua +++ b/main3.lua @@ -1,5 +1,5 @@ --$Name: Полёт в Петербург$ ---$Version: 1.2.4$ +--$Version: 1.2.5$ --$Author:Александр Яковлев$ require "fmt" diff --git a/rooms/objects.lua b/rooms/objects.lua index d650cd8..496e64a 100644 --- a/rooms/objects.lua +++ b/rooms/objects.lua @@ -13,11 +13,35 @@ obj { ['рука/пр'] = 'руке'; }: attr 'essential' +obj { + -"тарелка/жр"; + canonical = 'тарелка'; + nam = 'plate'; + description = 'Пустая тарелка. Когда-то в ней были щи.'; +}: dict { + ['тарелка/рд'] = 'тарелку'; + ['тарелка/дт'] = 'тарелке'; + ['тарелка/вн'] = 'тарелку'; + ['тарелка/тв'] = 'тарелкой'; + ['тарелка/пр'] = 'тарелке'; +} + obj { -"тарелка/жр|щи/ср,мн"; canonical = 'щи'; nam = 'shi'; description = 'Тарелка с остывшими щами. Выглядит не очень аппетитно.'; + before_Eat = function(s) + s:remove(); + put('plate', here()); + return '{#You} жадно {#g/съедаешь,съедаете} щи без помощи столовых приборов. Не лучший обед в пути, но очень сытный.'; + end; +}: dict { + ['щи/рд'] = 'щи'; + ['щи/дт'] = 'щам'; + ['щи/вн'] = 'щи'; + ['щи/тв'] = 'щами'; + ['щи/пр'] = 'щах'; }: attr 'edible' obj { diff --git a/rooms/pantry.lua b/rooms/pantry.lua index f4f1c23..fde7d67 100644 --- a/rooms/pantry.lua +++ b/rooms/pantry.lua @@ -22,11 +22,21 @@ room { end p 'Это маленькая комнатка, мягко подсвеченная светильниками внутри стен. В углу стоит робот-уборщик. Единственная дверь на юге закрыта ярким голубым щитом.'; end; - s_to = function() - if here():has('shield') then + cant_go = function(s, to) + if to == 's_to' then + if here():srch('shield') then + return 'Дверь закрыта и заблокирована прочным щитом.'; + end + walk('end'); + else + return [[Там нет ничего интересного.]] + end + end; + before_Exit = function() + if here():srch('shield') then return 'Дверь закрыта и заблокирована прочным щитом.'; end - walk('end'); + return walk('end'); end; obj = { 'shield', @@ -151,6 +161,7 @@ obj { here().dirty = false; end end; + before_Hug = '{#You} {#g/обнимаешь,обнимаете} всеми забытого робота. Робот не показывает этого, но внутри он рад.'; obj = { 'robot_hand', 'button'