Changeset - 9a8e42bc1462
[Not reviewed]
default
0 3 0
silverwing - 6 years ago 2018-12-08 06:35:29

Fixed code errors to make game run
3 files changed with 5 insertions and 6 deletions:
0 comments (0 inline, 0 general)
journey_nleyyslanotrr.lua
Show inline comments
 
@@ -457,754 +457,754 @@ nley_street_3 = room {
 
nley_telhyarr_intro = cutscene('Нлейисланотр, улица', 'Нлейисланотр, улица', [[Когда вы подходите к двери, Фаэтларр встает перед вами. По его плавникам бегут цветные полосы: "Это дом Телхиарра, я надеюсь, он поможет нам". Фаэтларр достает ключ и открывает им дверь дома, после чего входит внутрь. Вы следуете за ним. ]], 'nley_telhyarr_house')
 

	
 
nley_telhyarr_house = room {
 
    nam ='Нлейисланотр, дом Телхиарра';
 
    dsc = [[Вы находитесь в просторной прямоугольной комнате. Потолок и стены ее покрыты светящимися водорослями. ]];
 
    obj = {
 
        'nley_char_telhyarr'
 
    };
 
    way = {
 
        kh_vroom('Наружу', 'nley_street_3');
 
    }
 
}
 

	
 
nley_char_telhyarr = npc {
 
    nam = 'nley_char_telhyarr';
 
    dsc = [[{Телхиарр} висит в центре комнаты. Его руки и ноги плавно движутся, помогая ему удержать положение. ]];
 
    dlg = 'nley_telhyarr_dlg';
 
}
 

	
 
nley_telhyarr_dlg = dlg {
 
    var {
 
        state = 0;
 
    };
 
    nam = 'Телхиарр';
 
    entered = function(s)
 
        if s.state == 0 then
 
            s.state = 1;
 
            return [[По головным плавникам Телхиарра бегут цветные полосы: "Приветствую хевьяр. Я Телхиарр, вы наверное уже знаете. Я вас слушаю". ]];
 
        else
 
            return [[По головным плавникам Телхиарра бегут цветные полосы: "Приветствую хевьяр. Я вас слушаю". ]];
 
        end;
 
    end;
 
    phr = {
 
        {"[Кодировщик]Мы ищем карту пути в Лсэрианотр.", [[Телхиарр отвечает: "Я помогу вам. После отбытия Дрейка, карта была перепрятана в катакомбы -- правители опасались, что вслед за ними придут другие и снова попытаются попасть в храм. Вот ключ, он открывает один из входов в подземелья Нлейисланотра, находящийся в заброшенной части города. Удачи вам".]], code [[ take(nley_cellar_key); ]]};
 
        {"[Кодировщик]Я пойду.", [[Телхиарр прощается: "Ты возвращайся". ]], code [[ back(); ]]};
 
    }
 
}
 

	
 
function nley_init_catacombs()
 
    if not nley_catacombs_password.password then
 
        nley_catacombs_password.password = tostring(rnd(6) - 1) .. tostring(rnd(6) - 1) .. tostring(rnd(6) - 1) .. tostring(rnd(6) - 1);
 
    end;
 
end
 

	
 
nley_catacombs_1 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Вы находитесь у одного из входов в катакомбы Нлейисланотра. Узкие, выложенные камнем коридоры протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. На юге расположена дверь, ведущая к выходу из катакомб, коридор тянется на север. ]];
 
    way = {
 
        kh_vroom('На юг, к выходу', 'nley_acellar');
 
        kh_vroom('На север, по коридору', 'nley_catacombs_2');
 
    };
 
}
 

	
 
nley_catacombs_2 = room {
 
    var {
 
        state = 0;
 
    };
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = function(s)
 
        pr [[Узкий, выложенный камнем коридор. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. На западе вы видите небольшой проем, ведущий в отдельную комнатку. ]];
 
        if s.state == 0 then
 
            pr [[Путь в глубь катакомб преграждает прочная коралловая решетка. ]];
 
        end;
 
    end;
 
    way = {
 
        kh_vroom('На запад, в комнату', 'nley_cat_room_1');
 
        kh_vroom('На юг, по коридору', 'nley_catacombs_1');
 
        kh_vroom('На север, по коридору', function(s)
 
            if nley_catacombs_1.state == 0 then
 
                pr [[Решетка преграждает вам путь. ]];
 
                return false;
 
            else
 
                return 'nley_catacombs_3';
 
            end;
 
        end);
 
    }
 
}
 

	
 
nley_cat_room_1 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. ]];
 
    obj = {
 
        'nley_lever_1'
 
    };
 
    way = {
 
        kh_vroom('На восток, в коридор', 'nley_catacombs_2');
 
    }
 
}
 

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

	
 
nley_catacombs_3 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = 'Узкий, выложенный камнем коридор. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. На западе и востоке вы видите небольшие проемы, ведущие в отдельные комнатки. На севере тоннель обвалился, закрывая проход в остальные части подземелья. ';
 
    way = {
 
        kh_vroom('На запад, в комнату', 'nley_cat_room_2');
 
        kh_vroom('На восток, в комнату', 'nley_cat_room_3');
 
        kh_vroom('На юг, по коридору', 'nley_catacombs_2');
 
        kh_vroom('На север, по коридору', function(s)
 
            pr [[Этот проход завален. ]];
 
            return false;
 
        end);
 
    }
 
}
 

	
 
nley_cat_room_2 = room {
 
    var {
 
        state = 0;
 
    };
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. ]];
 
    obj = {
 
        'nley_room_2_wall'
 
    };
 
    way = {
 
        kh_vroom('На восток, в коридор', 'nley_catacombs_3');
 
        kh_vroom('На север', 'nley_cat_room_4'):disable();
 
    }
 
}
 

	
 
