From 275c003991db08d107cddbb5aede3da34fe2f7fa Mon Sep 17 00:00:00 2001 From: Alexander Yakovlev Date: Fri, 14 May 2010 11:46:45 +0700 Subject: [PATCH] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB=20=D0=BE?= =?UTF-8?q?=D0=B4=D0=B8=D0=BD=20=D1=81=D0=BF=D0=BE=D1=81=D0=BE=D0=B1=20?= =?UTF-8?q?=D0=B7=D0=B0=D0=BA=D0=BE=D0=BD=D1=87=D0=B8=D1=82=D1=8C=20=D0=BF?= =?UTF-8?q?=D0=B5=D1=80=D0=B2=D1=83=D1=8E=20=D1=87=D0=B0=D1=81=D1=82=D1=8C?= =?UTF-8?q?.=20=D0=A1=D0=BE=D0=B2=D0=B5=D1=80=D1=88=D0=B5=D0=BD=D0=BD?= =?UTF-8?q?=D0=BE=20=D0=BC=D0=BD=D0=B5=20=D0=BD=D0=B5=20=D0=BD=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=B8=D1=82=D1=81=D1=8F,=20=D0=BD=D0=BE=20=D0=BF=D1=81?= =?UTF-8?q?=D0=BC=D0=BE=D1=82=D1=80=D0=B8=D0=BC=20=D1=87=D1=82=D0=BE=20?= =?UTF-8?q?=D1=81=D0=BA=D0=B0=D0=B6=D1=83=D1=82=20=D0=BF=D0=BE=D1=82=D0=BE?= =?UTF-8?q?=D0=BC=20=D0=B1=D0=B5=D1=82=D0=B0-=D1=82=D0=B5=D1=81=D1=82?= =?UTF-8?q?=D0=B5=D1=80=D1=8B.=20=D0=9F=D0=BE=D0=B4=D1=83=D0=BC=D0=B0?= =?UTF-8?q?=D1=8E=20=D0=BD=D0=B0=D0=B4=20=D0=B4=D0=B5=D0=BB=D1=8C=D1=82?= =?UTF-8?q?=D0=B0=D0=BF=D0=BB=D0=B0=D0=BD=D0=BE=D0=BC=20=D0=B2=20=D1=82?= =?UTF-8?q?=D0=BE=D0=BC=20=D0=B6=D0=B5=20=D0=B4=D1=83=D1=85=D0=B5=20=D0=B8?= =?UTF-8?q?=20-=20=D0=BC=D0=BE=D0=B6=D0=BD=D0=BE=20=D0=BF=D0=B5=D1=80?= =?UTF-8?q?=D0=B5=D1=85=D0=BE=D0=B4=D0=B8=D1=82=D1=8C=20=D0=BA=D0=BE=20?= =?UTF-8?q?=D0=B2=D1=82=D0=BE=D1=80=D0=BE=D0=BC=D1=83=20=D0=B0=D0=BA=D1=82?= =?UTF-8?q?=D1=83.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- objects.lua | 42 +++++++++++++++++++++++++++++++++++++++--- rooms.lua | 7 +++++++ 2 files changed, 46 insertions(+), 3 deletions(-) diff --git a/objects.lua b/objects.lua index f7ec49d..66c388f 100644 --- a/objects.lua +++ b/objects.lua @@ -36,13 +36,42 @@ rope = cobj{ } boat = cobj{ nam = 'лодка', - inv = 'Складная одноместная лодка с вёслами.', + inv = 'Складная одноместная лодка с вёслами. На верхней части одного из бортов нарисован человечек, из плеч которого выходят 4 линии.', fuse = function(this, that) if (that == 'stick') then inv():del('stick'); inv():del('boat'); inv():add('boat_with_stick'); return 'Вы раскладываете лодку и укрепляете на ней палку, как мачту.' + elseif (that == 'lock') then + inv():del('boat'); + inv():del('lock'); + inv():add('chute_lower'); + return 'Вы кладёте замок на стенку лодки так,чтобы совместить рисунки на них.' + end; + end, +} +chute_lower = cobj{ + nam = 'Лодка с замочком', + inv = 'Лодка с замочком на ней. На них изображен человек,из плеч которого выходят 4 длинных линии.', + fuse = function(this, that) + if (that == 'pot') then + inv():del('chute_lower'); + inv():del('pot'); + inv():add('chute'); + return goto('landing'); + end; + end, +} +chute_upper = cobj{ + nam = 'горшок с замочком', + inv = 'горшок с замочком на нём. На этой конструкции изображены 4 линии, которые входят в полукруг.', + fuse = function(this, that) + if (that == 'boat') then + inv():del('chute_upper'); + inv():del('boat'); + inv():add('chute'); + return goto('landing'); end; end, } @@ -77,7 +106,7 @@ rope_with_lock = cobj{ } pot = cobj{ nam = 'горшок', - inv = 'Пустой глиняный коричневый горшочек.', + inv = 'Пустой глиняный коричневый горшочек.На нижней части стенки нарисован полукруг.', fuse = function(this, that) if (that == 'waterskin') then inv():del('pot'); @@ -94,6 +123,11 @@ pot = cobj{ inv():del('black_powder'); inv():add('pot_with_powder'); return 'Вы заполняете горшок чёрным порохом.'; + elseif (that == 'lock') then + inv():del('pot'); + inv():del('lock'); + inv():add('chute_upper'); + return 'Вы кладёте замок под горшочек и совмещаете рисунки на них.' end; end, } @@ -116,7 +150,7 @@ stick = cobj{ } lock = cobj{ nam = 'амбарный замок', - inv = 'Амбарный навесной замок. Большой и увесистый.' + inv = 'Амбарный навесной замок. Большой и увесистый.На обратной стороне замка нарисовано 4 линии.' } club = cobj{ nam = 'дубина', @@ -186,6 +220,8 @@ plantain = cobj{ inv():del('plantain'); inv():add('compress'); return 'Вы заворачиваете листья в мокрый плащ и получаете лечебный компресс с листьями подорожника. Хотя немного не угадали с размером. '; + elseif (that == 'axe') then return 'Вы отрубаете кусочек от одного из листочков. У вас всё ещё в руках листья подорожника и топор.' + elseif (that == 'knife') then return 'Вы отрезаете кусочек от одного из листочков. У вас всё ещё в руках листья подорожника и топор.' end; end, } diff --git a/rooms.lua b/rooms.lua index 36a4209..43659ee 100644 --- a/rooms.lua +++ b/rooms.lua @@ -104,3 +104,10 @@ end_fall = room{ dsc = function() return txtem("Полёт Пера.")..[[^^В самый последний момент, когда до земли остаётся несколько метров, Джек останавливает полёт и начинает плавно спускаться.Голос в голове Джека возмущается: ^^"]]..comment_things()..'"' end, obj = {vway('повтор','{Повторить?}','falling')}, } +landing = room{ + nam = 'Мягкая посадка', + enter = function() + if have('chute') then return 'Вы совмещаете рисунки на трёх предметах и получаете рисунок: человек, из плеч которого выходят 4 длинных линии и заканчиваются в полукруге. В ту же секунду вы чувствуете, как из ваших плеч вырастают волшебные верёвки. Вы поднимаете глаза и видите над собой круглый купол. Вы медленно спускаетесь на землю.' end; + end, + dsc = '', +}