diff --git a/london.lua b/london.lua --- a/london.lua +++ b/london.lua @@ -565,4 +565,56 @@ starlight_dlg = dlg { {14, always = true, "Вы можете посмотреть эти бумаги? Вам знакомы эти места? [Показать Джозефу документы отца]", [["Так вот зачем вы здесь! Я догадывался. Давайте ваши бумаги сюда", - Джозеф выхватывает документы из ваших рук и бегло просматривает их. Почесав голову, он говорит: "Одно из этих мест я знаю". Он сообщает вам адрес склада 18. ]], code [[ warehouse18_found = true; poff(14); ]]}; {15, always = true, "Мне пора. ", [[Джозеф Старлайт отворачивается к столу: "До встречи". ]], code [[ back(); ]]}; }; +}; + +--[[ + Банк +]] +london_bank_street = room { + nam = "london_bank_street"; + disp = "Улица"; + dsc = [[На улице перед банком людно -- прохожие спешат по своим делам, то и дело натыкаясь друг на друга и разбегаясь в разные стороны. Среди этой суеты возвышается, словно игнорируя ее, здание, высокое и широкое, с резными колоннами, мраморными ступенями, ведущими к широким и тяжелым дверям из красного дерева и позолоченной табличкой над входом, гласящей, что перед лицезреющими это ни что иное, как банк. ]]; + way = { + kh_vroom("В банк", "london_bank"); + }; + entered = function(s) + move(char_coachman, here()); + end; +}; + +london_bank = room { + nam = "london_bank"; + disp = "Банк"; + dsc = [[Внутри банка прохладно и светло. ]]; + obj = { + "bank_clerks"; + "bank_guard"; + }; +}; + +bank_clerks = npc { + nam = "bank_clerks"; + dsc = [[Людей внутри почти нет, не считая нескольких скучающих за мраморной стойкой {клерков} ]]; + dlg = "bank_clerks_dlg"; +}; + +bank_clerks_dlg = dlg { + nam = "bank_clerks_dlg"; + disp = "Клерк"; + entered = [[Вы подходите к одному из клерков. Молодой человек в аккуратном пиджаке и галстуке уставляет свой взор на вас и спрашивает: "Чем я могу помочь?"]]; + phr = { + {"[Передать сберкнижку]Я хотел бы снять деньги со своего счета. ", [[Вы протягиваете клерку сберкнижку. Он просматривает ее и отвечает: "Конечно. Минутку". Он уходит из зала и через несколько минут возвращается с мешочком монет. ]], code [[ pl.money = pl.money + 150; ]]}; + {always=true; "Я вернусь позже. ", [[Клерк возвращается к своим делам. ]], code [[ back(); ]]} + }; +}; + +bank_guard = npc { + nam = "bank_guard"; + dsc = "и одинокого {охранника}, застывшего у входа."; + phrases = { + [[Охранник вежливо приветствует вас: "Добро пожаловать, господин". ]]; + [[Охранник пожимает плечами: "Я ничем не могу вам помочь". ]]; + [[Охранник зевает. ]]; + [[Охранник задумчиво чешет подбородок. ]]; + }; }; \ No newline at end of file diff --git a/main.lua b/main.lua --- a/main.lua +++ b/main.lua @@ -113,8 +113,7 @@ player_drake = player { disp3 = "Дрейку"; where = 'port'; - obj = {'item_umbrella', 'item_charts', 'item_note_1', 'item_money', - }; + obj = {'item_umbrella', 'item_charts', 'item_note_1', 'item_money', }; pay = function(s, c) if (s.money >= c) then diff --git a/travel.lua b/travel.lua --- a/travel.lua +++ b/travel.lua @@ -1,7 +1,6 @@ --[[ Кучер, который будет за деньги возить вас по локациям первой части ]] ---TODO случайный ответ кучера из нескольких вариантов char_coachman = obj { nam = "coachman"; disp = "экипаж"; @@ -33,6 +32,9 @@ coachman_dlg = dlg { hideinv = true; entered = function(s) poff(1, 2, 3, 4, 5, 6, 7); + if (where(char_coachman) ~= london_bank_street) then + pon(7); + end; if (where(char_coachman) ~= port_street) then pon(6); end; @@ -119,6 +121,17 @@ coachman_dlg = dlg { end; end }, + {7, always = true, "В банк (5 монет). ", + function (s) + if (pl:pay(5)) then + walk 'london_bank_street'; + return coachman_responses_ok[rnd(#coachman_responses_ok)]; + else + back(); + return coachman_responses_fail[rnd(#coachman_responses_fail)]; + end; + end + }, {255, always = true, "Я передумал. ", function(s) back() end}