room { nam = 'chos', disp = 'Богатый дом', way = {'intersection'}, decor = [[ Вы стоите перед большим {chos_house|напечатанным домом.} Отсюда начинается большая пашня, по которой ходят фермерские роботы.^^ Возле дома в удобном гамаке спит {angelina|старушка.} ]], obj = { obj { nam = 'chos_house', disp = 'дом', take = function() pn('Вы не знаете, как можно '..fmt.em('взять')..' двухэтажный дом.') return false end, act = [[К типовому двухэтажному дому из нанотрубок со временем допечатывали несколько модулей. Часть второго этажа выглядит совсем новой — возможно, её недавно расширили.]], }; obj { nam = 'angelina', take = function() pn('Старушке это не понравится.') return false end, disp = function() if not visited('cho_dlg2') then return 'старушка' else return 'Ангелина' end end, act = 'Старушка мирно посапывает, раскачиваясь в гамаке.', talk = function() return walk('cho_dlg'); end, } } } -- Диалог с Анжелиной Чо dlg { nam = 'cho_dlg', disp = false, dsc = function(s) if not visited('cho_dlg2') then return [[ -- А? Что? Вы… вы ]]..engineer()..[[ из фирмы? Нет, я не сплю.^^ Она встаёт и протирает глаза. ]] end s:reset '#разговор' return [[-- А? Это вы? Извините, я задремала.]] end, decor = [[ Старушка внимательно смотрит на вас. ]], obj = { { { function() return 'Откуда вы поняли, что '..pronoun_1()..' — '..engineer() end, 'Я же вас и вызывала. У нас комбайн сломан. Вы чините комбайны?' }; { always = true, fmt.em('Как вас зовут?'), 'Ангелина. Я вызывала мастера по гарантии.', next = '#комбайн-начало' } }; { '#комбайн-начало', { 'Что случилось?', '-- Мы прогрели его весной, а он и не едет. Вы же '..engineer()..', вы сможете его починить?' }; { fmt.em('Можно посмотреть комбайн?'), function() return walk('cho_dlg2') end, }; }; { '#разговор', { always = true, 'Вы не могли бы показать мне комбайн ещё раз?', 'Она приводит вас к комбайну. Машина в том же сломанном состоянии. Вы возвращаетесь.' }; { 'Вы давно здесь живёте?', 'Она пожимает плечами:^^-- Лет тридцать. Начинали всего с одним роботом.' }; { fmt.em('Ничего. Доброе утро.'), function() pn('-- И вам того же.^^Она закрывает глаза и засыпает.') return walk('chos_house') end, }; } } } dlg { nam = 'cho_dlg2', disp = false, dsc = [[-- Да-да, конечно.^^ Она провела вас в большой сарай, где пылился высокий автоматический сельхозкомбайн. -- Вот и наш больной. Только вы, пожалуйста, можете его починить побыстрее, а то у нас урожай уже скоро. ]], decor = [[ Старушка Чо внимательно смотрела на вас. В её глазах вы видели, что от починки этого комбайна зависело несколько жизней. ]], obj = { { onempty = function() walk('start4') end, { 'Что точно случилось?', '-- Мы его заводим, а он замёрз! После зимы у мужа обычная машина не заводится, не то что роботы.' }, { 'У вас же столько роботов. Неужели вы не справитесь без комбайна?', [[-- Всего семеро, и они обычно упаковывают и складывают. Если они будут ещё и косить, мы не управимся до осени. Урожай сгниёт под дождями.]] }, { 'Да, '..pronoun_1()..' -- '..engineer()..[[. Но я могу только определить проблему, у вас же нет мастерской или инструментов.]], '-- Вы знаете, я могу попросить соседей. У Павла в подвале во время войны была мастерская.' }, { 'Давно он у вас?', [[-- Ну, лет двадцать уже, наверное. То есть, я хотела сказать, девятнадцать. Гарантия же ещё действует, правда?]] } } } } -- Починка комбайна dlg { nam = 'start4', disp = false, dsc = function() char.quests.chos = 1 return [[ Комбайн оказался ещё довоенным. Вы копались не меньше часа, пока не нашли износившийся программаторный блок.^^ -- Ну что же, надо чинить. Случай гарантийный, всё за счёт фирмы. Но придётся забрать в город, в мастерскую.^^ -- Послушайте. У меня сестра работает в Берёзовке, я знаю что нужно. Вас устроит… десять тысяч? И вы почините всё здесь.^^ Вы задумались. На десять «кусков» можно было бы купить новый комбайн - конечно, не такой мощный, но если продать золото на Луну… Был один хитрый выход.^^ -- Давайте так: ]]..pronoun_1()..[[ здесь ещё ]]..plural('задерживаюсь', 'задерживаемся')..[[. Возможно, здесь, на месте, что-то получится. Но после урожая -- сразу в мастерскую, нужен основательный ремонт. У кого, вы говорили, здесь мастерская?^^ -- Спасибо! -- она улыбнулась. -- Просто найдите Павла, он поможет. ]] end, decor = [[ Вы вернулись к дому. Стоит ли спросить что-то ещё? ]], obj = {{ onempty = function() char.quests.kathy = 0 -- place('kathy', here()) -- lifeon('kathy') p "У вас больше нет идей. Видимо, разговор закончен." walk('chos') end, {'Где живёт этот Павел?', [[Это такой зелёный пряничный домик, вы его не пропустите. Как позвоните в домофон, Паша вас пустит. Он — добрый друг нашей семьи.]]} }} } obj { nam = 'kathy', disp = 'Катя', dsc = "Рядом с вами стояла {Катя}.", talk = function() return walk('kathy_dlg') end, life = function(self) if player_moved() then place('kathy', here()) end local reactions = { 'Катя зевнула.'; 'Катя стучала серым кроссовком.'; 'Катя смотрела на что-то в небе.'; } if rnd(10) > 4 then -- вероятность реакции 40% p(rndstr(reactions)) return end end, take = function() pn 'Плохая идея.' return false end, act = 'Чумазая китаянка со спутанными волосами.' } dlg { nam = 'kathy_dlg'; decor = [[ Вы стояли и смотрели на Катю. А Катя смотрела на вас. ]]; obj = {{ onempty = function() return "Она отворачивается. Видимо, разговор закончен." end, { '#привет', 'Привет.', function() disable '#привет' return 'Привет.' end }; { 'Покажешь дорогу до этого Павла?', function() walk 'pavels' return 'Ну пошли.' end, }; { 'Ты можешь подождать где-нибудь? Кое-какие дела.', function() lifeoff 'kathy' return '-- Ну хорошо. Я буду у себя дома, если что.' end, }; { always = true, function() return pronoun_1()..' '..plural('хочу', 'хотим')..' кое-что посмотреть. Можешь подождать здесь?' end, function() lifeoff('kathy') place('kathy', 'chos_house') return "Хорошо. Но я лучше вернусь домой, бабушка будет волноваться." end } }} }