Files @ 0fa1008b0e38
Branch filter:

Location: games/Awakening/startup.lua - annotation

Silverwing
Dypcave progress
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
a17f942ed4e8
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
c58efd4092be
global {
    warehouse18_found = false;
    warehouse32_found = false;
    warehouse32_visited = false;   
    dock_found = false;
    leviathan_discovered = false;
    atlantis_found = false;
    temple_found = false;
    iraaphaanotrr_found = false;
    dypatreanotrr_found = false;
    venaedanotrr_found = false;
    nleyyslanotrr_found = false;
    iraaphaanotrr_temple_found = false;
    dypatreanotrr_temple_found = false;
    venaedanotrr_temple_found = false;
    nleyyslanotrr_temple_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 = {};
    
    --Глобальные состояния(для концовок)
    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', "item_bankbook"};
    
    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", [[Спасти Леарр у обитателей Атлантиды не получилось. Гибель навьярессы поставила под угрозу многое, чего удалось добиться экипажу станции за долгие годы под водой. ^^Узнать, что произошло дальше, вы сможете в полной версии игры.^^Вы можете загрузить игру и попробовать спасти Леарр самостоятельно. ]]);

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

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

function init()
    ---modules init
    pl = player_drake;
    require "dbg";
    atlantis_init();
    leviathan_init();
    warehouse18_init();
    warehouse32_init();
    
    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
    
    --pl.where = "item_book_dlg";
    --pl.where = "dyp_obelisk_puzzle";
    --language_known = true;
    --put("item_toolbox", pl);
    --put("item_electric_lamp", pl);
    --put("item_dynamo", pl);
    --put("item_toolbox", pl);
    --put("item_cogs", pl);
    --put("item_ducttape", pl);
    --put("item_electrodes", pl);
    --pl.where = dock_2;
    --pl.where = warehouse_32;
    --put(item_lamp, pl);
    --language_known = true;
    --pl.where = "leviathan_airlock";
    --move(submarine_leviathan, "iyh_rear_entrance_foot");
    --put(item_suit, pl);
    --put(item_suit, pl);

    --pl.where = "atlantis_intro_dock";

    ---leviathan
    --submarine_leviathan.airpump = false;
    --[[
    leviathan_airlock.has_light = true;
    leviathan_wardroom.has_light = true;
    leviathan_wheelhouse.has_light = true;
    leviathan_corridor.has_light = true;
    leviathan_cabin_1.has_light = true;
    leviathan_cabin_2.has_light = true;
    leviathan_cabin_3.has_light = true;
    leviathan_cabin_4.has_light = true;
    leviathan_cabin_5.has_light = true;
    leviathan_captains_cabin.has_light = true;
    leviathan_cargo_hold.has_light = true;
    leviathan_engines.has_light = true;
    leviathan_lower_deck.has_light = true;
    leviathan_life_support.has_light = true;
    submarine_leviathan.air_level = 432000;
    submarine_leviathan.battery = true; 
    submarine_leviathan.battery_charge = 100;
    submarine_leviathan.circuit_breaks = 0;
    submarine_leviathan.valves_to_replace = 0;
    submarine_leviathan.power_on = true
    pl.party = {'wright', 'learr'};
    char_learr.follow = true;
    atlantis_found = true;--]]
    --take(item_colt);
    --take(item_harpoon);
   -- checkers_game:reset();
    --pl.where = "checkers_game";
    --- iraaphaanotrr
   --move(submarine_leviathan, "iraa_temple_entrance");
    --[[
    ---IYH
    lifeon(char_learr);
    lifeon(char_wright);
    lifeon(char_radcliffe);
    lifeon(char_anna);
    lifeon(char_aikerjarr_lev);
    pl.party = {'learr', 'wright', 'radcliffe', 'anna'};
    atlantis_found = true;
    move(submarine_leviathan, "ctt_dyp_temple_entrance");
    --move(submarine_leviathan, "iyh_far_from_entrance_foot");
    pl.where = leviathan_wheelhouse;
    submarine_leviathan.battery = true; -- Состояние батареи 
    submarine_leviathan.battery_charge = 100; -- Уровень заряда батареи
    submarine_leviathan.circuit_breaks = 0; -- Разрывы цепи
    submarine_leviathan.valves_to_replace = 0; -- Количество клапанов, которые нужно заменить для полноценной работы
    submarine_leviathan.power_on = true; -- включена ли энергия
    submarine_leviathan.air_level = 432000; -- запас воздуха. Максимум - 5 дней(5 * 24 * 60 * 60 = 432000)
    submarine_leviathan.airpump = false;
    leviathan_airlock.has_light = true;
    leviathan_wardroom.has_light = true;
    leviathan_wheelhouse.has_light = true;
    leviathan_corridor.has_light = true;
    leviathan_cabin_1.has_light = true;
    leviathan_cabin_2.has_light = true;
    leviathan_cabin_3.has_light = true;
    leviathan_cabin_4.has_light = true;
    leviathan_cabin_5.has_light = true;
    leviathan_captains_cabin.has_light = true;
    leviathan_cargo_hold.has_light = true;
    leviathan_engines.has_light = true;
    leviathan_lower_deck.has_light = true;
    leviathan_life_support.has_light = true;
    --]]
    
    --- Chapter 1: Atlantis
    --[[submarine_leviathan.battery = true; -- Состояние батареи 
    submarine_leviathan.battery_charge = 100; -- Уровень заряда батареи
    submarine_leviathan.circuit_breaks = 0; -- Разрывы цепи
    submarine_leviathan.valves_to_replace = 0; -- Количество клапанов, которые нужно заменить для полноценной работы
    submarine_leviathan.power_on = true; -- включена ли энергия
    submarine_leviathan.air_level = 432000; -- запас воздуха. Максимум - 5 дней(5 * 24 * 60 * 60 = 432000)
    submarine_leviathan.airpump = false;
    leviathan_airlock.has_light = true;
    leviathan_wardroom.has_light = true;
    leviathan_wheelhouse.has_light = true;
    leviathan_corridor.has_light = true;
    leviathan_cabin_1.has_light = true;
    leviathan_cabin_2.has_light = true;
    leviathan_cabin_3.has_light = true;
    leviathan_cabin_4.has_light = true;
    leviathan_cabin_5.has_light = true;
    leviathan_captains_cabin.has_light = true;
    leviathan_cargo_hold.has_light = true;
    leviathan_engines.has_light = true;
    leviathan_lower_deck.has_light = true;
    leviathan_life_support.has_light = true;
    
    pl.party = {'wright'};
    put(item_toolbox, pl);
    put(item_ducttape, pl);
    pl.where = "leviathan_airlock";
    atlantis_found = true;
    move(submarine_leviathan, "atl_aqua_leviathan_dock");
    submarine_leviathan:enable();   ]]
           
    --ven_temple_l1.position = "66";   
    --put(item_ven_tablet, pl);
    --put(item_harpoon, pl);
    --put(item_colt, pl);
    --ven_shark.position = "55";
    --pl.where = "za_plaetlarr_fight";
    --pl.where = "lse_final_battle";
    --move(submarine_leviathan, "za_temple_back_entrance_foot");
    --char_anna.follow = true;
    --pl.where = "ven_chest_look";
    --move(ven_shark, "ven_temple_l1");
    
    --put(item_suit, pl);
    
    -- pl.where = warehouse_32;
    -- pl.where = w32_mgr;
    
    -- put(item_cogs, pl);
    -- put(item_pump_details, pl);
    -- put(item_electrodes, pl);
    --put(item_lamp, pl);
    -- pl.where = aurora_borealis;
    -- move(submarine_leviathan, first_city_entrance);
    -- move(submarine_leviathan, first_city_outer_east);
    -- walk(final_scene);
    -- walk(leviathan_wardroom);
    -- walk(leviathan_wardroom);
    -- put("char_learr", "leviathan_wardroom");
    -- put("char_phaetlarr", "leviathan_engines");
    -- put("char_radcliffe", "leviathan_engines");
    -- put("char_wright", "leviathan_wardroom");
    -- pl.where = leviathan_airlock;
    -- pl.where = hotel_street;
    -- pl.where = warehouse_32_entry;
    -- dock_found = true;
end;