nley_room_2_wall = obj {
 
    nam = 'nley_room_2_wall';
 
    dsc = function(s)
 
        if nley_cat_room_2.state == 0 then
 
            return [[Северная {стена} комнаты кажется не слишком крепкой. ]];
 
        else
 
            return [[Северная {стена} комнаты разрушена и образует проход в смежное помещение. ]];
 
        end;
 
    end;
 
    act = function(s)
 
        if nley_cat_room_2.state == 0 then
 
            return [[Стена все еще слишком крепкая, чтобы сломать ее без дополнительных приспособлений. ]];
 
        else
 
            return [[Стена сломана. ]];
 
        end;
 
    end;
 
    used = function(s, o)
 
        if o == nley_item_drill then
 
            nley_cat_room_2.state = 1;
 
            remove(nley_item_drill, pl);
 
            path('На север', nley_cat_room_2):enable();
 
            return [[Довольно долго камни стены сопротивляются действию бура, но после десятка сквозных отверстий в нужных местах, кладка начала рассыпаться сама собой. Путь свободен. ]];
 
        end;
 
    end
 
}
 

	
 
nley_item_drill = obj {
 
    nam = 'nley_item_drill';
 
    dsc = [[В углу комнаты лежит {бур}, сделанный из неизвестного вам материала. ]];
 
    tak = [[Вы забираете бур с собой. ]];
 
    inv = [[Бур из неизвестного вам материала. ]];
 
}
 

	
 
nley_cat_room_3 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. ]];
 
    obj = {
 
        'nley_item_drill'
 
    };
 
    way = {
 
        kh_vroom('На запад, в коридор', 'nley_catacombs_3');
 
    }
 
}
 

	
 
nley_catacombs_4 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = 'Узкий, выложенный камнем коридор. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. На юге тоннель обвалился, закрывая проход. ';
 
    way = {
 
        kh_vroom('На север, по коридору', 'nley_catacombs_5');
 
        kh_vroom('На юг, по коридору', function(s)
 
            pr [[Этот проход завален. ]];
 
            return false;
 
        end);
 
    }
 
}
 

	
 
nley_catacombs_5 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Пересечение двух, совершенно одинаковых на ваш взгляд, коридоров. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. ]];
 
    way = {
 
        kh_vroom('На север, по коридору', 'nley_catacombs_8');
 
        kh_vroom('На юг, по коридору', 'nley_catacombs_4');
 
        kh_vroom('На запад, по коридору', 'nley_catacombs_6');
 
        kh_vroom('На восток, по коридору', 'nley_catacombs_7');
 
    }
 
}
 

	
 
nley_catacombs_6 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Узкий, выложенный камнем коридор. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. На севере и юге вы видите небольшие проемы, ведущие в отдельные комнатки. ]];
 
    way = {
 
        kh_vroom('На север, в комнату', 'nley_cat_room_5');
 
        kh_vroom('На юг, в комнату', 'nley_cat_room_4');
 
        kh_vroom('На запад, по коридору', 'nley_catacombs_de');
 
        kh_vroom('На восток, по коридору', 'nley_catacombs_5');
 
    }
 
}
 

	
 
nley_cat_room_4 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. Южная стена комнаты разрушена, открывая проход в смежное помещение. ]];
 
    way = {
 
        kh_vroom('На север, в коридор', 'nley_catacombs_6');
 
        kh_vroom('На юг', 'nley_cat_room_2');
 
    }
 
}
 

	
 
nley_cat_room_5 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. ]];
 
    way = {
 
        kh_vroom('На юг, в коридор', 'nley_catacombs_6');
 
    }
 
}
 

	
 
nley_catacombs_de = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Здесь коридор заканчивается глухой стеной. На севере и юге есть небольшие проемы, ведущие в отдельные комнатки. ]];
 
    way = {
 
        kh_vroom('На север, в комнату', 'nley_cat_room_7');
 
        kh_vroom('На юг, в комнату', 'nley_cat_room_6');
 
        kh_vroom('На восток, по коридору', 'nley_catacombs_6');
 
    }
 
}
 

	
 
nley_cat_room_6 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. ]];
 
    way = {
 
        kh_vroom('На север, в коридор', 'nley_catacombs_de');
 
    }
 
}
 

	
 
nley_item_grate_key = room {
 
    nam = 'nley_item_grate_key';
 
    disp = 'Ключ';
 
    inv = [[Ключик, найденный вами в катакомбах Нлейисланотра. ]];
 
    dsc = [[В углу вы замечаете небольшой {предмет}, покрытый илом. ]];
 
    tak = [[Это небольшой ключик. Вы забираете его себе. ]];
 
}
 

	
 
nley_cat_room_7 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. ]];
 
    way = {
 
        kh_vroom('На юг, в коридор', 'nley_catacombs_de');
 
    }
 
}
 

	
 

	
 

	
 
nley_catacombs_password = input_number_nav {
 
    nam = 'Нлейисланотр, катакомбы';
 
    maxlen = 4;
 
    password = nil;
 
    label = 'На стене перед вами расположено несколько кнопок. Шесть из них соответствуют навьярским цифрам, еще одна гласит "завершить". Очевидно, с их помощью нужно ввести код. ^Введенный код:';
 
    check = function(s, input)
 
        if input == s.password then
 
            path('На восток, в секретную дверь', nley_cat_room_8):enable();
 
            nley_cat_room_8.state = 1;
 
            pn [[Вы слышите скрежет, доносящийся откуда-то с востока. ]];
 
        else
 
            pn [[Ничего не происходит. ]];
 
        end;
 
        back();
 
    end;
 
}
 

	
 
nley_cat_panel = obj {
 
    nam = "nley_cat_panel";
 
    dsc = "На одной из стен вы замечаете несколько выступающих {кнопок}. ";
 
    act = function(s)
 
        walkin(nley_catacombs_password);
 
    end;
 
};
 

	
 
nley_catacombs_7 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Узкий, выложенный камнем коридор. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. На севере вы видите небольшой проем, ведущий в отдельную комнатку. На востоке коридор обрушился, преграждая вам путь. ]];
 
    way = {
 
        kh_vroom('На север, в комнату', 'nley_cat_room_8');
 
        kh_vroom('На запад, по коридору', 'nley_catacombs_5');
 
        kh_vroom('На восток, по коридору', function(s)
 
            pr [[Этот проход завален. ]];
 
            return false;
 
        end);
 
    };
 
}
 

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

	
 
