From 66ed98e14647a83d8801a559eab93d8eacfb2c7a Mon Sep 17 00:00:00 2001 From: vvollo <88790460+vvollo@users.noreply.github.com> Date: Mon, 4 Oct 2021 21:38:17 +0300 Subject: [PATCH] Update room14.lua fixes #3 --- room14.lua | 36 +++++++++++++++++++++++++++++++----- 1 file changed, 31 insertions(+), 5 deletions(-) diff --git a/room14.lua b/room14.lua index 34c1e4a..e046328 100644 --- a/room14.lua +++ b/room14.lua @@ -350,8 +350,12 @@ obj { -- p("Судя по размерам, платье для этого не предназначено."); -- -- else + if not _"room14_dress".worn then p"Ты разделась и повесила свою одежду на вешалку. А затем, осторожно взяв вечернее платье, надела его."; _"room14_dress".worn = true; + else + p"Ты и так одета в него."; + end; -- end end; @@ -364,8 +368,12 @@ obj { end end; before_Disrobe = function(s) + if _"room14_dress".worn then p"Отвернувшись от зеркала и встав лицом к стене, ты сняла вечернее платье. А затем повесила его на вешалку и переоделась в свою одежду."; _"room14_dress".worn = false; + else + return false; + end; end; @@ -392,9 +400,13 @@ obj { end end; before_Disrobe = function(s) + if not _"room14_dress".worn then p"Ты уже не в том возрасте, чтобы ходить голой по лестницам."; + else + return false; + end; end; - }:attr'scenery' +}:attr'concealed, clothing' -- зеркало @@ -573,6 +585,13 @@ obj { end end end; + before_LookUnder = function(s) + if not s.moving then + p"Ковёр слишком плотно прилегает к полу, ничего не разглядеть."; + else + p"Нет необходимости. Край ковра уже откинут."; + end; + end; ['before_Walk,Enter'] = function(s) p"Это бессмысленно. Ты и так стоишь на ковре на полу."; end; @@ -900,6 +919,13 @@ obj { description = "Небольшая толстая деревянная платформа в центре которой есть треугольное углубление."; seen = false; door = false; + before_Receive = function(s, w) + if w ~= _"piramidekey" then + p("Ты положила ", w:noun'вн', " на платформу. Но ", w:noun'им', " совершенно не подходит для треугольного углубления, поэтому ты забрала ", w:noun'вн', " обратно."); + else + return false + end + end; after_Receive = function(s, w) if w == _"piramidekey" then p[[Как только ты положила пирамидальный ключ на платформу, он бесшумно исчез внутри неё. @@ -953,7 +979,7 @@ obj { 'свидетел', 'наследств','наследн','завещ','богат', 'тимо йокинен', - 'особняк', 'ковё',"ковр", "плать"}; + 'особняк', 'ковё', 'кове', 'ковр', 'плать'}; ['before_Consult,Search'] = function(s, w) if w == nil then @@ -973,13 +999,13 @@ obj { end if found == 1 or found == 2 or found == 27 then p"Ты поискала в документах упоминания мужа тёти и обнаружила, что его звали Тимо Йокинен, и он был миллиардером из Финляндии. "; - elseif found == 31 then + elseif found == 32 then p"Ты нашла свадебное фото: вместо традиционного белого тётя была на свадьбе в вечернем платье."; - elseif found == 29 or found == 30 then + elseif found == 29 or found == 30 or found == 31 then p[[Согласно квитанции в документах роскошный персидский ковёр был приобретён у некоего мистера Черепнакольского за весьма приличную сумму.]]; elseif found == 3 then p"Ты почитала документы в папке и поняла, что они посвящены убийству мужа тёти Агаты и самоубийству их горничной."; - elseif found >= 4 and found <= 9 or found == 22 or found == 31 then + elseif found >= 4 and found <= 9 or found == 18 or found == 22 then p"Согласно папке, преступление произошло спустя несколько лет после свадьбы тёти. Судя по свидетельствам тёти, убийца вечером проникла в их спальню и попыталась застрелить тётю. Но вместо неё погиб муж, пытаясь отобрать пистолет убийцы. После чего убийца покончила с собой на пороге комнаты. О внебрачной связи своего мужа тётя узнала только после того, как на пороге их спальни появилась горничная."; elseif found == 10 then p'Ты нашла в документах следующее: "...никаких следов выстрела на руках горничной не осталось, поскольку она была в длинных атласных перчатках..."';