return"Моё отражение в зеркале выглядит как обычно. Ничего странного не происходит."
end
else
return"Меня закрутило, завертело и втянуло прямо в зеркало. Я снова оказалась в кладовке. Ну и чудеса..."
end
end;
-- Добавим описаний. Парсер же
before_Take="Слишком большое и тяжёлое. Невозможно сдвинуть.";
before_Smell="Пахнет морем. Странно, но так и есть.";
before_Taste="Это не съедобно.";
before_Touch="Гладкое и прохладное.";
}:attr"static",
-- Для парсера модельку лучше поподробнее :)
-- Я бы ещё источник света добавил для красоты %)
obj{
-"стена|стены";
description="Стены покрыты пыльной штукатуркой.";
before_Take="Взять стены? Как?";
before_Smell="Пахнет пылью.";
-- {#word...} это ещё одна магия метапарсера. Позволяет автоматически выводить глагол в нужной форме.
-- В основном применяется в библиотеках. Если не нравится, вписуй хардкод :)
before_Taste="{#Me/им} не {#word/хотеть,#me,нст} пробовать стены на вкус.";
before_Touch="Шершавые и пыльные стены.";
}:attr"scenery",
obj{
-"пол";
-- По аналогии со стенами
description="Каменный пол. Здесь явно не заморачивались с ремонтом.";
before_Take="Взять пол невозможно";
before_Smell="Пахнет пылью.";
before_Taste="{#Me/им} не {#word/хотеть,#me,нст} пробовать камни пола на вкус.";
before_Touch="Прохладный, слегка неровный камень.";
}:attr"scenery",
obj{
-"потолок";
description="Потолок покрыт голубой краской.";
before_Take="Взять потолок невозможно";
before_Smell="Не могу допрыгнуть, чтобы понюхать.";
before_Taste="Не дотянусь.";
before_Touch="Увы, не дотянусь.";
}:attr"scenery",
};
}
door{
-"люк";
nam="room4_hatch";
when_locked="В полу виден закрытый люк.";
when_open="В полу находится открытый люк.";
with_key="bonekey";
door_to=function(s)
ifhere()^"room4_kladovka"then
-- Горафу надо сказать, что сюда нужно вписнуть комнату как в d_to кладовки
return"room5_podval"
else
return"room4_kladovka"
end
end;
found_in={
"room4_kladovka",
-- Горафу надо сказать, что сюда нужно вписнуть комнату как в d_to кладовки
-- "room5_podval",
};
after_Unlock=function(s)
remove('bonekey');
mp.score=mp.score+1;
p"Ты отпираешь люк вниз, избавляясь от костяного ключа.";
end;
}:attr"openable,lockable,locked,static"
functionmermaid_sing()
localsongs={
[[Юныедевывцарствеподводном^
Живутнаслаждаясь,незнаязабот.^
Песнипоютонародесвободном.^
Втёмныхглубинахведутхоровод.]],
[[Юныедевывцарствеподводном^
Жемчугомлюбятсебяукрашать,^
Чтоперламутромбогатбесподобным,^
Иподлунойможетнежномерцать.]],
[[Юныедевыизцарстваподводного^
Мужчинзавлекаютпеснейлюбви.^
Чарамиголоса-дараприродного,^
Страстиогоньразжигаютвкрови.]],
[[Юныедевыизцарстваподводного^
Губятночноюпоройкорабли.^
Из-зажеланьяпознать,неуёмного,^
Секретыитайныверхнейземли.]],
}
song=song+1
ifsong>#songsthen
song=1
end
return"Раздаётся завораживающая песня русалки:^"..songs[song]
end
room{
nam="room4_ostrov";
title="За зеркалом";
dsc=function(s)
ifs:once()then
-- Сообщение при первом посещении комнаты
-- {#Me/падеж} вписует ГГ в соответствие с pl.word (задаётся в init() в main3.lua)
return"Всего лишь мельком я увидела своё отражение в старинном зеркале, и меня завертело, закружило, ослепило... Проморгавшись, я поняла, что оказалась совсем в другом месте."
else
-- При последующих осмотрах/посещениях
return"Маленький остров, представляющий собой цветочную поляну, окружённую водой."
before_Taste="{#Me/им} не {#word/хотеть,#me,нст} пробовать флейту на вкус.";
before_Touch="Гладкая и приятная на ощупь.";
["Blow,Use,Play"]=function(s)
ifs:once()then
mp.score=mp.score+1
enable"room4_mermaid"
return"На переливы флейты из воды вынырнула настоящая русалка."
else
returnmermaid_sing();
end
end;
},
obj{
-"цветок|роза/но";
nam="room4_flower";
dsc=false,
donated=false,
description="Прекрасная алая роза.";
Tear=function(s)
ifhave(s)then
-- if s.once then
-- Объясняем, что больше одного цветка не нужно или что-то такое
return"Мне больше не нужны цветы. Да и жаль рвать такую красоту."
else
take(s)
return"Я сорвала цветок."
end
end;
Show=function(s,w)
return"Русалка радостно кивает, и показывает на свои волосы."
end;
before_Give=function(s,w)
ifw^"room4_mermaid"then
ifnots.donatedthen
mp.score=mp.score+1
s.donated=true
place(s,here())
take"room4_sapfir"
take"room4_rybin"
take"room4_izymryd"
enable"room4_gems"
p"Я даю русалке цветок. Она мило краснеет и забирает розу, тут же украшая ею свои волосы. Взамен она протягивает мне три драгоценных камня: изумруд, сапфир и рубин. Я с благодарностью принимаю их."
else
return"Русалке больше не нужны цветы."
end
else
return"Кому-кому?"
end
end;
},
-- Тоже моделька для антуражу. См. стены в кладовке :)
obj{
-"небо";
description="Ясное синее небо, ни облачка.";
before_Take="Взять небо? Как это возможно?";
before_Smell="Пахнет ветром и морем.";
before_Taste="Не дотянусь.";
before_Touch="Жаль, не дотянусь.";
}:attr"scenery",
obj{
-"солнце";
description="Яркое солнце, аж глазам больно на него смотреть.";
before_Take="Жаль нельзя запихнуть его в карман. Было бы здорово иметь своё карманное солнце.";
before_Smell="Отсюда я не могу понять, чем пахнет солнце.";
before_Taste="Не дотянусь.";
before_Touch="Жаль, не дотянусь.";
}:attr"scenery",
obj{
-"земля";
description="Земля заросла цветами. Присмотревшись, я замечаю среди кустов роз человеческие кости.";
before_Take="Мне не нужен здешний дёрн.";
before_Smell="Пахнет цветами и травой.";
before_Taste="Не хочу даже пробовать.";
before_Touch="Немного влажная, будто не так давно шёл дождь. Или был прилив, мхм...";
}:attr"scenery",
obj{
-"трава";
description="Земля заросла цветами. Присмотревшись, я замечаю в траве человеческие кости.";
before_Take="Мне не нужна трава.";
before_Smell="Пахнет цветами и травой.";
before_Taste="Не хочу даже пробовать.";
before_Touch="Немного влажная, будто не так давно шёл дождь.";
return"Красивые драгоценные камни, что дала мне русалка."
else
returnfalse
end
end;
Show=function(s,w)
return"Русалка кивает, и показывает пальчиком на висящее в воздухе зеркало."
end;
before_Take="Они уже у меня.";
before_Smell="Пахнет красотой.";
before_Taste="На вкус, как стекло.";
before_Touch="Прохладные с идеальной огранкой.";
}:attr"scenery":disable(),
obj{
-"русалка|ресницы|глаза|волосы|грудь";
nam="room4_mermaid";
description="Прекрасная русалка с длинными русыми волосами и большими томными глазами, обрамлёнными длинными пушистыми ресницами. Грудь прикрыта большими раковинами, скрепленными жемчугом. Морская дева по пояс высунулась из воды, и с интересом вас рассматривает.";