nley_catacombs_8 = room {
 
    var {
 
        state = 0;
 
    };
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Узкий, выложенный камнем коридор. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. ]];
 
    obj = {
 
        'nley_cat_8_grate'
 
    };
 
    way = {
 
        kh_vroom('На север, по коридору', function(s)
 
            if nley_catacombs_7.state == 0 then
 
                pr [[Решетка преграждает вам путь. ]];
 
                return false;
 
            else
 
                return 'nley_catacombs_9';
 
            end;
 
        end);
 
        kh_vroom('На юг, по коридору', 'nley_catacombs_5');
 
    };
 
}
 

	
 
nley_cat_8_grate = obj {
 
    nam = 'nley_cat_8_grate';
 
    dsc = [[Прочная коралловая {решетка} преграждает путь. ]];
 
    act = [[Решетка очень прочная. Вам ее не сломать. В стене рядом с решеткой есть замочная скважина. ]];
 
    used = function(s, o)
 
        if o == nley_item_grate_key then
 
            remove(nley_cat_8_grate, here());
 
            remove(nley_item_grate_key, pl);
 
            nley_catacombs_8.state = 1;
 
            return [[Ключ подходит к замку. Вы поворачиваете его и решетка поднимается. ]];
 
        end;
 
    end
 
}
 

	
 
nley_catacombs_9 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Узкий, выложенный камнем коридор. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. На западе и востоке вы видите небольшие проемы, ведущие в отдельные комнатки. ]];
 
    way = {
 
        kh_vroom('На запад, в комнату', 'nley_cat_room_9');
 
        kh_vroom('На восток, в комнату', 'nley_cat_room_10');
 
        kh_vroom('На юг, по коридору', 'nley_catacombs_8');
 
        kh_vroom('На север, по коридору', 'nley_catacombs_10');
 
    }
 
}
 

	
 
nley_cat_room_9 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. Это помещение завалено всевозможными контейнерами: ящиками, бочками, клетками и, очевидно, используется как склад. ]];
 
    way = {
 
        kh_vroom('На восток, в коридор', 'nley_catacombs_9');
 
    };
 
}
 

	
 
nley_cat_room_10 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. Это помещение завалено всевозможными контейнерами: ящиками, бочками, клетками и, очевидно, используется как склад. ]];
 
    obj = {
 
        'nley_item_food'
 
    };
 
    way = {
 
        kh_vroom('На запад, в коридор', 'nley_catacombs_9');
 
    };
 
}
 

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

	
 
nley_catacombs_10 = room {
 
    var {
 
        state = 0;
 
    };
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Узкий, выложенный камнем коридор. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. Здесь тоннель соединяется с другим, ведущим на восток. ]];
 
    obj = {
 
        'nley_cat_10_grate';
 
    };
 
    way = {
 
        kh_vroom('На восток, по коридору', 'nley_catacombs_13');
 
        kh_vroom('На юг, по коридору', 'nley_catacombs_9');
 
        kh_vroom('На север, по коридору', function(s)
 
            if nley_catacombs_7.state == 0 then
 
                pr [[Решетка преграждает вам путь. ]];
 
                return false;
 
            else
 
                return 'nley_catacombs_11';
 
            end;
 
        end);
 
    }
 
}
 

	
 
nley_cat_10_grate = obj {
 
    nam = 'nley_cat_10_grate';
 
    dsc = [[Прочная коралловая {решетка} преграждает путь. ]];
 
    act = [[Решетка очень прочная. Вам ее не сломать. В стене рядом с решеткой есть замочная скважина. ]];
 
    used = function(s, o)
 
        if o == nley_item_prison_key then
 
            remove(nley_cat_10_grate, here());
 
            remove(nley_item_prison_key, pl);
 
            nley_catacombs_10.state = 1;
 
            return [[Ключ подходит к замку. Вы поворачиваете его и решетка поднимается. ]];
 
        end;
 
    end
 
}
 

	
 
nley_catacombs_11 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Узкий, выложенный камнем коридор. Стены покрыты тонкими прожилками светящихся водорослей. На западе вы видите зарешеченный проход в небольшую комнатку. Внутри нее сидит навьяр. На востоке точно такой же проход, но решетка открыта. ]];
 
    way = {
 
        kh_vroom('К решетке на западе', 'nley_cat_cell_1');
 
        kh_vroom('На восток, в комнату', 'nley_cat_cell_2');
 
        kh_vroom('На юг, по коридору', 'nley_catacombs_10');
 
        kh_vroom('На север, по коридору', 'nley_catacombs_12');
 
    }
 
}
 

	
 
nley_cat_cell_1 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Вы стоите у решетки, за которой расположена небольшая комнатушка, служащая тюрьмой. ]];
 
    obj = {
 
        'nley_prisoner';
 
    };
 
    way = {
 
        kh_vroom('Отойти от решетки', 'nley_catacombs_11');
 
    }
 
}
 

	
 
nley_cat_cell_2 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. ]];
 
    obj = {
 
        'nley_dead_prisoner';
 
    };
 
    way = {
 
        kh_vroom('На запад, в коридор', 'nley_catacombs_11');
 
    }
 
}
 

	
 
nley_dead_prisoner = obj {
 
    nam = 'nley_dead_prisoner';
 
    dsc = 'На полу комнаты лежит мертвый {навьяр}. ';
 
    act = [[Соленая вода хорошо сохранила труп. Вы не знаете лежит он здесь несколько часов или же дней. ]];
 
}
 

	
 
