Changeset - f5d8f03ee37b
[Not reviewed]
default
0 2 0
Silverwing - 7 years ago 2017-10-01 19:08:38

Learr behaviour on iyh improved
2 files changed with 26 insertions and 2 deletions:
0 comments (0 inline, 0 general)
atlantis_iyhehevjiarr.lua
Show inline comments
 
@@ -266,25 +266,36 @@ iyh_fight = room {
 
};
 
 
iyh_fight_torpedo_temple = obj {
 
	nam = "iyh_fight_torpedo_temple";
 
	dsc = "{Выстрелить торпедой в храм}^";
 
	act = function(s)
 
		if (math.abs(iyh_fight.temple_distance) < 50) then
 
			return [[Цель слишком близко. ]];
 
		elseif (math.abs(iyh_fight.temple_distance) > 200) then
 
			return [[Цель слишком далеко. ]];
 
		else
 
			atl_iyh_entrance_destroyed = true;
 
			return [[Торпеда попадает в аккурат над храмом и вход оказывается завален тяжелыми глыбами. ]];
 
            
 
			pr [[Торпеда попадает в аккурат над храмом и вход оказывается завален тяжелыми глыбами. ]];
 
            if (ArrayUtils.indexOf(pl.party, 'learr') ~= 0) then
 
                pr [[Леарр в ярости поднимается в рубку и кричит на вас: "Что ты делаешь?!"^Она с неприязнью смотрит на вас и удаляется к себе в каюту. ]];
 
                rel_learr = rel_learr - 1;
 
                char_learr.home = "leviathan_cabin_3";
 
                leviathan_cabin_3.lock = true;
 
            elseif (ArrayUtils.indexOf(pl.party, 'aikerjarr') ~= 0) then
 
                pr [[Аикерьярр отворачивается от иллюминатора и со злобой смотрит на вас: "Ты за-это-ответишь he'rr". ]];
 
                atl_rep_iraa = atl_rep_iraa - 1;
 
                atl_rep_dyp = atl_rep_dyp - 1;
 
            end;
 
		end;
 
	end;
 
};
 
 
iyh_fight_torpedo = obj {
 
	nam = "iyh_fight_torpedo";
 
	dsc = "{Выстрелить торпедой в ската}^";
 
	act = function(s)
 
		if (math.abs(iyh_fight.distance) < 50) then
 
			return [[Цель слишком близко. ]];
 
		elseif (math.abs(iyh_fight.distance) > 200) then
 
			return [[Цель слишком далеко. ]];
 
@@ -300,24 +311,25 @@ iyh_fight_torpedo = obj {
 
				pr("Вы стреляете торпедой в ската. Торпеда достигает цели. Ската отбрасывает назад на ".. tostring(meters) .. " метров. ");
 
			else
 
				iyh_fight.shockfish_health = 0;
 
				atl_iyh_shockfish_dead = true;
 
				pr "Вы стреляете торпедой в ската. Торпеда взрывается достигнув цели и разрывает ската. Вода краснеет от крови, а вы теперь можете безопасно приблизиться к храму. ";
 
				
 
				if (ArrayUtils.indexOf(pl.party, 'learr') ~= 0) then
 
					pr [[Леарр в ярости поднимается в рубку и кричит на вас: "Что ты делаешь ненавистный-a'rr?!"^Она с неприязнью смотрит на вас и удаляется к себе в каюту. ]];
 
                    rel_learr = -99;
 
                    atl_rep_iraa = atl_rep_iraa - 1;
 
                    atl_rep_dyp = atl_rep_dyp - 1;
 
                    char_learr.home = "leviathan_cabin_3";
 
                    leviathan_cabin_3.lock = true;
 
				elseif (ArrayUtils.indexOf(pl.party, 'aikerjarr') ~= 0) then
 
					pr [[Аикерьярр отворачивается от иллюминатора и со злобой смотрит на вас: "Ты за-это-ответишь he'rr". ]];
 
				end;
 
				
 
				if (math.abs(iyh_fight.temple_distance) < 100) then
 
					walk("iyh_near_temple");
 
				else
 
					walk("iyh_far_from_entrance");
 
				end;
 
				
 
				return;
 
			end;
 
@@ -1436,24 +1448,25 @@ iyh_outro_learr_shockfish_dead = room {
 
    nam = "Атлантида, док Левиафана";
 
    dsc = function(s)
 
        return [[При выходе из Левиафана, вас встречает Екатерина Светлова. Леарр выходит следом за вами и сообщает: "Я забираю-артефакты-в-Ираафаанотр". Светлова спрашивает: "Вы не разрешите нам оставить их на несколько дней для изучения?"^ Леарр отрезает: "Нет", -- и выходит из дока. Светлова вопросительно смотрит на вас и вы пересказываете ей произошедшее. Она лишь тяжело вздыхает глядя на вас, после чего уходит, махнув рукой.^Вы отправляетесь в свою комнату, чтобы отдохнуть. Утром, вас вызывает по телефону Екатерина Светлова: "Дрейк, пройдите ко мне. У меня есть кое-что для вас". ]];
 
    end;
 
    hideinv = true;
 
    entered = function(s)
 
        for i in #pl.party do
 
            if pl.party[i] == 'learr' then 
 
                table.remove(pl.party, i);
 
                break;
 
            end;
 
        end;
 
        leviathan_cabin_3.lock = false;
 
        remove(char_learr, where(char_learr));
 
        remove(item_statuette);
 
        remove(item_temple_disk);
 
        remove(item_legend_of_temple);
 
        remove(item_legend_of_dark_source);
 
        remove(item_legend_of_first_city);
 
        remove(item_legend_of_hunter);
 
        remove(item_navjiarr_chart_1);
 
        remove(item_navjiarr_chart_2);
 
        remove(item_navjiarr_chart_3);
 
    end;
 
    obj = {
 
@@ -1465,24 +1478,26 @@ iyh_outro_learr_temple_destroyed = room 
 
    nam = "Атлантида, док Левиафана";
 
    dsc = function(s)
 
        return [[При выходе из Левиафана, вас встречает Екатерина Светлова. Леарр выходит следом за вами и сообщает: "Я забираю-артефакты-в-Ираафаанотр". Светлова спрашивает: "Вы не разрешите нам оставить их на несколько дней для изучения?"^ Леарр отрезает: "Нет", -- и выходит из дока. Светлова вопросительно смотрит на вас и вы пересказываете ей произошедшее. Она задумчиво чешет подбородок и сообщает: "Я поговорю с Леарр, отправляйтесь в свою комнату. Думаю, мне удастся все уладить".^Вы следуете ее совету и отправляетесь к себе. Утром, она выывает вас по телефону: "Дрейк, пройдите ко мне. У меня есть кое-что для вас". ]];
 
    end;
 
    hideinv = true;
 
    entered = function(s)
 
        for i in #pl.party do
 
            if pl.party[i] == 'learr' then 
 
                table.remove(pl.party, i);
 
                break;
 
            end;
 
        end;
 
        leviathan_cabin_3.lock = false;
 
        char_learr.home = "leviathan_wardroom";
 
        remove(item_statuette);
 
        remove(item_temple_disk);
 
        remove(item_legend_of_temple);
 
        remove(item_legend_of_dark_source);
 
        remove(item_legend_of_first_city);
 
        remove(item_legend_of_hunter);
 
        remove(item_navjiarr_chart_1);
 
        remove(item_navjiarr_chart_2);
 
        remove(item_navjiarr_chart_3);
 
    end;
 
    obj = {
 
        vroom("Продолжить", "atl_luna_drake_room");
leviathan.lua
Show inline comments
 
@@ -226,24 +226,27 @@ leviathan_cabin_2 = darkroom {
 
    dsc_dark = [[В помещении темно и вы ничего не видите. ]];  
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
	};
 
    obj = {
 
        'lev_cab_table';
 
        'lev_cab_beds';
 
        'lev_cab_view';
 
    };   
 
};
 
 
leviathan_cabin_3 = darkroom {
 
    var {
 
        lock = false;
 
    };
 
	nam = "leviathan_cabin_3";
 
    has_light = function(s)
 
        return submarine_leviathan.power_on and submarine_leviathan.battery and submarine_leviathan.circuit_breaks == 0;
 
    end;   
 
	disp = "Левиафан, каюта №3";
 
	leviathan = true;
 
	dsc_lit = [[Эта каюта ничем не отличается от других, расположенных по левому борту субмарины. Под потолком расположена электрическая лампа, излучающая яркий свет. ]];
 
    dsc_halflit = [[Эта каюта ничем не отличается от других, расположенных по левому борту субмарины. Под потолком расположена электрическая лампа, однако сейчас она не горит. В слабом свете лампы вы с трудом различаете очертания дверей и предметов.  ]]; 
 
    dsc_dark = [[В помещении темно и вы ничего не видите. ]];  
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
	};      
 
@@ -320,25 +323,31 @@ leviathan_corridor = darkroom {
 
    has_light = function(s)
 
        return submarine_leviathan.power_on and submarine_leviathan.battery and submarine_leviathan.circuit_breaks == 0;
 
    end;   
 
	disp = "Левиафан, коридор";
 
	leviathan = true;
 
	dsc_lit = [[Длинный коридор со множеством дверей. По всей длине коридора на стенах расположены электрические лампы, излучающие яркий свет. ]];
 
	dsc_halflit = [[Длинный темный коридор. В слабом свете лампы вы с трудом различаете очертания предметов и множества дверей. ]];
 
	dsc_dark = [[Длинный темный коридор. в темноте вы почти ничего не видите. ]];
 
	way = {
 
		kh_vroom("В каюту капитана", "leviathan_captains_cabin", 1);
 
		kh_vroom("В каюту №1", "leviathan_cabin_1", 1);
 
		kh_vroom("В каюту №2", "leviathan_cabin_2", 1);
 
		kh_vroom("В каюту №3", "leviathan_cabin_3", 1);
 
		kh_vroom("В каюту №3", function(s)
 
            if not leviathan_cabin_3.lock then      
 
                return "leviathan_cabin_3";
 
            else
 
                return false;
 
            end;
 
        end, 1);
 
		kh_vroom("В каюту №4", "leviathan_cabin_4", 1);
 
		kh_vroom("В каюту №5", "leviathan_cabin_5", 1);
 
		kh_vroom("В кают-компанию", "leviathan_wardroom", 1);
 
		kh_vroom("В грузовой отсек", "leviathan_cargo_hold", 1);
 
		kh_vroom("В машинный отсек", "leviathan_engines", 1);
 
		kh_vroom("На нижнюю палубу", "leviathan_lower_deck", 1);
 
	};
 
	obj = {
 
		'leviathan_corridor_wiring';
 
	};
 
};
 
0 comments (0 inline, 0 general)