Changeset - 0fce3db719d0
[Not reviewed]
default
1 3 1
Silverwing - 5 years ago 2018-11-24 17:26:54

venaedanotrr - temple ready
4 files changed with 201 insertions and 886 deletions:
0 comments (0 inline, 0 general)
atlantis_iraa.lua
Show inline comments
 
@@ -1052,7 +1052,7 @@ iraa_temple_question = obj {
 
    nam = "iraa_temple_question";
 
    dsc = function(s)
 
        if me() == player_learr then
 
            return [[Единственной достопримечательностью помещения была загадочная надпись "Ты ищешь число здесь", на стене напротив входа. ]];
 
            return [[Леарр не раз посещала это место. Единственное, что привлекает здесь внимание -- загадочная надпись "Ты ищешь здесь число" на стене напротив входа. ]];
 
        else
 
            return [[На стене напротив входа нанесены какие-то {письмена}. Видно, что навьяры раз за разом тщательно обновляют их, сохраняя их в первозданном виде. ]];
 
        end;
journey_venaedanotrr.lua
Show inline comments
 
@@ -1262,19 +1262,50 @@ ven_item_potion = obj {
 
 ]]
 

	
 
ven_temple_entrance = room {
 
    var {
 
        state = 0;
 
    };
 
    nam = 'ven_temple_entrance';
 
    disp = 'Храм Венаэданотра, вход';
 
    dsc = [[Массивные двери высеченного в скале храма покрыты резными орнаментами. Широкие металлические ступени сохранились в идеальном состоянии. Скала тянется в обе стороны от храма. Чуть поодаль вы видите небольшой каменный домик, в котором живет хранитель храма. ]];
 
    obj = {
 
        'ven_temple_doors';
 
    };
 
    way = {
 
        kh_vroom('В Левиафан', "leviathan_airlock");
 
        kh_vroom('В храм', function(s)
 
            pr [[Двери храма закрыты для вас. ]];
 
            return false;
 
            return 'ven_temple_hall_1';
 
        end);
 
        kh_vroom('К дому хранителя', "ven_temple_keeper_house");
 
    };
 
};
 

	
 
ven_temple_doors = obj {
 
    nam = 'ven_temple_doors';
 
    dsc = function(s)
 
        if ven_temple_entrance.state == 0 then
 
            return [[В нижней части дверей храма есть два небольших многогранных {углубления}. ]];
 
        elseif ven_temple_entrance.state == 1 then
 
            return [[В нижней части дверей храма есть два небольших многогранных {углубления}. В одно из них помещен небольшой зеленый додекаэдр. ]];
 
        elseif ven_temple_entrance.state == 2 then
 
            return [[В нижней части дверей храма есть два небольших многогранных {углубления}. В одно из них помещен небольшой красный додекаэдр. ]];
 
        else
 
            return [[В нижней части дверей храма есть два небольших многогранных {углубления}, в которых сейчас расположены небольшие камни -- красный и зеленый. ]];
 
        end;
 
    end;
 
    used = function(s, o)
 
        if o == ven_item_green_key then
 
            ven_temple_entrance.state = ven_temple_entrance.state + 1;
 
            remove(ven_item_green_key, pl);
 
            return [[Додекаэдр легко входит в отверстие и накрепко закрепляется там. Где-то изнутри двери вы слышите тяжелый скрежет. ]];
 
        elseif o == ven_item_red_key then
 
            ven_temple_entrance.state = ven_temple_entrance.state + 2;
 
            remove(ven_item_red_key, pl);
 
            return [[Додекаэдр легко входит в отверстие и накрепко закрепляется там. Где-то изнутри двери вы слышите тяжелый скрежет. ]];
 
        end;
 
    end;
 
}
 

	
 