nley_prisoner = obj {
 
    var {
 
        state = 0;
 
    };
 
    nam = 'nley_prisoner';
 
    dsc = function(s)
 
        if s.state == 0 then
 
            return [[Худой {навьяр} при виде вас подходит к решетке, по его головным плавникам бегут цветные полосы: "Вы можете мне помочь?"]];
 
        else
 
            return [[Худой {навьяр} сидит в углу комнаты. ]];
 
        end;
 
    end;
 
    act = function(s)
 
        if s.state == 0 then
 
            return [[По головным плавникам навьяра бегут цветные полосы: "Кто бы вы ни были. Принесите мне еды и я скажу вам как открыть потайной проход здесь, в катакомбах". ]];
 
        else
 
            return [[По головным плавникам навьяра бегут цветные полосы: "Эти цифры откроют проход: ]] .. nley_catacombs_password.password .. [[". ]]
 
        end;
 
    end;
 
    used = function(s, o)
 
        if o == nley_item_food then
 
            s.state = 1;
 
            remove(nley_item_food, pl);
 
            return [[Навьяр выхватывает клочок водорослей из ваших рук и сразу же глотает его. По головным плавникам навьяра бегут цветные полосы: "Благодарю вас. Эти цифры откроют проход: ]] .. nley_catacombs_password.password .. [[". ]]
 
        end;
 
    end
 
}
 

	
 
nley_catacombs_12 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Узкий, выложенный камнем коридор заканчивается на севере глухой стеной. Стены покрыты тонкими прожилками светящихся водорослей. На западе вы видите зарешеченный проход в небольшую комнатку. Внутри нее спит навьяр. На востоке точно такой же проход, но решетка открыта. ]];
 
    way = {
 
        kh_vroom('К решетке на западе', 'nley_cat_cell_3');
 
        kh_vroom('На восток, в комнату', 'nley_cat_cell_4');
 
        kh_vroom('На юг, по коридору', 'nley_catacombs_11');
 
    }
 
}
 

	
 
nley_cat_cell_3 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Вы стоите у решетки, за которой расположена небольшая комнатушка, служащая тюрьмой. ]];
 
    obj = {
 
        'nley_sleeping_prisoner';
 
    };
 
    way = {
 
        kh_vroom('Отойти от решетки', 'nley_catacombs_12');
 
    }
 
}
 

	
 
nley_cat_cell_2 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. ]];
 
    way = {
 
        kh_vroom('На запад, в коридор', 'nley_catacombs_12');
 
    }
 
}
 

	
 
nley_sleeping_prisoner = obj {
 
    nam = 'nley_sleeping_prisoner';
 
    dsc = [[В дальнем конце комнаты спит {навьяр}. ]];
 
    act = [[Как бы вы ни пытались, вам не удается его разбудить. ]];
 
}
 

	
 
nley_catacombs_13 = room {
 
    state = 0;
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Узкий, выложенный камнем коридор. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. Здесь тоннель соединяется с другим, ведущим на запад. Вдалеке на севере стоят несколько навьяров. ]];
 
    way = {
 
        kh_vroom('На запад, по коридору', 'nley_catacombs_10');
 
        kh_vroom('На юг, по коридору', 'nley_catacombs_14');
 
        kh_vroom('На север, по коридору', function(s)
 
            if nley_catacombs_13.state == 0 then
 
                nley_catacombs_13.state = 1;
 
                pr [[Вас там могут заметить.]];
 
                return false;
 
            else
 
                return 'game_over_nley_cat_caught';
 
            end;
 
        end);
 
    }
 
}
 

	
 
nley_catacombs_14 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Узкий, выложенный камнем коридор. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. На западе и востоке вы видите небольшие проемы, ведущие в отдельные комнатки. На юге коридор обрушился, преграждая вам путь. ]];
 
    way = {
 
        kh_vroom('На запад, в комнату', 'nley_cat_room_11');
 
        kh_vroom('На восток, в комнату', 'nley_cat_room_12');
 
        kh_vroom('На север, по коридору', 'nley_catacombs_13');
 
        kh_vroom('На юг, по коридору', function(s)
 
            pr [[Этот проход завален. ]];
 
            return false;
 
        end);
 
    };
 
}
 

	
 
nley_cat_room_11 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. ]];
 
    way = {
 
        kh_vroom('На восток, в коридор', 'nley_catacombs_14');
 
    }
 
}
 

	
 
nley_cat_room_12 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. В центре комнаты стоит небольшой столик. ]];
 
    enter = function(s)
 
        if nley_sleeping_guard.state ~= 0 then
 
            walk(game_over_nley_cat_ambush);
 
        end;
 
    end;
 
    obj = {
 
        'nley_sleeping_guard'
 
    };
 
    way = {
 
        kh_vroom('На запад, в коридор', 'nley_catacombs_14');
 
    }
 
}
 

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

	
 
nley_item_prison_key = obj {
 
    nam = 'nley_item_prison_key';
 
    disp = 'Ключ';
 
    inv = [[Ключик, взятый вами у стражника в катакомбах Нлейисланотра. ]];
 
}
 

	
 
nley_catacombs_15 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Узкий, выложенный камнем коридор. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. На западе и востоке вы видите небольшие проемы, ведущие в отдельные комнатки. На севере коридор обрушился, преграждая вам путь. ]];
 
    way = {
 
        kh_vroom('На запад, в комнату', 'nley_cat_room_13');
 
        kh_vroom('На восток, в комнату', 'nley_cat_room_14');
 
        kh_vroom('На север, по коридору', function(s)
 
            pr [[Этот проход завален. ]];
 
            return false;
 
        end);
 
        kh_vroom('На юг, по коридору', 'nley_catacombs_13');
 
    };
 
}
 

	
 
nley_cat_room_13 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. В западной стене комнаты открыт потайной проход, ведущий в другую часть катакомб. ]];
 
    way = {
 
        kh_vroom('На восток, в коридор', 'nley_catacombs_15');
 
        kh_vroom('На запад, в секретную дверь', 'nley_cat_room_13'):disable();
 
    }
 
}
 

	
 
nley_cat_room_14 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. ]];
 
    way = {
 
        kh_vroom('На запад, в коридор', 'nley_catacombs_15');
 
    }
 
}
 

	
 
nley_catacombs_16 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Узкий, выложенный камнем коридор. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. Здесь тоннель соединяется с другим, ведущим на север. ]];
 
    way = {
 
        kh_vroom('На запад, по коридору', function(s)
 
            pr [[Этот проход завален. ]];
 
            return false;
 
        end);
 
        kh_vroom('На север, по коридору', 'nley_catacombs_15');
 
        kh_vroom('На восток, по коридору', 'nley_catacombs_17');
 
    }
 
}
 

	
 
nley_catacombs_17 = room {
 
    var {
 
        state = 0;
 
    };
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Узкий, выложенный камнем коридор. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. Здесь тоннель поворачивает на север. ]];
 
    way = {
 
        kh_vroom('На запад, по коридору', 'nley_catacombs_16');
 
        kh_vroom('На север, по коридору', function(s)
 
            if nley_catacombs_17.state == 0 then
 
                pr [[Решетка преграждает вам путь. ]];
 
                return false;
 
            else
 
                return 'nley_catacombs_18';
 
            end;
 
        end);
 
    }
 
}
 

	
 
nley_cat_17_grate = obj {
 
    nam = 'nley_cat_17_grate';
 
    dsc = [[Прочная коралловая {решетка} преграждает путь. ]];
 
    act = [[Решетка очень прочная. Вам ее не сломать. В стене рядом с решеткой есть замочная скважина. ]];
 
    used = function(s, o)
 
        if o == nley_item_prison_key then
 
            remove(nley_cat_17_grate, here());
 
            remove(nley_cellar_key, pl);
 
            nley_catacombs_17.state = 1;
 
            return [[Ключ подходит к замку. Вы поворачиваете его и решетка поднимается. ]];
 
        end;
 
    end
 
}
 

	
 
nley_catacombs_18 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Узкий, выложенный камнем коридор. Такие протянулись почти под всем городом. Стены покрыты тонкими прожилками светящихся водорослей. Здесь тоннель заканчивается дверным проемом, ведущим в небольшую комнату. На западе и востоке вы видите проемы, ведущие в другие комнатки. ]];
 
    way = {
 
        kh_vroom('На запад, в комнату', 'nley_cat_room_15');
 
        kh_vroom('На восток, в комнату', 'nley_cat_room_16');
 
        kh_vroom('На север, в комнату', 'nley_map_room');
 
        kh_vroom('На юг, по коридору', 'nley_catacombs_17');
 
    }
 
}
 

	
 
nley_cat_room_15 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. ]];
 
    way = {
 
        kh_vroom('На восток, в коридор', 'nley_catacombs_18');
 
    }
 
}
 

	
 
nley_cat_room_16 = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. ]];
 
    obj = {
 
        'item_map_disc'
 
    };
 
    way = {
 
        kh_vroom('На запад, в коридор', 'nley_catacombs_18');
 
    }
 
}
 

	
 
nley_map_room = room {
 
    nam = 'Нлейисланотр, катакомбы';
 
    dsc = [[Небольшая комнатка, стены которой покрыты тонкими прожилками светящихся водорослей. ]];
 
    obj = {
 
        'nley_pedestal'
 
    };
 
    way = {
 
        kh_vroom('На юг, в коридор', 'nley_catacombs_18');
 
    }
 
}
 

	
 
nley_pedestal = obj {
 
    var {
 
        taken = false;
 
    };
 
    nam = "nley_pedestal";
 
    dsc = function(s)
 
        if (s.taken) then
 
            return [[Пьедестал в центре комнаты пуст. ]];
 
        else
 
            return [[На пьедестале в центре комнаты вы видите небольшую металлическую пластину - судя по обозначениям это {фрагмент карты}. ]];
 
        end;
 
    end;
 
    act = function(s)
 
        if (not s.taken) then
 
            s.taken = true;
 
            item_lse_map.state = item_lse_map.state + 1;
 
            if item_lse_map.state == 5 then
 
                lseryanotrr_found = true;
 
                return [[Вы забираете фрагмент карты себе. Теперь у вас есть полная карта пути в Лсэрианотр. ]];
 
            else
 
                return [[Вы забираете фрагмент карты себе. ]];
 
            end;
 
        end;
 
    end;
 
};
journey_temple.lua
Show inline comments
 
dt_intro = lsutscene('Левиафан, рубка', 'Левиафан, рубка', [[Следуя карте, найденной в светодиске, вы следуете к древнейшему из известных вам навьярских сооружений. Через месяц пути вы оказываетесь в глубоком лабиринте ущелий. Здесь вам предстоит найти искомое. ]], 'Вы прибыли в древний храм. ', dt_labyrinth);
 
dt_intro = lcutscene('Левиафан, рубка', 'Левиафан, рубка', [[Следуя карте, найденной в светодиске, вы следуете к древнейшему из известных вам навьярских сооружений. Через месяц пути вы оказываетесь в глубоком лабиринте ущелий. Здесь вам предстоит найти искомое. ]], 'Вы прибыли в древний храм. ', dt_labyrinth);
 

	
 
dt_labyrinth_foot = room {
 
    nam = "dt_labyrinth_foot";
 
    no_exit = [[
 
        Нет смысла покидать Левиафан здесь. 
 
    ]];
 
    handwheel_room = "dt_labyrinth";
 
};
 

	
 
dt_labyrinth_bridge = room {
 
    nam = "dt_labyrinth_bridge";
 
    no_exit = [[
 
         Вы не сможете высадиться здесь. 
 
    ]];
 
    handwheel_room = "dt_labyrinth";
 
};
 

	
 
--id, dsc, directions, where, leviathan_where
 