ven_temple_keeper_house = room {
 
    nam = 'ven_temple_keeper_house';
 
    disp = 'Храм Венаэданотра, у дома хранителя';
 
@@ -1473,3 +1504,113 @@ ven_temple_lock = room {
 
        walk(ven_temple_keeper_house_cellar);
 
    end;
 
}
 

	
 
ven_temple_hall_1 = room {
 
    nam = 'Храм Венаэданотра, главный зал';
 
    dsc = [[Вы находитесь в главном зале храма Венаэданотра, у входа. Внутреннее убранство этого храма отличается аскетичностью -- местные жители не стремятся выставлять свои реликвии напоказ, а в этом храме регулярно проводятся массовые службы. Многочисленные полки пусты, стены, как и везде густо покрыты светящимися водорослями. ]];
 
    way = {
 
        kh_vroom('Наружу', 'ven_temple_entrance');
 
        kh_vroom('К центру зала', 'ven_temple_hall_2');
 
    };
 
}
 

	
 
ven_temple_pedestal = obj {
 
    var {
 
        state = 0;
 
    };
 
    nam = 'ven_temple_pedestal';
 
    dsc = [[С одной из сторон пьедестала вашему взору открывается потайная ниша, внутри которой спрятан {рычаг}. ]];
 
    act = function(s)
 
        if s.state == 0 then
 
            ven_temple_ahall.state = 1;
 
            path("Наверх", ven_temple_ahall):enable();
 
        else
 
            return [[Вам здесь больше нечего делать. ]];
 
        end;
 
    end;
 
}
 

	
 
ven_temple_hall_2 = room {
 
    nam = 'Храм Венаэданотра, главный зал';
 
    dsc = [[В центре храма расположен пьедестал. На нем лежат несколько металлических табличек с древними письменами. ]];
 
    way = {
 
        kh_vroom('Ко входу', 'ven_temple_hall_1');
 
        kh_vroom('В конец зала', 'ven_temple_hall_3');
 
        kh_vroom('В зал вопроса', 'ven_temple_qhall');
 
        kh_vroom('В зал ответа', 'ven_temple_ahall');
 
    };
 
    obj = {
 
        ven_temple_pedestal:disable()
 
    }
 
}
 

	
 
ven_temple_hall_3 = room {
 
    nam = 'Храм Венаэданотра, главный зал';
 
    dsc = [[В этой части главного зала расположена небольшая неприметная дверца, ведущая в служебные помещения храма. ]];
 
    way = {
 
        kh_vroom('К центру зала', 'ven_temple_hall_2');
 
    };
 
}
 

	
 
ven_temple_qhall = room {
 
    nam = 'Храм Венаэданотра, зал вопроса';
 
    dsc = [[Небольшое помещение сбоку от основного храмового зала. Напротив входа на стену нанесено изображение главного зала. ]];
 
    obj = {
 
        'ven_qhall_altar'
 
    };
 
    way = {
 
        kh_vroom('В главный зал', 'ven_temple_hall_2');
 
    };
 
};
 

	
 
ven_temple_ahall = room {
 
    var {
 
        state = 0;
 
    };
 
    nam = 'Храм Венаэданотра, зал ответа';
 
    dsc = function(s)
 
        if s.state == 0 then
 
            return [[Небольшое помещение сбоку от основного храмового зала. Напротив входа на стене выгравировано изображение навьяра, плывущего наверх. ]];
 
        else
 
            return [[Небольшое помещение сбоку от основного храмового зала. Напротив входа на стене выгравировано изображение навьяра, плывущего наверх. Одна из боковых стен зала отсутствует, открывая проход на широкую лестницу, ведущую наверх. ]];
 
        end;
 
    end;
 
    obj = {
 
        'ven_ahall_altar'
 
    };
 
    way = {
 
        kh_vroom('В главный зал', 'ven_temple_hall_2');
 
        kh_vroom('Наверх', 'ven_temple_labyrinth_l1'):disable();
 
    };
 
};
 

	
 
ven_qhall_altar = obj {
 
    nam = 'ven_qhall_altar';
 
    dsc = [[В центре помещения установлен массивный каменный {алтарь}. ]];
 
    act = [[Серый каменный алтарь. Навьяры тщательно очищают его от светящихся водорослей, покрывающих остальные поверхности храма. Ничего примечательного если не считать того, что это почти идеально ровный параллелепипед. ]];
 
}
 

	
 
ven_ahall_altar = obj {
 
    var {
 
        state = 0;
 
    };
 
    nam = 'ven_qhall_altar';
 
    dsc = function(s)
 
        if s.state == 0 then
 
            return [[В центре помещения установлен массивный каменный {алтарь}. ]];
 
        else
 
            return [[В центре помещения установлен массивный каменный алтарь. В нижней его части расположено едва заметное {углубление}. ]];
 
        end;
 
    end;
 
    act = function(s)
 
        if s.state == 0 then
 
            return [[Серый каменный алтарь. Навьяры тщательно очищают его от светящихся водорослей, покрывающих остальные поверхности храма. Ничего примечательного если не считать того, что это почти идеально ровный параллелепипед. В нижней части алтаря расположено едва заметное углубление. ]];
 
        elseif s.state == 1 then
 
            ven_temple_pedestal:enable();
 
            return [[Вы протискиваете в углубление руку и сдвигаете там что-то. Слышите скрежет, доносящийся из главного зала. ]];
 
        else
 
            return [[Вам здесь больше нечего делать. ]];
 
        end;
 
    end;
 
}
 

	
journey_venaedanotrr_labyrinth.lua
Show inline comments
 
file renamed from journey_venaedanotrr_old.lua to journey_venaedanotrr_labyrinth.lua
 
item_ven_key_chieftain = obj {
 
    nam = 'item_ven_key_chieftain';
 
    disp = "Первый ключ от храма";
 
    inv = [[
 
        Небольшой коралловый ключик, Кольцо его окрашено в красный цвет.
 
    ]];
 
};
 

	
 
item_ven_key_library = obj {
 
    nam = 'item_ven_key_library';
 
    disp = "Второй ключ от храма";
 
    inv = [[
 
        Небольшой коралловый ключик, Кольцо его окрашено в зеленый цвет.
 
    ]];
 
};
 

	
 
item_ven_key_tower = obj {
 
    nam = 'item_ven_key_tower';
 
    disp = "Третий ключ от храма";
 
    inv = [[
 
        Небольшой коралловый ключик, Кольцо его окрашено в синий цвет.
 
    ]];
 
};
 

	
 
item_ven_gem = obj {
 
    nam = "item_ven_gem";
 
    disp = "Жемчужина";
 
    dsc = "{Взять жемчужину}";
 
    inv = [[
 
        Крупная жемчужина, диаметром около сантиметра. 
 
    ]];
 
    tak = [[
 
        Вы забираете жемчужину. 
 
    ]];
 
};
 

	
 
item_ven_coin = obj {
 
    nam = "item_ven_coin";
 
    disp = "Монета";
 
    dsc = "{Взять монету}";
 
    inv = [[
 
        Небольшая старинная монета из неизвестного металла. Она хорошо сохранилась несмотря на столетия, проведенные в соленой воде. Вы не понимаете ни одного из символов нанесенных на ее поверхности.
 
    ]];
 
    tak = [[
 
        Вы забираете монету. 
 
    ]];
 
};
 

	
 
item_ven_tablet = obj {
 
    nam = "item_ven_tablet";
 
    disp = "Табличка";
 
    dsc = "{Взять табличку}";
 
    inv = [[
 
        Металлическая табличка с рисунком, изображающим навьяра и человека, пожимающих друг другу руки.
 
    ]];
 
    tak = [[Вы забираете табличку. ]];
 
};
 

	
 
ven_obelisk = obj {
 
	nam = "ven_obelisk";
 
	dsc = [[
 
		В центре площади возвышается {обелиск}, на который нанесено название города. 
 
	]];
 
	act = function(s)
 
        venaedanotrr_temple_found = true;
 
		if (where(char_anna) == here()) then
 
            return [[
 
				В нижней части обелиска вы видите карту, указывающую путь к храму. В динамиках раздается голос Анну Рэдклифф: "Это совсем рядом -- к северу отсюда".
 
			]];
 
		else
 
			return [[
 
				В нижней части обелиска вы видите карту, указывающую путь к храму.
 
			]];
 
		end;
 
	end;
 
}
 

	
 
ven_chieftain_dlg = dlg {
 
	var {
 
		state = 0;
 
        answer = 0;
 
	};
 
	nam = "Вождь Венаэданотра";
 
	entered = function(s)
 
		if (s.state == 0) then
 
			ven_chieftain.state = 1;
 
			psub('first_meeting');
 
			return [[
 
				Перед вами стоит немолодой навьяр. Несмотря на возраст, он держится гордо и прямо. Его глаза внимательно изучают вас. По его плавникам бегут цветные полосы: "I'yhe'ven'aed'anot'rr lea'lyt'nn ty'yhe'he'vji'a'rr. [другие хевьяры были здесь до вас. Они искали первый город и то, что скрывается в нем]".
 
			]];
 
		else
 
			psub('generic');
 
			return [[
 
				Перед вами стоит вождь Венаэданотра. Несмотря на возраст, он держится гордо и прямо. Его глаза внимательно изучают вас. По его плавникам бегут цветные полосы: "I'rr lyt'nn he'vji'a'rr".
 
			]];
 
		end;
 
	end;
 
	phr = {
 
		{tag="first_meeting"};
 
		{"[Цветокод]Кто?", [["Их много было. Среди них двое главных. Прежде чем я скажу больше, ответьте -- зачем вы здесь?"]], code [[ psub('why_here'); ]]};
 
		{"[Цветокод]Куда они направились?", [[
 
			"Дальше к своей цели. Но зачем вы здесь?"
 
		]], code [[ psub('why_here'); ]]};
 
		{tag="why_here"};
 
		{"[Цветокод]Я ищу своего отца. Он был с ними", [[
 
			"Они направились в первый город. Один из них хочет пробудить спящего. Вам нужно остановить их".
 
		]], code [[ ven_chieftain_dlg.answer = 1; psub('naethvjirr_awaken'); ]] };
 
		{"[Цветокод]Мы ищем первый город и знания скрытые в нем", [[
 
			"Вы встретите тех хевьяров там, если поспешите. Один из них хочет пробудить спящего. Вам нужно остановить их".
 
		]], code [[ ven_chieftain_dlg.answer = 2; psub('naethvjirr_awaken'); ]]};
 
		{"[Цветокод]Мы ищем спящего в глубинах", [[
 
			"Остановитесь и поверните назад. Спящий не должен пробудиться".
 
		]], code [[ ven_chieftain_dlg.answer = 3; psub('naethvjirr_awaken'); ]]};
 
		{tag="naethvjirr_awaken"};
 
		{"[Цветокод]Что будет, если спящий пробудится?", [[
 
            "Наэтвьирр уничтожит нас всех. Первый корабль приведет нас всех к погибели, если их не остановить".
 
		]], code [[ psub("who_hope") ]]};
 
        {tag="who_hope"};
 
        {"[Цветокод]Кого из них?", [[
 
            "Всех. Каждый из них искал Наэтвьирра лишь для того, чтобы удовлетворить свои личные амбиции. Но они этого не понимают и потому -- опасны".
 
        ]], code [[ psub("dont_understand"); ]]};
 
        {tag="dont_understand"};
 
        {"[Цветокод]Я не понимаю", [[
 
            "Поймешь, когда проживешь больше лет"
 
        ]]};
 
        {"[Цветокод]И Уильям тоже?", [[
 
            "Все они. И я не знаю никого, кто мог бы пройти этот путь не ради личного интереса".
 
        ]], code [[ psub("dont_understand2");]]};
 
        {tag="dont_understand2"};
 
        {"[Цветокод]А я?", function(s)
 
            if (ven_chieftain_dlg.answer == 1) then
 
                return [[
 
                    "Ты уже сказал, что Наэтвьирр тебе не нужен. Ты ищешь своего отца".
 
                ]];
 
            elseif (ven_chieftain_dlg.answer == 2) then
 
                return [[
 
                    "Ты уже сказал, что ищешь наши древние знания. Разве не для себя ты их ищешь?"
 
                ]];
 
            else
 
                return [[
 
                    "Ты уже сказал, что ищешь Наэтвьирра. Разве не для себя ты его ищешь?"
 
                ]];
 
            end;
 
        end, code [[
 
            if (ven_chieftain_dlg.answer == 2) then
 
                psub("what_for_city");
 
            elseif (ven_chieftain_dlg.answer == 3) then
 
                psub("what_for_machine");
 
            end;
 
        ]]};
 
        {"[Цветокод]Все равно не понимаю. Но спорить не буду.", [[
 
            "Мудрое решение. Перейдем к другим делам".
 
        ]], code [[ psub("generic");]]};
 
        {"[Цветокод]Кажется, я понял.", [[
 
            "Тебе лишь кажется".
 
        ]], code [[ psub("generic");]]};
 
        {tag="what_for_city"};
 
        {"[Цветокод]Ты прав. Я ищу их для себя. ", [[
 
            "Именно".
 
        ]], code [[ pret(); ]]};
 
        {"[Цветокод]Я хочу блага этому миру. Эти знания должны быть доступны всем, а не покоиться на морском дне.", [[
 
            "\"Я хочу\" - ты говоришь. И в этом ключ".
 
        ]], code [[ pret(); ]]};
 
        {tag="what_for_machine"};
 
        {"[Цветокод]Ты прав. Я ищу его для себя. ", [[
 
            "Именно".
 
        ]], code [[ pret(); ]]};
 
        {"[Цветокод]Мне нужны его знания. ", [[
 
            "\"Мне нужны\" - ты говоришь. И в этом ключ".
 
        ]], code [[ pret(); ]]};
 
		{tag="generic"};
 
        {"[Цветокод]Что еще ты можешь сказать про Наэтвьирра?", [[
 
            "Ты уже знаешь саму легенду?"
 
        ]],code [[ psub("legend");]]};
 
		{"[Цветокод]I'rr Kee'nn", [[
 
            "Ты возвращайся".
 
        ]], code = [[ back(); ]]};
 
        {tag="legend"};
 
        {"[Цветокод]Да", [[
 
            "Тогда, ты должен знать, что Наэтвьирр опасен для всех вьяров. Если я не ссмог убедить тебя, поговори с другими мудрецами - Ien'tea'rr в старой башне и Hya'arhe'ysl'rr в библиотеке".
 
        ]], code [[pret();]]};
 
        {"[Цветокод]Нет", [[
 
            "Дело было многие тысячелетия назад. Тогда навьяры жили в огромных городах и строили могучие машины, способные выполнять за нас самые тяжелые и неприятные дела. Большинство из них тогда искали решение последней задачи - создать машину, которая смогла бы думать и собирать знания за них. Долгие годы искали они решение этой проблемы, пока наконец навьяры из первого города не нашли его. Однако нашлись среди навьяров те, кто понимал, что Наэтвьирр первым же делом уничтожит навьяров, которые окажутся совершенно не нужны ему. Вскоре они сумели убедить всех жителей города навсегда закрыть его от всех глаз и забыть напрочь его местоположение. Но были среди навьяров и те, кто хотел наступления новой эры. Эти навьяры спрятали в различных городах подсказки для будущих поколений, когда те пожелают найти древнюю машину и пробудить ее. Если я не ссмог убедить тебя, поговори с другими мудрецами - Ien'tea'rr в старой башне и Hya'arhe'ysl'rr в библиотеке".
 
        ]], code [[ 
 
            path("К башне(на восток)", ven_center):enable();
 
            path("К библиотеке(на запад)", ven_center):enable();
 
            pret();
 
        ]]};
 
	};
 
};
 

	
 
ven_chieftain = npc {
 
	nam = "ven_chieftain";
 
	var {
 
		state = 0;
 
	};
 
	dsc = function(s)
 
		if (s.state == 0) then
 
			return [[
 
				Рядом с обелиском стоит {немолодой навьяр}.
 
			]];
 
		else
 
            return [[
 
                Рядом с обелиском стоит {вождь}.
 
            ]]
 
        end;
 
	end;
 
	dlg = 'ven_chieftain_dlg';
 
}
 

	
 
ven_center = room {
 
	nam = "Венаэданотр, центр города";
 
	dsc = [[
 
		Центральная площадь навьярского города вымощена камнем. Во все стороны вокруг тянутся невысокие каменные строения. Вдали на востоке вы видите башню, возвышающуюся над остальными зданиями города. 
 
	]];
 
    view = [[
 
        Из иллюминаторов Левиафана открывается великолемный вид на навьярский город. Множество каменных строений, раскинувшихся вокруг центрального обелиска соединены между собой ровными улицами, протянувшимися от окраин к центру. 
 
    ]];
 
	obj = {
 
		'ven_obelisk',
 
		'ven_chieftain'
 
	};
 
    way = {
 
        kh_vroom("В Левиафан", leviathan_airlock);
 
        kh_vroom("К башне(на восток)", "ven_east"):disable();
 
        kh_vroom("К библиотеке(на запад)", "ven_west"):disable();
 
    };
 
}
 

	
 
ven_west = room {
 
    var {
 
        visited = false;
 
    };
 
    nam = "Венаэдантр, у библиотеки";
 
    dsc = function(s)
 
        if (s.visited) then
 
            return [[
 
                "Небольшая открытая площадка около библиотеки. Фасад большого здания украшен резными узорами, окрашенными различными цветами".
 
            ]];
 
        else
 
            s.visited = true;
 
            return [[
 
                "Вы с легкостью находите библиотеку - одно из самых больших зданий в городе. Фасад его украшен резными узорами, окрашенными различными цветами, очевидно несущими некоторый смысл для навьяров".
 
            ]];
 
        end;
 
    end;
 
    way = {
 
        kh_vroom("В центр", "ven_center");
 
        kh_vroom("В библиотеку", "ven_library");
 
    };
 
};
 

	
 
ven_library = room {
 
    nam = "Венаэданотр, библиотека";
 
    dsc = [[
 
        Внутри библиотека Венаэданотра представляет собой огромный зал со множеством колонн, удерживающих крышу. Между колоннами установлено множество шкафов, на полках которых покоятся бесчисленные металлические таблички, используемые навьярами для записи текстов.
 
    ]];
 
    obj = {
 
        'ven_library_guards',
 
        'ven_library_navjiars',
 
        'ven_librarian'
 
    };
 
    way = {
 
        kh_vroom("Выйти", "ven_west");
 
    };
 
};
 

	
 
ven_library_guards = obj {
 
    nam = "ven_library_guards";
 
    dsc = [[
 
        У входа в библиотеку стоят {два стражника}. Они с изумлением рассматривают вас, когда вы оказываетесь рядом. 
 
    ]];
 
    act = [[
 
        Незачем их тревожить.
 
    ]];
 
};
 

	
 
ven_library_navjiars = obj {
 
    nam = "ven_library_navjiars";
 
    dsc = [[
 
        В зале находится множество {навьяров}. Кто-то сидит у шкафов и читает, другие ходят и оживленно что-то обсуждают. Третьи что-то ищут среди книг. Когда вы оказываетесь рядом, все взоры устремляются на вас - многие из жителей города никогда не видели людей и с интересом разглядывают. 
 
    ]];
 
    act = [[
 
        Незачем их тревожить.
 
    ]];
 
};
 

	
 
ven_librarian = npc {
 
    nam = "ven_librarian";
 
    dsc = [[
 
        Ваше внимание привлекает {навьяр}, заботливо возвращающий таблички на свои места за нерадивыми посетителями. Он, кажется, полностью погружен в свое занятие. 
 
    ]];
 
    dlg = "ven_librarian_dlg";
 
};
 

	
 
ven_librarian_dlg = dlg {
 
    var {
 
        state = 0;
 
    };
 
    nam = "Библиотекарь";
 
    entered = function(s)
 
        if (s.state == 0) then
 
            s.state = 1;
 
            psub("first_meeting");
 
            return [[
 
                Навьяр не обращает на вас никакого внимания, даже когда вы подходите совсем близко. 
 
            ]];
 
        else
 
            psub("generic");
 
            return [[
 
                Заметив вас, библиотекарь прекращает свои занятия и устремляет взор на вас. 
 
            ]];
 
        end;
 
    end;
 
    phr = {
 
        {tag="first_meeting"};
 
        {"[Коснуться плеча навьяра]", [[
 
            Навьяр резко оборачивается, уставившись на вас. Вскоре он приходит в себя и приветствует вас: "Приветствую тебя, хевьяр. Я Hya'arhe'ysl'rr. Что хочешь ты?"
 
        ]], code [[ psub ("generic"); ]]};
 
        {"[Уйти]", code = [[ back(); ]]};
 
        {tag="generic"};
 
        {"[Цветокод]Вождь сказал, ты можешь рассказать про Наэтвьирра", [[
 
            "Ты уже знаешь легенду?"
 
        ]], code [[ psub("know_legend"); ]]};
 
        {"[Цветокод]I'rr kee'nn", [[
 
            "Ты возвращайся".
 
        ]], code = [[ back(); ]]};
 
        {tag="know_legend"};
 
        {"[Цветокод]Да", [[
 
            "Тогда ты знаешь, что Наэтвьирр должен был принести навьярам неслыханное величие и процветание и лишь страх и глупость большинства из них помешали осуществлению этого".
 
        ]], code [[ psub("what_about_hevjiarr");]]};
 
        {"[Цветокод]Нет", [[
 
            "Это произошло много тысячелетий назад. Древние навьяры жили в больших городах - гораздо больше чем Ven'aed'anot'rr. Они строили машины, которые помогали им в нелегкой жизни. Однажды, они придумали и построили машину, которая могла все знать и думать за них. И включили бы они эту машину и все было бы прекрасно, однако нашлись среди навьяров те, кто засомневался - а будет ли машина мыслить действительно так же, как мыслил бы навьяр? А не попытается ли машина сама занять место навьяров в этом мире? Не станут ли навьяры совсем не нужны? Вскоре эти сомнения заставили навьяров в страхе покинуть город, навсегда закрыв его от всех глаз и забыв напрочь его местоположение. Так, по собственной глупости навьяры отказались от прекрасного будущего. Если бы сейчас, кто-то смог найти Lse'ry'anot'rr и пробудить Na'eth'vji'rr'а, то он бы вернул навьярам былое величие их народа".
 
        ]], code [[ psub("what_about_hevjiarr");]]};
 
        {tag="what_about_hevjiarr"};
 
        {"[Цветокод]Что станет при этом с людьми?", [[
 
            "Наэтвьирр использует свою мудрость на благо всем вьярам".
 
        ]]};
 
        {"[Цветокод]Я ищу способ пробудить Наэтвьирра", [[
 
            "Твой путь лежит в храм. Я дам тебе ключ".
 
        ]], code [[ take('item_ven_key_library'); psub('generic'); ]]};
 
        {"[Цветокод]Я ищу путь в первый город", [[
 
            "Твой путь лежит в храм. Я дам тебе ключ".
 
        ]], code [[ take('item_ven_key_library'); psub('generic'); ]]};
 
    };
 
};
 

	
 
ven_east = room {
 
    var {
 
        state = 0;
 
    };
 
    nam = "Венаэданотр, у входа в башню";
 
    dsc = function(s)
 
        if (s.state == 0) then
 
            s.state = 1;
 
            return [[
 
                Вы долго блуждаете по улицам города в поисках пути в башню, стоящую в восточной части города. Оказавшись у входа, вы видите массивные двери, закрывающие вход внутрь. 
 
            ]];
 
        else
 
            return [[
 
                Вы стоите у входа в высокую трехэтажную башню. Массивные каменные двери закрывают вход. 
 
            ]];
 
        end;
 
    end;
 
    obj = {
 
        'ven_tower_guard'
 
    };
 
    way = {
 
        kh_vroom("В башню", "ven_tower_l1");
 
        kh_vroom("В центр", "ven_center");
 
    };
 
};
 

	
 
ven_tower_guard = npc {
 
    nam = "ven_tower_guard";
 
    dsc = [[
 
        У ворот стоит одинокий {стражник}. Он внимательно наблюдает за вашими действиями. 
 
    ]];
 
    phrases = {
 
        "\"Ты проходи\"."
 
    };
 
};
 

	
 
ven_tower_l1 = room {
 
    var {
 
        state = 0;
 
    };
 
    nam = "Венаэданотр, башня, первый этаж";
 
    dsc = [[
 
        Вы стоите на первом этаже башни Венаэданотра. В центре большого зала вы видите три статуи.
 
    ]];
 
    obj = {
 
        'ven_statue_navjiarr',
 
        'ven_statue_monster',
 
        'ven_statue_human'
 
    };
 
    way = {
 
        kh_vroom("Выйти", "ven_east");
 
        kh_vroom("На второй этаж", function(s)
 
            if (ven_tower_l1.state == 1) then
 
                return "ven_tower_l2";
 
            else
 
                pr("Дверь не открывается.");
 
                return false;
 
            end;
 
        end);
 
    };
 
};
 

	
 
ven_tower_l2 = room {
 
    var {
 
        state = 0;
 
    };
 
    nam = "Венаэданотр, башня, второй этаж";
 
    dsc = [[
 
        Второй этаж башни представляет из себя зал примерно таких же размеров, что и первый. 
 
    ]];
 
    obj = {
 
        kh_vway("В центре зала вы видите {пьедестал} с двумя выемками.", 'ven_l2_pedestal');
 
    };
 
    way = {
 
        kh_vroom("На первый этаж", "ven_tower_l1");
 
        kh_vroom("На третий этаж", function(s)
 
            if (ven_tower_l2.state == 1) then
 
                return "ven_tower_l3";
 
            else
 
                pr("Дверь не открывается.");
 
                return false;
 
            end;
 
        end );
 
    };
 
}
 

	
 
ven_tower_l3 = room {
 
    var {
 
        state = 0;
 
    };
 
    nam = "Венаэданотр, башня, третий этаж";
 
    dsc = [[
 
        Третий этаж ничем не отличается от первых двух - это большой пустой зал с двумя дверьми в противоположных его концах.
 
    ]];
 
    way = {
 
        kh_vroom("На второй этаж", "ven_tower_l2");
 
        kh_vroom("На четвертый этаж", function(s)
 
            if (ven_tower_l3.state == 1) then
 
                return "ven_tower_l4";
 
            else
 
                pr("Дверь не открывается.");
 
                return false;
 
            end;
 
        end );
 
    };
 
}
 
        
 
ven_tower_l4 = room {
 
    nam = "Венаэданотр, башня, четвертый этаж";
 
    dsc = [[
 
        Зал на четвертом этаже несколько меньше остальных. В стенах зала проделано множество окон, 
 
    ]];
 
    obj = {
 
        'ven_wiseman'
 
    };
 
    way = {
 
        kh_vroom("На третий этаж", "ven_tower_l3");
 
    };
 
}
 
        
 
ven_statue_navjiarr = obj {
 
    nam = "ven_statue_navjiarr";
 
    dsc = [[
 
        {Первая статуя} изображает молодого навьяра, гордо смотрящего перед собой. 
 
    ]];
 
    act = [[
 
        Вы осматриваете статую, но не находите ничего интересного. 
 
    ]];
 
};
 

	
 
ven_statue_monster = obj {
 
    nam = "ven_statue_monster";
 
    dsc = [[
 
        {Вторая статуя} изображает существо с четырьмя руками. Верхняя часть тела существа покрыта гладкой кожей, а нижняя - чешуей. Вместо ног у статуи змеиный хвост. 
 
    ]];
 
    act = function(s)
 
        walk("ven_statue_monster_look");
 
    end;
 
};
 

	
 
ven_statue_human = obj {
 
    nam = "ven_statue_human";
 
    dsc = [[
 
        {Последняя статуя} изображает человека, одетого в тогу. 
 
    ]];
 
    act = [[
 
        Вы осматриваете статую, но не находите ничего интересного. 
 
    ]];
 
};
 

	
 
ven_statue_monster_look = room {
 
    nam = "Статуя";
 
    dsc = [[
 
        Перед вами статуя четырехрукого существа. Верхняя часть его тела покрыта гладкой кожей, а нижняя - чешуей. Вместо ног у статуи змеиный хвост. В руках статуя держит несколько предметов. 
 
    ]];
 
    obj = {
 
        'item_ven_gem';
 
        'item_ven_coin';
 
        'item_ven_tablet';
 
        'ven_statue_spear_take';
 
        'ven_statue_spear_rotate';
 
    };
 
    way = {
 
        kh_vroom("Отойти от статуи", "ven_tower_l1");
 
    };
 
};
 

	
 
ven_statue_spear_take = obj {
 
    nam = "ven_statue_spear_take";
 
    dsc = "{Взять копье}";
 
    act = function(s)
 
        ven_statue_spear_rotate:enable();
 
        return [[
 
            Копье крепко держится в руке статуи. 
 
        ]];
 
    end;
 
};
 

	
 
ven_statue_spear_rotate = obj {
 
    nam = "ven_statue_spear_rotate";
 
    dsc = "{Повернуть копье}";
 
    act = function(s)
 
        ven_tower_l1.state = 1;
 
        s:disable();
 
        return [[
 
            Вы поворачиваете копье и дверь в дальнем конце зала открывается.
 
        ]];
 
    end;
 
}:disable();
 

	
 
ven_l2_pedestal = room {
 
    nam = "ven_l2_pedestal";
 
    dsc = "Прямоугольный пьедестал высотой около метра. На верхней его поверхности вы видите две выемки, рядом с которыми выгравированы изображения.";
 
    obj = {
 
        'ven_l2_human';
 
        'ven_l2_navjiarr';
 
    };
 
};
 

	
 
ven_l2_human = obj {
 
    var {
 
        state = 0;
 
    };
 
    nam = "ven_l2_human";
 
    dsc = [[
 
        Рядом с первой {выемкой} выгравировано изображение человека-рыбака с удочкой.
 
    ]];
 
    act = "Возможно, сюда нужно что-то положить? ";
 
    use = function(s, o)
 
        if (o == item_ven_coin) then
 
            s.state = 1;
 
            remove(item_ven_gem, pl);
 
            pr "Монета исчезает в глубине выемки.";
 
            if (ven_l2_navjiarr.state == 1) then
 
                ven_tower_l2.state = 1;            
 
                pr("Дверь а дальнем конце зала открывается. ");
 
            end;
 
            return false;
 
        else
 
            return "Это сюда не подходит.";
 
        end;
 
    end;
 
};
 

	
 
ven_l2_navjiarr = obj {
 
    var {
 
        state = 0;
 
    };
 
    nam = "ven_l2_navjiarr";
 
    dsc = [[
 
        рядом со второй {выемкой} выгравировано изображение навьяра-охотника. 
 
    ]];
 
    act = "Возможно, сюда нужно что-то положить? ";
 
    use = function(s, o)
 
        if (o == item_ven_gem) then
 
            s.state = 1;
 
            remove(item_ven_gem, pl);
 
            pr "Жемчужина исчезает в глубине выемки. ";
 
            if (ven_l2_human.state == 1) then
 
                ven_tower_l2.state = 1;            
 
                pr("Дверь а дальнем конце зала открывается. ");
 
            end;
 
            return false;
 
        else
 
            return "Это сюда не подходит. ";
 
        end;
 
    end;
 
};
 

	
 
ven_towers_machine = obj {
 
    nam = "ven_towers_machine";
 
    dsc = "В центре зала вы видите странную {машину} - три вращающихся оси, на которых установлено 4 шестеренки. Внизу вы видите какие-то рычаги";
 
@@ -790,194 +194,7 @@ ven_towers_lever3 = obj {
 
    end;
 
};
 

	
 
ven_wiseman = npc {
 
    nam = "ven_wiseman";
 
    dsc = [[
 
        Перед одним из окон сидит старый {навьяр}. Левой рукой он опирается на посох. Его глаза внимательно наблюдают за вами. 
 
    ]];
 
    dlg = "ven_wiseman_dlg";
 
};
 

	
 
ven_wiseman_dlg = dlg {
 
    var {
 
        state = 0;
 
    };
 
    nam = "Hya'arhe'ysl'rr";
 
    entered = function(s)
 
        if (s.state == 0) then
 
            psub('first_meeting');
 
            return [[
 
                Навьяр медленно поднимается и его плавники начинают окрашиваться цветными полосами: "Зачем ты здесь, хевьяр?"
 
            ]];
 
        else
 
            psub('generic');
 
            return [[
 
                Навьяр медленно поднимается и его плавники начинают окрашиваться цветными полосами: "Зачем ты вернулся, хевьяр?"
 
            ]];
 
        end;
 
    end;
 
    phr = {
 
        {tag="first_meeting"};
 
        {"[Цветокод]Я ищу Лсэрианотр", [[
 
            "Так значит, ты слышал легенду?"
 
        ]], code [[ psub("legend"); ]]};
 
        {"[Цветокод]Я ищу Наэтвьирра", [[
 
            "Так значит, ты слышал легенду?"
 
        ]], code [[ psub("legend"); ]]};
 
        {"[Цветокод]Я ищу своего отца. Он отправился на поиски Лсэрианотра", [[
 
            "Так значит, ты идешь за ними. Ты уже слышал легенду?"
 
        ]], code [[ psub("legend"); ]]};
 
        {tag="generic"};
 
        {"[Цветокод]I'rr kee'nn", [[
 
            "Ты уходи"
 
        ]], code [[ back(); ]]};
 
        {tag="legend"};
 
        {"[Цветокод]Да", [[
 
            "Значит ты знаешь, что Наэтвьирр опасен и не должен пробудиться".
 
        ]], code [[ psub("need_to_find"); ]]};
 
        {"[Цветокод]Нет", [[
 
            "Тогда послушай. Этой легенде больше тысячи лет. В те времена навьяры жили в огромных городах и строили машины, помогающие им во всех областях. Однажды навьяры создали Наэтвьирра - машину, способную заменить им вождей. Но, к счастью, большинство навьяров поняли, что Наэтвьирр первым же делом уничтожит навьяров, не нужных ему. Опасаясь включения опасной машины, навьяры навсегда покинули город в надежде, что никто и никогда не найдет его".
 
        ]], code [[ psub("need_to_find"); ]]};
 
        {tag="need_to_find"};
 
        {"[Цветокод]Мне нужен ключ от храма", [[
 
            "Я дам тебе его в надежде, так же как дал его тем хевьярам. Надеюсь, ты примешь верное решение. Теперь уходи. Оставь меня в покое".
 
        ]], code [[
 
            take("item_ven_key_tower");
 
            back();
 
        ]]};
 
    };
 
};
 

	
 
ven_near_temple = room {
 
    nam = "Ущелье, У входа в храм Венаэданотра";
 
    dsc = [[
 
        Вы стоите на дне глубокого ущелья. Вход навьярского храма, вытесанный в камне, украшен резными изображениями сцен из легенд, и покрыты древними письменами, чей смысл утрачен ныне даже для навьяров. 
 
    ]];
 
    way = {
 
        kh_vroom("К храму", "ven_temple");
 
        kh_vroom("В Левиафан", "leviathan_airlock");
 
    };
 
};
 

	
 
ven_temple_entrance = room {
 
    var {
 
        state = 0;
 
    };
 
    nam = "Храм Венаэданотра, вход";
 
    dsc = function(s)
 
        if (s.state == 3) then
 
            return [[
 
                Массивные двери храма Ведаэданотра открыты, позволяя вам пройти.
 
            ]];
 
        else
 
            return [[
 
                Вход в храм Венаэданотра закрывают массивные металлические двери. На дверях вы видите три замочных скважины. 
 
            ]];
 
        end;
 
    end;
 
    way = {
 
        kh_vroom("В ущелье", "ven_near_temple");
 
        kh_vroom("В храм", function(s)
 
            if (ven_temple_entrance.state == 3) then
 
                return "ven_temple_l1";
 
            else
 
                pr("Двери не открываются");
 
            end;
 
        end);
 
    };
 
    obj = {
 
        'ven_temple_lock_red',
 
        'ven_temple_lock_green',
 
        'ven_temple_lock_blue'
 
    };
 
};
 

	
 
ven_temple_lock_red = obj {
 
    var {
 
        state = 0;
 
    };
 
    nam = "ven_temple_lock_red";
 
    dsc = "{Первая скважина} отмечена красным цветом.^";
 
    act = function(s)
 
        if (s.state == 1) then
 
            return "Этот замок уже открыт. ";
 
        else
 
            return "Мне нужен ключ. ";
 
        end;
 
    end;
 
    use = function(s, o)
 
        if (o == item_ven_key_chieftain) then
 
            ven_temple_entrance.state = ven_temple_entrance.state + 1;
 
            remove(o, pl);
 
            pr("Вы вставляете ключ в скважину и поворачиваете его. ");
 
            if (ven_temple_entrance == 3) then
 
                pr("Двери с грохотом раздвигаются, открывая вам проход во внутренние помещения храма. ");
 
            end;
 
            return false;
 
        else
 
            return "Это сюда не подходит. ";
 
        end;
 
    end;
 
};
 

	
 
ven_temple_lock_green = obj {
 
    var {
 
        state = 0;
 
    };
 
    nam = "ven_temple_lock_green";
 
    dsc = "{Вторая скважина} отмечена красным цветом.^";
 
    act = function(s)
 
        if (s.state == 1) then
 
            return "Этот замок уже открыт. ";
 
        else
 
            return "Мне нужен ключ. ";
 
        end;
 
    end;
 
    use = function(s, o)
 
        if (o == item_ven_key_library) then
 
            ven_temple_entrance.state = ven_temple_entrance.state + 1;
 
            remove(o, pl);
 
            pr("Вы вставляете ключ в скважину и поворачиваете его. ");
 
            if (ven_temple_entrance == 3) then
 
                pr("Двери с грохотом раздвигаются, открывая вам проход во внутренние помещения храма. ");
 
            end;
 
            return false;
 
        else
 
            return "Это сюда не подходит. ";
 
        end;
 
    end;
 
};
 

	
 
ven_temple_lock_blue = obj {
 
    var {
 
        state = 0;
 
    };
 
    nam = "ven_temple_lock_blue";
 
    dsc = "{Третья скважина} отмечена красным цветом.^";
 
    act = function(s)
 
        if (s.state == 1) then
 
            return "Этот замок уже открыт. ";
 
        else
 
            return "Мне нужен ключ. ";
 
        end;
 
    end;
 
    use = function(s, o)
 
        if (o == item_ven_key_tower) then
 
            s.state = 1;
 
            ven_temple_entrance.state = ven_temple_entrance.state + 1;
 
            remove(o, pl);
 
            pr("Вы вставляете ключ в скважину и поворачиваете его. ");
 
            if (ven_temple_entrance == 3) then
 
                pr("Двери с грохотом раздвигаются, открывая вам проход во внутренние помещения храма. ");
 
            end;
 
            return false;
 
        else
 
            return "Это сюда не подходит. ";
 
        end;
 
    end;
 
};
 

	
 
ven_temple_l1 = labyrinth {
 
ven_temple_labyrinth_l1 = labyrinth {
 
    var {
 
        position = "03";
 
        lock1 = true;
 
@@ -989,8 +206,7 @@ ven_temple_l1 = labyrinth {
 
    dir3 = "На юг";
 
    dir4 = "На запад";
 
    ex = "Выйти";
 
    nam = "ven_temple_l1";
 
    disp = "Венаэданотр, храм";
 
    nam = "Венаэданотр, храм, лабиринт";
 
    dsc = function(s)
 
        --if true then
 
        --    return tostring(s.position);
 
@@ -998,9 +214,7 @@ ven_temple_l1 = labyrinth {
 
        if (s.map[s.position].name) then
 
            return s.map[s.position].name;
 
        else
 
            return [[
 
                Вы стоите посреди запутанного лабиринта. Металлические стены по сторонам здесь ничем не отличаются от стен в других коридорах этого лабиринта. 
 
            ]];
 
            return [[Вы стоите посреди запутанного лабиринта. Металлические стены по сторонам здесь ничем не отличаются от стен в других коридорах этого лабиринта. ]];
 
        end;
 
    end;
 
    enter = function(s)
 
@@ -1391,7 +605,7 @@ ven_temple_l1 = labyrinth {
 
        };
 
        ["73"] = {
 
            e2 = "74";
 
            ex = "ven_temple_l2";
 
            ex = "ven_temple_labyrinth_l2";
 
        };
 
        ["74"] = {
 
            e3 = "64";
 
@@ -1421,88 +635,62 @@ ven_shark = obj {
 
    dsc = function(s)
 
        --local d = 0;
 
        local seen = false;
 
        local no = ven_temple_l1.map[ven_temple_l1.position].e1;
 
        local ea = ven_temple_l1.map[ven_temple_l1.position].e2;
 
        local so = ven_temple_l1.map[ven_temple_l1.position].e3;
 
        local we = ven_temple_l1.map[ven_temple_l1.position].e4;
 
        if (s.position == ven_temple_l1.position) then
 
        local no = ven_temple_labyrinth_l1.map[ven_temple_labyrinth_l1.position].e1;
 
        local ea = ven_temple_labyrinth_l1.map[ven_temple_labyrinth_l1.position].e2;
 
        local so = ven_temple_labyrinth_l1.map[ven_temple_labyrinth_l1.position].e3;
 
        local we = ven_temple_labyrinth_l1.map[ven_temple_labyrinth_l1.position].e4;
 
        if (s.position == ven_temple_labyrinth_l1.position) then
 
            seen = true;
 
            p [[
 
                Рядом с собой
 
            ]];
 
            p [[Рядом с собой ]];
 
        end;
 
        if (no and s.position == no) then
 
            seen = true;
 
            p [[
 
                На севере
 
            ]];
 
            p [[На севере ]];
 
        end;
 
        if (no and s.position == ven_temple_l1.map[no].e1) then
 
        if (no and s.position == ven_temple_labyrinth_l1.map[no].e1) then
 
            seen = true;
 
            p [[
 
                Вдалеке на севере
 
            ]];
 
            p [[Вдалеке на севере ]];
 
        end;
 
        if (ea and s.position == ea) then
 
            seen = true;
 
            p [[
 
                На востоке
 
            ]];
 
            p [[На востоке ]];
 
        end;
 
        if (ea and s.position == ven_temple_l1.map[ea].e2) then
 
        if (ea and s.position == ven_temple_labyrinth_l1.map[ea].e2) then
 
            seen = true;
 
            p [[
 
                Вдалеке на востоке
 
            ]];
 
            p [[Вдалеке на востоке ]];
 
        end;
 
        if (so and s.position == so) then
 
            seen = true;
 
            p [[
 
                На юге
 
            ]];
 
            p [[На юге ]];
 
        end;
 
        if (so and s.position == ven_temple_l1.map[so].e3) then
 
        if (so and s.position == ven_temple_labyrinth_l1.map[so].e3) then
 
            seen = true;
 
            p [[
 
                Вдалеке на юге
 
            ]];
 
            p [[Вдалеке на юге ]];
 
        end;
 
        if (we and s.position == we) then
 
            seen = true;
 
            p [[
 
                На западе
 
            ]];
 
            p [[На западе ]];
 
        end;
 
        if (we and s.position == ven_temple_l1.map[we].e4) then
 
        if (we and s.position == ven_temple_labyrinth_l1.map[we].e4) then
 
            seen = true;
 
            p [[
 
                Вдалеке на западе
 
            ]];
 
            p [[Вдалеке на западе ]];
 
        end;
 
                
 
        if (no and s.position == ven_temple_l1.map[no].e2 or ea and s.position == ven_temple_l1.map[ea].e1) then
 
        if (no and s.position == ven_temple_labyrinth_l1.map[no].e2 or ea and s.position == ven_temple_labyrinth_l1.map[ea].e1) then
 
            seen = true;
 
            p [[
 
                На северо-востоке
 
            ]];
 
            p [[На северо-востоке ]];
 
        end;
 
        if (no and s.position == ven_temple_l1.map[no].e4 or we and s.position == ven_temple_l1.map[we].e1) then
 
        if (no and s.position == ven_temple_labyrinth_l1.map[no].e4 or we and s.position == ven_temple_labyrinth_l1.map[we].e1) then
 
            seen = true;
 
            p [[
 
                На северо-западе
 
            ]];
 
            p [[На северо-западе ]];
 
        end;
 
        if (so and s.position == ven_temple_l1.map[so].e2 or ea and s.position == ven_temple_l1.map[ea].e3) then
 
        if (so and s.position == ven_temple_labyrinth_l1.map[so].e2 or ea and s.position == ven_temple_labyrinth_l1.map[ea].e3) then
 
            seen = true;
 
            p [[
 
                На юго-востоке
 
            ]];
 
            p [[На юго-востоке ]];
 
        end;
 
        if (so and s.position == ven_temple_l1.map[so].e4 or we and s.position == ven_temple_l1.map[we].e3) then
 
        if (so and s.position == ven_temple_labyrinth_l1.map[so].e4 or we and s.position == ven_temple_labyrinth_l1.map[we].e3) then
 
            seen = true;
 
            p [[
 
                На юго-западе
 
            ]];
 
            p [[На юго-западе ]];
 
        end;
 
        
 
        if (seen) then
 
@@ -1513,9 +701,7 @@ ven_shark = obj {
 
            end;
 
        else
 
            if (s.active) then
 
                p [[
 
                    Где-то в лабиринте вас поджидает кровожадная акула. 
 
                ]];
 
                p [[Где-то в лабиринте вас поджидает кровожадная акула. ]];
 
            else
 
                return false;
 
            end;
 
@@ -1524,20 +710,16 @@ ven_shark = obj {
 
    used = function(s, o)
 
        print("fuck you dinosaur shark");
 
        if (o == item_ven_spear) then
 
            local no = ven_temple_l1.map[ven_temple_l1.position].e1;
 
            local ea = ven_temple_l1.map[ven_temple_l1.position].e2;
 
            local so = ven_temple_l1.map[ven_temple_l1.position].e3;
 
            local we = ven_temple_l1.map[ven_temple_l1.position].e4;
 
            local no = ven_temple_labyrinth_l1.map[ven_temple_labyrinth_l1.position].e1;
 
            local ea = ven_temple_labyrinth_l1.map[ven_temple_labyrinth_l1.position].e2;
 
            local so = ven_temple_labyrinth_l1.map[ven_temple_labyrinth_l1.position].e3;
 
            local we = ven_temple_labyrinth_l1.map[ven_temple_labyrinth_l1.position].e4;
 
            if (s.position == no or s.position == ea or s.position == so or s.position == we) then
 
                remove(item_ven_spear, pl);
 
                s.active = false;
 
                return [[
 
                    Вы протыкаете акулу копьем. Она несколько раз дергается и затихает. Копье застревает в теле рыбы и вы не можете вытащить его. 
 
                ]];
 
                return [[Вы протыкаете акулу копьем. Она несколько раз дергается и затихает. Копье застревает в теле рыбы и вы не можете вытащить его. ]];
 
            else
 
                return [[
 
                    Акула слишком далеко. 
 
                ]];
 
                return [[Акула слишком далеко. ]];
 
            end;
 
        end;
 
    end;
 
@@ -1663,7 +845,7 @@ ven_first_lock = obj {
 
        print "fuckersaurus"
 
        if (o == item_ven_temple_key_1) then
 
            remove(item_ven_temple_key_1, pl);
 
            ven_temple_l1.lock1 = false;
 
            ven_temple_labyrinth_l1.lock1 = false;
 
            path('e3'):enable();
 
            return "Вы открываете дверь. ";
 
        end;
 
@@ -1675,7 +857,7 @@ ven_lever = obj {
 
    nam = "ven_lever";
 
    dsc = "В южной стене расположен небольшой {рычаг}. ";
 
    act = function(s)
 
        ven_temple_l1.lock2 = not ven_temple_l1.lock2;
 
        ven_temple_labyrinth_l1.lock2 = not ven_temple_labyrinth_l1.lock2;
 
        return "Вдалеке вы слышите скрежет металла. ";
 
    end;
 
}
 
@@ -1686,7 +868,7 @@ ven_second_lock = obj {
 
    used = function(s, o)
 
        if (o == item_ven_temple_key_2) then
 
            remove(item_ven_temple_key_2, pl);
 
            ven_temple_l1.lock3 = false;
 
            ven_temple_labyrinth_l1.lock3 = false;
 
            path('e4'):enable();
 
            return "Вы открываете дверь. ";
 
        end;
 
@@ -1779,11 +961,11 @@ item_ven_spear = obj {
 
ven_octopus = obj {
 
    nam = "ven_octopus";
 
    dsc = function(s)
 
        if (ven_temple_l1.position == "06") then
 
        if (ven_temple_labyrinth_l1.position == "06") then
 
            return "Вдалеке к северу вы видите гигантского спрута. Чудовище, кажется, совершенно не заинтересовано вами, однако оно полностью закрывает проход. ";
 
        elseif (ven_temple_l1.position == "16") then
 
        elseif (ven_temple_labyrinth_l1.position == "16") then
 
            return "К северу вы видите гигантского спрута. Чудовище, кажется, совершенно не заинтересовано вами, однако оно полностью закрывает проход. ";
 
        elseif (ven_temple_l1.position == "25") then
 
        elseif (ven_temple_labyrinth_l1.position == "25") then
 
            return "К востоку вы видите гигантского спрута. Чудовище, кажется, совершенно не заинтересовано вами, однако оно полностью закрывает проход. ";
 
        end;
 
        return false;
 
@@ -1793,19 +975,16 @@ ven_octopus = obj {
 
    ]];
 
};
 

	
 

	
 

	
 
ven_temple_l2 = room {
 
ven_temple_labyrinth_l2 = room {
 
    nam = "Венаэданотр, храм, второй этаж";
 
    dsc = [[
 
        Второй этаж храма представляет собой небольшой зал с металлическими стенами. В западной стене вы видите несколько окон, через которые открывается вид на ущелье. В северной части вы видите едва заметный проход. 
 
    ]];
 
    obj = {
 
        'ven_pedestal'
 
    };
 
    dsc = [[Второй этаж храма представляет собой небольшой зал с металлическими стенами. В западной стене вы видите несколько окон, через которые открывается вид на ущелье. В северной части вы видите еле заметную дверцу. ]];
 
    obj = { 'ven_pedestal' };
 
    way = {
 
        kh_vroom("На первый этаж", "ven_temple_l1");
 
        kh_vroom("В проход на севере", "ven_near_temple");
 
        kh_vroom("На первый этаж", "ven_temple_labyrinth_l1");
 
        kh_vroom("В дверь", function(s)
 
            pr("Длинный извилистый коридор выводит вас почти к самому входу в храм. Дверь закрывается за вами столь плотно, что даже зная ее местоположение, вы не сможете ее найти. ");
 
            return "ven_temple_entrance";
 
        end);
 
    };
 
};
 

	
 
@@ -1816,22 +995,16 @@ ven_pedestal = obj {
 
    nam = "ven_pedestal";
 
    dsc = function(s)
 
        if (s.taken) then
 
            return [[
 
                Пьедестал в центре зала пуст. 
 
            ]];
 
        else 
 
            return [[
 
                На пьедестале в центре зала вы видите небольшую металлическую пластину - судя по обозначениям это {фрагмент карты}. 
 
            ]];
 
            return [[Пьедестал в центре зала пуст. ]];
 
        else
 
            return [[На пьедестале в центре зала вы видите небольшую металлическую пластину - судя по обозначениям это {фрагмент карты}. ]];
 
        end;
 
    end;
 
    act = function(s)
 
        if (not s.taken) then
 
            s.taken = true;
 
            put(item_navjiarr_chart_ven);
 
            return [[
 
                Вы забираете фрагмент карты себе. 
 
            ]];
 
            item_lse_map.state = item_lse_map.state + 1;
 
            return [[Вы забираете фрагмент карты себе. ]];
 
        end;
 
    end;
 
};
 
\ No newline at end of file
main.lua
Show inline comments
 
@@ -41,6 +41,7 @@ dofile "atlantis_from_the_ashes.lua"
 
dofile "atlantis_iyhehevjiarr.lua"
 
-- Часть 3: Путь в Лсэрианотр
 
dofile "journey_venaedanotrr.lua"
 
dofile "journey_venaedanotrr_labyrinth.lua"
 
dofile "journey_nleyyslanotrr.lua"
 
dofile "journey_nleyyslanotrr_temple.lua"
 
dofile "journey_temple.lua"
0 comments (0 inline, 0 general)