dt_labyrinth_map = {
 
    ["01"] = {
 
        dsc = [[
 
            Вы находитесь у входа в сложный лабиринт ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        ne = "02",
 
        where = dt_labyrinth_foot
 
    };
 
    ["02"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        sw = "01",
 
        e = "03",
 
        where = dt_labyrinth_foot
 
    };
 
    ["03"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        w = "02",
 
        ne = "04",
 
        where = dt_labyrinth_foot
 
    };
 
    ["04"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        sw = "03",
 
        nw = "05",
 
        e = "07",
 
        where = dt_labyrinth_foot
 
    };
 
    ["05"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        se = "04",
 
        n = "06",
 
        where = dt_labyrinth_foot
 
    };
 
    ["06"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        s = "05",
 
        where = dt_labyrinth_foot
 
    };
 
    ["07"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        w = "04",
 
        n = "08",
 
        se = "09",
 
        where = dt_labyrinth_foot
 
    };
 
    ["08"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        s = "07",
 
        where = dt_labyrinth_foot
 
    };
 
    ["09"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        w = "33",
 
        ne = "10",
 
        nw = "07",
 
        where = dt_labyrinth_foot
 
    };
 
    ["10"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        ne = "11",
 
        sw = "09",
 
        where = dt_labyrinth_foot
 
    };
 
    ["11"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Под вами с северо-запада на юго-восток простирается глубокая расщелина. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        ne = "13",
 
        se = "14",
 
        nw = "12",
 
        sw = "10",
 
        where = dt_labyrinth_foot
 
    };
 
    ["12"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Под вами простирается глубокая расщелина. Она продолжается на северо-запад настолько далеко, насколько хватает мощности прожектора Левиафана, однако, судя по карте, вам нет смысла двигаться в том направлении.
 
        ]], 
 
        se = "11",
 
        where = dt_labyrinth_foot
 
    };
 
    ["13"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        sw = "11",
 
        where = dt_labyrinth_foot
 
    };
 
    ["14"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Под вами с северо-запада на юго-восток простирается глубокая расщелина. На юго-востоке вы видите узкий каменный мостик, протянувшийся над бездной. Из отверстия в скале напротив моста исходит яркий свет. 
 
        ]], 
 
        nw = "11",
 
        se = "15",
 
        where = dt_labyrinth_foot
 
    };
 
    ["15"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Под вами с северо-запада на юго-восток простирается глубокая расщелина. Прямо под Левиафаном вы видите узкий каменный мостик, из отверстия в скале напротив которого исходит яркий свет. Мостик слишком узкий и вы не можете высадиться здесь
 
        ]], 
 
        nw = "11",
 
        se = "15",
 
        where = dt_labyrinth_bridge
 
    };
 
    ["16"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        ne = "35",
 
        where = dt_labyrinth_foot
 
    };
 
    ["17"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Под вами с северо-запада на юго-восток простирается глубокая расщелина. На северо-западе вы видите узкий каменный мостик, протянувшийся над бездной. Из отверстия в скале напротив моста исходит яркий свет. 
 
        ]], 
 
        nw = "15",
 
        where = dt_labyrinth_foot
 
    };
 
    ["18"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        ne = "31",
 
        where = dt_labyrinth_foot
 
    };
 
    ["19"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. на северо-востоке вы видите глубокую расщелину, простирающуюся с северо-запада на юго-восток. над расщелиной висит узкий каменный мостик. Из отверстия в скале напротив него исходит яркий свет. 
 
        ]], 
 
        ne = "15",
 
        w = "20",
 
        where = "dt_temple_ravine"
 
    };
 
    ["20"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        e = "19",
 
        s = "20",
 
        where = dt_labyrinth_foot
 
    };
 
    ["21"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        n = "20",
 
        se = "22",
 
        where = dt_labyrinth_foot
 
    };
 
    ["22"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        nw = "21",
 
        sw = "23",
 
        where = dt_labyrinth_foot
 
    };
 
    ["23"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        ne = "22",
 
        w = "24",
 
        where = dt_labyrinth_foot
 
    };
 
    ["24"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        e = "23",
 
        sw = "25",
 
        where = dt_labyrinth_foot
 
    };
 
    ["25"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        ne = "24",
 
        nw = "26",
 
        where = dt_labyrinth_foot
 
    };
 
    ["26"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        ne = "27",
 
        se = "25",
 
        where = dt_labyrinth_foot
 
    };
 
    ["27"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        ne = "28",
 
        sw = "26",
 
        nw = "30",
 
        where = dt_labyrinth_foot
 
    };
 
    ["28"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        sw = "27",
 
        nw = "29",
 
        where = dt_labyrinth_foot
 
    };
 
    ["29"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        se = "28",
 
        where = dt_labyrinth_foot
 
    };
 
    ["30"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        se = "27",
 
        w = "31",
 
        where = dt_labyrinth_foot
 
    };
 
    ["31"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        e = "30",
 
        n = "32",
 
        w = "34",
 
        where = dt_labyrinth_foot
 
    };
 
    ["32"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        ne = "33",
 
        s = "31",
 
        where = dt_labyrinth_foot
 
    };
 
    ["33"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        e = "9",
 
        s = "31",
 
        where = dt_labyrinth_foot
 
    };
 
    ["34"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        e = "31",
 
        w = "35",
 
        where = dt_labyrinth_foot
 
    };
 
    ["35"] = {
 
        dsc = [[
 
            Вы находитесь в лабиринте ущелий и впадин. Где-то здесь скрыт древний навьярский храм. 
 
        ]], 
 
        e = "34",
 
        sw = "16",
 
        where = dt_labyrinth_foot
 
    };
 
};
 

	
 
dt_labyrinth = room {
 
    var {
 
        location = "01";
 
    };
 
    no_exit = [[
 
        Нет смысла покидать Левиафан здесь. 
 
    ]];
 
    nam = "Штурвал Левиафана";
 
    dsc = function(s)
 
        return dt_labyrinth_map[dt_labyrinth.location].dsc;
 
    end;
 
    entered = function(s)
 
        s:update();
 
    end;
 
    update = function(s)
 
        dt_north:disable();
 
        dt_north_east:disable();
 
        dt_east:disable();
 
        dt_south_east:disable();
 
        dt_south:disable();
 
        dt_south_west:disable();
 
        dt_west:disable();
 
        dt_north_west:disable();
 
        if (dt_labyrinth_map[dt_labyrinth.location].n) then
 
            dt_north:enable();
 
        end;
 
        if (dt_labyrinth_map[dt_labyrinth.location].ne) then
 
            dt_north_east:enable();
 
        end;
 
        if (dt_labyrinth_map[dt_labyrinth.location].e) then
 
            dt_east:enable();
 
        end;
 
        if (dt_labyrinth_map[dt_labyrinth.location].se) then
 
            dt_south_east:enable();
 
        end;
 
        if (dt_labyrinth_map[dt_labyrinth.location].s) then
 
            dt_south:enable();
 
        end;
 
        if (dt_labyrinth_map[dt_labyrinth.location].sw) then
 
            dt_south_west:enable();
 
        end;
 
        if (dt_labyrinth_map[dt_labyrinth.location].w) then
 
            dt_west:enable();
 
        end;
 
        if (dt_labyrinth_map[dt_labyrinth.location].nw) then
 
            dt_north_west:enable();
 
        end;
 
    end;
 
    way = {
 
        kh_vroom("Отойти от штурвала", "leviathan_wheelhouse");
 
    };
 
    obj = {
 
        "dt_north",
 
        "dt_north_east",
 
        "dt_east",
 
        "dt_south_east",
 
        "dt_south",
 
        "dt_south_west",
 
        "dt_west",
 
        "dt_north_west"
 
    };
 
};
 

	
 
dt_north = obj {
 
    nam = "dt_north";
 
    dsc = "{На север}^";
 
    act = function(s)
 
        pr [[
 
            Вы движетесь на север.
 
        ]];
 
        dt_labyrinth.location = dt_labyrinth_map[dt_labyrinth.location].n;
 
        dt_labyrinth:update();
 
    end;
 
};
 

	
 
dt_north_east = obj {
 
    nam = "dt_north_east";
 
    dsc = "{На северо-восток}^";
 
    act = function(s)
 
        pr [[
 
            Вы движетесь на северо-восток.
 
        ]];
 
        dt_labyrinth.location = dt_labyrinth_map[dt_labyrinth.location].ne;
 
        dt_labyrinth:update();
 
    end;
startup.lua
Show inline comments
 
global {
 
    warehouse18_found = false;
 
    warehouse32_found = false;
 
    warehouse32_visited = false;   
 
    warehouse32_visited = false;
 
    dock_found = false;
 
    leviathan_discovered = false;
 

	
 
    atlantis_found = false;
 
    temple_found = false;
 

	
 
    iraaphaanotrr_found = false;
 
    iraaphaanotrr_temple_found = false;
 

	
 
    dypatreanotrr_found = false;
 
    dypatreanotrr_night_found = false;
 
    dypatreanotrr_temple_found = false;
 

	
 
    venaedanotrr_found = false;
 
    venaedanotrr_ravine_found = false;
 
    venaedanotrr_temple_found = false;
 

	
 
    nleyyslanotrr_found = false;
 

	
 
    deep_temple_found = false;
 
    lseryanotrr_found = false;
 
    
 
    rel_phaetlarr = 0;
 
    rel_walter = 0;
 
    rel_learr = 0;
 
    rel_anna = 0;
 
    rel_jack = 0;
 
    language_known = false;
 
    cart_known = false;
 
    
 
    dt_code = {};
 
    dt_buttons = {};
 

	
 
    raybox_task = false;
 
    raybox_task_finished = false;
 

	
 
    --Глобальные состояния(для концовок)
 
    mtr_outcome = 0; -- 1 - leroy accused, 2 - jones accused, 3 - failed to prove
 

	
 
    conflict_resolved = false; -- Решен ли конфликт между навьярами
 
    artifacts_returned = false; -- Вернили ли артефакты из храма навьярам?
 
    wright_state = 0; -- был взят Райт на борт или нет
 
    goldman_state = 0; -- 0 - Голдман не раскрыт, 1 - Голдман казнен, 2 - Голдман задержан, 3 - Голдман изгнан
 
    leroy_state = 0; -- 0 - Леруа не раскрыт, 1 - Леруа казнен, 2 - Леруа задержан, 3 - Леруа изгнан
 
    iraa_scepter = false; -- был ли возвращен скипетр в Ираафаанотр
 
    iraa_map = false; -- был ли возвращен оригинал карты в Ираафаанотр
 
    dyp_map = false; -- Передана ли карта(оригинал или копия в Дипатреанотр)
 
    svetlova_help = 0; -- Дополнительная помощь, оказанная Светловой в исследовании навьяров --увеличивается, если показать ей КНО и скипетр
 
};
 

	
 
game.enable_save = function ()
 
    if here().nosave then
 
        return false;
 
    end;
 
    return true;
 
end;
 

	
 
game.enable_autosave = function ()
 
    if here().noautosave then
 
        return false;
 
    end;
 
    return true;
 
end;
 

	
 

	
 
player_drake = player {
 
    var {
 
        hp = 10;
 
        has_light = false;
 
        party = {--[["learr", "radcliffe", "phaetlarr", "wright"]]};
 
        companion = nil;
 
        money = 200;
 
    };
 
    nam = "player";
 
    disp = "Дэвид Дрейк";
 
    disp2 = "Дрейка";
 
    disp3 = "Дрейку";
 
    where = 'port';
 
    
 
    obj = {'hp_indicator', 'item_umbrella', 'item_charts', 'item_note_1', 'item_money'};
 
    
 
    pay = function(s, c)
 
        if (s.money >= c) then
 
            s.money = s.money - c;
 
            return true;
 
        else
 
            return false;
 
        end;
 
    end;
 
};
 

	
 
intro = room {
 
    nam = "intro";
 
    hideinv = true;
 
    disp = "Вступление";
 
    dsc = [[
 
        ВНИМАНИЕ: Это специальная предварительная версия игры. Ни один фрагмент игры не является финальным.^^
 
        Действие игры происходит в конце 19-го века. Вы играете за Дэвида Дрейка -- единственного сына богатого и уважаемого владельца транспортной компании "Вестхейвен Трансоушен". ^
 
        Несколько лет назад, когда Дэвиду было 10 лет, Уильям таинственным образом бесследно пропал. Полицейское расследование вскоре зашло в тупик и было прекращено. Через несколько месяцев компания, оставшаяся без своего владельца, обанкротилась, ее имущество распродается. ^
 
        После исчезновения отца Дэвид жил в Вашингтоне с бабушкой. Он пошел по стопам отца и выучился на инженера-кораблестроителя. Несколько дней назад в доме, где он жил, был обнаружен тайник, хранящий секретные документы отца -- карты, указывающие, по-видимому, на какие-то тайники Уильяма и записка с адресом и именем.^
 
        Одержимый идеей узнать больше, Дэвид отправляется в Лондон...
 
    ]];
 
    obj = {
 
        vway("Начать игру", "{Начать игру}", 'aurora_borealis');
 
    }
 
};
 

	
 
game.nam = "Пробуждение";
 
game.dsc = [[
 
    Действие игры происходит в конце 19-го века. Вы играете за Дэвида Дрейка, сына владельца крупной транспортной компании "Вестхейвен Трансоушен". Несколько лет назад Уильям Дрейк, отец главного героя бесследно пропадает. Компания вскоре разваливается. Поиски ни к чему не приводят. Когда казалось бы уже все потеряно, в доме Дрейков находят тайник с документами Уильяма. Несколько схем строений, принадлежащих компании и клочок бумаги с адресом некоего Майкла Райта в Лондоне. Естественно, Дэвид как можно скорее отправляется в Великобританию...
 
    Вам предстоит отыскать подводную лодку, посетить подводную станцию, построенную Уильямом, встретить древнюю расу подводных жителей, поучаствовать в событиях, описанных древними легендами этой расы и узнать, что стало с Уильямом Дрейком.
 
]];
 

	
 
game_act_phrases = {
 
    "Вы не знаете, что с этим делать. ";
 
    "Вам нет смысла это трогать. ";
 
    "Вам это ничем не поможет. ";
 
    "Это бессмысленно. ";
 
    "Незачем это трогать. ";
 
};
 

	
 
game_use_phrases = {
 
    "Вам это ничем не поможет. ";
 
    "Это бессмысленно. ";
 
    "Вы не знаете, как это сделать. "
 
};
 

	
 
game.act = function(s)
 
    return game_act_phrases[rnd(#game_act_phrases)];
 
end;
 

	
 
game.use = function(s)
 
    return game_use_phrases[rnd(#game_use_phrases)];
 
end;
 
game.inv = "INV: Если вы видите это сообщение -- это баг. ";
 

	
 
preview_unavailable_learr = game_over("preview_unavailable_learr", [[Спасти Леарр у обитателей Атлантиды не получилось. Гибель навьярессы поставила под угрозу многое, чего удалось добиться персоналу станции за долгие годы под водой. ^^Узнать, что произошло дальше, вы сможете в полной версии игры.^^Вы можете загрузить игру и попробовать спасти Леарр самостоятельно. ^^Мы ждем ваших отзывов на почту: inbox@silverwing.one^Следите за выходом новых версий на нашем сайте: awakening.silverwing.one]]);
 

	
 
preview_unavailable_rayfish = game_over("preview_unavailable_rayfish", [[Убив ската, вы восстанавливаете против себя всех навьяров из Дипатреанотра и Ираафаанотра. В ваших дальнейших поисках вам придется расчитывать только на себя.^^Узнать, что произошло дальше, вы сможете в полной версии игры.^^Вы можете загрузить игру и попробовать обойтись без убийства ската. ^^Мы ждем ваших отзывов на почту: inbox@silverwing.one^Следите за выходом новых версий на нашем сайте: awakening.silverwing.one]]);
 

	
 
preview_unavailable_venaedanotrr = cutscene("preview_unavailable_venaedanotrr", "Предварительная версия", [[Левиафан полным ходом несется вдаль, к невиданным доселе навьярским поселениям. Кто знает, какие приключения ждут вас и остальных членов экипажа субмарины?^^Узнать, что произошло дальше, вы сможете в полной версии игры. Если вы не собрали оба фрагмента карты, то вы можете продолжить игру. ^^Мы ждем ваших отзывов на почту: inbox@silverwing.one^Следите за выходом новых версий на нашем сайте: awakening.silverwing.one]], "leviathan_wheelhouse");
 

	
 
preview_unavailable_dypatreanotrr = cutscene("preview_unavailable_dypatreanotrr", "Предварительная версия", [[Вы входите в пещеру в поисках очередного фрагмента карты. Какие испытания предстоит вам преодолеть, прежде, чем вы найдете его? Вы узнаете это в полной версии игры. Если вы не собрали оба фрагмента карты, то вы можете продолжить игру. ^^Мы ждем ваших отзывов на почту: inbox@silverwing.one^Следите за выходом новых версий на нашем сайте: awakening.silverwing.one]], "dyp_temple_cave_entrance");
 

	
 
function init()
 
    ---modules init
 
    pl = player_drake;
 
    require "dbg";
 
    atlantis_init();
 
    leviathan_init();
 
    warehouse18_init();
 
    warehouse32_init();
 

	
 
    if prefs.language then
 
        language = prefs.language;
 
    else
 
        prefs.language = language;
 
    end;
 
    
 
    local nums = {1,2,3,4,5,6};
 
    for i = 1, 4 do 
 
        local index = rnd(#nums);
 
        table.insert(dt_code, nums[index]);
 
        table.remove(nums, index);
 
    end;
 
    nums = {1,2,3,4,5,6};
 
    for i = 1, 3 do 
 
        local index = rnd(#nums);
 
        table.insert(dt_buttons, nums[index]);
 
        table.remove(nums, index);
 
    end;
 
    ---game init
 
    pl.where = intro;
 
    ---debug
 
    nley_cave_entrance.state = 1;
 
    --[[nley_cave_entrance.state = 1;
 
    pl.where = "nley_phaetlarr_dlg_join";
 
    move("submarine_leviathan", "ven_temple_entrance");
 

	
 
    take(ven_item_green_key);
 
    take(ven_item_red_key);
 
    take(ven_item_tablet);
 
    ven_temple_labyrinth_l1.position = '17';
 

	
 
    -- leviathan
 
    submarine_leviathan.circuit_breaks = 0;
 
    submarine_leviathan.battery = true;
 
    submarine_leviathan.power_on = true;
 
    submarine_leviathan.air_level = 500000;
 
    submarine_leviathan.air_level = 500000;]]
 
end; 
0 comments (0 inline, 0 general)