Changeset - 990a845dda49
[Not reviewed]
default
0 2 0
Silverwing - 7 years ago 2017-04-30 14:49:32

504
2 files changed with 1 insertions and 1 deletions:
0 comments (0 inline, 0 general)
leviathan.lua
Show inline comments
 
@@ -198,192 +198,193 @@ leviathan_cabin_1 = darkroom {
 
	nam = "leviathan_cabin_1";
 
    has_light = function(s)
 
        return submarine_leviathan.power_on and submarine_leviathan.battery;
 
    end;
 
	disp = "Левиафан, каюта №1";
 
	leviathan = true;
 
	dsc_lit = [[Эта каюта ничем не отличается от других, расположенных по левому борту субмарины. Под потолком расположена электрическая лампа, излучающая яркий свет. ]];
 
    dsc_halflit = [[Эта каюта ничем не отличается от других, расположенных по левому борту субмарины. Под потолком расположена электрическая лампа, однако сейчас она не горит. В слабом свете лампы вы с трудом различаете очертания дверей и предметов.  ]]; 
 
    dsc_dark = [[В помещении темно и вы ничего не видите. ]];  
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
	};
 
    obj = {
 
        'lev_cab_table';
 
        'lev_cab_beds';
 
        'lev_cab_view';
 
    };   
 
};
 
 
leviathan_cabin_2 = darkroom {
 
	nam = "leviathan_cabin_2";
 
    has_light = function(s)
 
        return submarine_leviathan.power_on and submarine_leviathan.battery;
 
    end;   
 
	disp = "Левиафан, каюта №2";
 
	leviathan = true;
 
	dsc_lit = [[Эта каюта ничем не отличается от других, расположенных по левому борту субмарины. Под потолком расположена электрическая лампа, излучающая яркий свет. ]];
 
    dsc_halflit = [[Эта каюта ничем не отличается от других, расположенных по левому борту субмарины. Под потолком расположена электрическая лампа, однако сейчас она не горит. В слабом свете лампы вы с трудом различаете очертания дверей и предметов.  ]]; 
 
    dsc_dark = [[В помещении темно и вы ничего не видите. ]];  
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
	};
 
    obj = {
 
        'lev_cab_table';
 
        'lev_cab_beds';
 
        'lev_cab_view';
 
    };   
 
};
 
 
leviathan_cabin_3 = darkroom {
 
	nam = "leviathan_cabin_3";
 
    has_light = function(s)
 
        return submarine_leviathan.power_on and submarine_leviathan.battery;
 
    end;   
 
	disp = "Левиафан, каюта №3";
 
	leviathan = true;
 
	dsc_lit = [[Эта каюта ничем не отличается от других, расположенных по левому борту субмарины. Под потолком расположена электрическая лампа, излучающая яркий свет. ]];
 
    dsc_halflit = [[Эта каюта ничем не отличается от других, расположенных по левому борту субмарины. Под потолком расположена электрическая лампа, однако сейчас она не горит. В слабом свете лампы вы с трудом различаете очертания дверей и предметов.  ]]; 
 
    dsc_dark = [[В помещении темно и вы ничего не видите. ]];  
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
	};      
 
    obj = {
 
        'lev_cab_table';
 
        'lev_cab_beds';
 
        'lev_cab_view';
 
    };   
 
};
 
 
leviathan_cabin_4 = darkroom {
 
	nam = "leviathan_cabin_4";
 
    has_light = function(s)
 
        return submarine_leviathan.power_on and submarine_leviathan.battery;
 
    end;   
 
	disp = "Левиафан, каюта №4";
 
	leviathan = true;
 
	dsc_lit = [[Эта каюта ничем не отличается от других, расположенных по левому борту субмарины. Под потолком расположена электрическая лампа, излучающая яркий свет. ]];
 
    dsc_halflit = [[Эта каюта ничем не отличается от других, расположенных по левому борту субмарины. Под потолком расположена электрическая лампа, однако сейчас она не горит. В слабом свете лампы вы с трудом различаете очертания дверей и предметов.  ]]; 
 
    dsc_dark = [[В помещении темно и вы ничего не видите. ]];  
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
	};
 
    obj = {
 
        'lev_cab_table';
 
        'lev_cab_beds';
 
        'lev_cab_view';
 
    };   
 
};
 
 
leviathan_cabin_5 = darkroom {
 
	nam = "leviathan_cabin_5";
 
    has_light = function(s)
 
        return submarine_leviathan.power_on and submarine_leviathan.battery;
 
    end;   
 
	disp = "Левиафан, каюта №5";
 
	leviathan = true;
 
	dsc_lit = [[Эта каюта ничем не отличается от других, расположенных по левому борту субмарины. Под потолком расположена электрическая лампа, излучающая яркий свет. ]];
 
    dsc_halflit = [[Эта каюта ничем не отличается от других, расположенных по левому борту субмарины. Под потолком расположена электрическая лампа, однако сейчас она не горит. В слабом свете лампы вы с трудом различаете очертания дверей и предметов.  ]]; 
 
    dsc_dark = [[В помещении темно и вы ничего не видите. ]];  
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
	};
 
    obj = {
 
        'lev_cab_table';
 
        'lev_cab_beds';
 
        'lev_cab_view';
 
        'item_ducttape';
 
    };
 
};
 
 
lev_cab_table = obj {
 
    nam = "lev_cab_table";
 
    dsc = [[У стены рядом с иллюминатором расположен небольшой {столик}. ]];
 
    act = "Столик пуст. ";
 
};
 
 
lev_cab_beds = obj {
 
    nam = "lev_cab_beds";
 
    dsc = [[Напротив стола расположены две {койки} одна над другой. ]];
 
    act = "Мне сейчас некогда спать. ";
 
};
 
 
lev_cab_view = obj {
 
    nam = "lev_cab_view";
 
    dsc = "Напротив входа расположен {иллюминатор}. ";
 
    act = function(s)
 
        return here().view_left;
 
    end;
 
};
 
 
leviathan_corridor = darkroom {
 
	nam = "leviathan_corridor";
 
    has_light = function(s)
 
        return submarine_leviathan.power_on and submarine_leviathan.battery;
 
    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("В каюту №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';
 
	};
 
};
 
 
leviathan_cargo_hold = darkroom {
 
	nam = "leviathan_cargo_hold";
 
    has_light = function(s)
 
        return submarine_leviathan.power_on and submarine_leviathan.battery;
 
    end;   
 
	disp = "Левиафан, грузовой отсек";
 
	leviathan = true;
 
	dsc_lit = function(s)
 
        if (submarine_leviathan.refit) then
 
            return [[Грузовой отсек Левиафана заполнен ящиками с припасами и инструментами. Яркий свет исходит из электрических ламп, установленных на потолке. ]];
 
        else
 
            return [[Грузовой отсек Левиафана практически пуст, не считая обломков, очевидно, оставшихся здесь с момента создания субмарины. Из электрических ламп, установленных на потолке, исходит яркий свет. ]];
 
        end;
 
    end;
 
	dsc_halflit = [[Грузовой отсек Левиафана погружен в кромешный мрак. В свете лампы вы видите, что отсек практически пуст, не считая обломков, очевидно, оставшихся здесь с момента создания субмарины. ]];
 
	dsc_dark = [[Грузовой отсек Левиафана погружен в кромешный мрак. ]];
 
	way = {
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
	};
 
	obj = {
 
		"leviathan_cargo_wiring";
 
	};
 
};
 
 
leviathan_wardroom = darkroom {
 
	nam = "leviathan_wardroom";
 
    has_light = function(s)
 
        return submarine_leviathan.power_on and submarine_leviathan.battery;
 
    end;   
 
	disp = "Левиафан, кают-компания";
 
	leviathan = true;
 
	dsc_lit = [[В центре просторной кают-компании Левиафана укреплен массивный деревянный стол. Электрические лампы, укрепленные на потолке над столом и на стенах излучают яркий свет. ]];
 
	dsc_halflit = [[В слабом свете лампы вы с трудом различаете очертания предметов. Судя по всему, вы находитесь в кают-компании. В центре установлен массивный стол, вокруг которого стоят несколько стульев. ]];
 
	dsc_dark = [[Кают-компания погружена во мрак и вы совсем ничего не видите. ]];
 
	way = {
 
		kh_vroom("В рубку", "leviathan_wheelhouse", 1);
 
		kh_vroom("В шлюз", "leviathan_airlock", 1);
 
		kh_vroom("В коридор", "leviathan_corridor", 1);
 
		kh_vroom("В грузовой отсек", "leviathan_cargo_hold", 1):disable();
 
		kh_vroom("В машинный отсек", "leviathan_engines", 1):disable();
 
	};
 
	obj = {
 
		"phone_wardroom";
 
		"leviathan_wardroom_wiring";
 
	};
 
};
warehouse32.lua
Show inline comments
 
@@ -162,193 +162,192 @@ w32_mgr = darkroom {
 
	]];
 
	entered = function(s)
 
		warehouse_32.pos = "54";
 
	end;
 
	way = {
 
		kh_vroom("Выйти", function(s)
 
			print(w32_mgr.key_inplace);
 
			print(w32_mgr.book_inplace);
 
			if (not w32_mgr.key_inplace or not w32_mgr.book_inplace) then
 
				pr("Стоит вернуть все как было. ");
 
				return false;
 
			elseif (pl.has_light) then
 
				pr("Если я не погашу лампу, меня заметят. ");
 
				return false;
 
			else
 
				return "warehouse_32"
 
			end;
 
		end, 2);
 
	};
 
	obj = {
 
		'w32_mgr_table',
 
		'w32_mgr_bookcase'
 
	};
 
};
 
 
w32_journal = obj {
 
	nam = 'w32_journal';
 
	dsc = [[
 
		В ящике стола лежит {учетная книга}, в которую занесено все содержимое склада. 
 
	]];
 
	act = function(s)
 
		local list = [[Среди сотен записей вы натыкаетесь на несколько, отмеченных как "Westhaven":]];
 
		for i = 1, #w32_shelf_input.items do
 
			list = list .. "^".. stead.ref(w32_shelf_input.items[i].n).disp .. " " .. w32_shelf_input.items[i].shelf .. "-" .. w32_shelf_input.items[i].position;
 
		end;
 
		
 
		return list;
 
	end;
 
};
 
 
w32_mgr_table = obj {
 
    var {
 
        open = false;
 
        locked = true;
 
    };
 
	seen_level = 1;
 
	nam = 'w32_mgr_table';
 
	dsc = function(s)
 
		if (s.open) then
 
			return [[
 
				В центре комнаты расположен большой письменный стол. {Ящик} стола выдвинут.
 
			]];
 
		else
 
			return [[
 
				В центре комнаты расположен большой письменный стол. В столе имеется {ящик}.
 
			]];
 
		end;
 
	end;
 
	act = function(s)
 
		if (not s.locked) then 
 
			if (s.open) then
 
				s.open = false;
 
				w32_journal:disable();
 
				return [[
 
					Вы задвигаете ящик. 
 
				]];
 
			else
 
				s.open = true;
 
				w32_journal:enable();
 
				return [[
 
					Вы выдвигаете ящик. 
 
				]];
 
			end;
 
		else 
 
			return [[
 
				Ящик заперт. Вам придется найти ключ. 
 
			]];
 
		end;
 
	end;
 
	used = function(s, o)
 
		if (o == item_w32_key) then
 
			if (s.locked) then
 
				w32_mgr.book_inplace = false;
 
				s.locked = false;
 
				return "Вы отпираете ящик. ";
 
			else
 
				w32_journal:disable();
 
				w32_mgr.book_inplace = true;
 
				s.open = false;
 
				s.locked = true;
 
				return "Вы запираете ящик. ";
 
			end;
 
		end;
 
	end;
 
	obj = {
 
		w32_journal:disable();
 
		item_ducttape;
 
	};
 
};
 
 
w32_mgr_bookcase = obj {
 
	seen_level = 1;
 
	nam = 'w32_mgr_bookcase';
 
	dsc = [[
 
		Одну из стен практически целиком занимает {шкаф}, заполненный книгами и записями. 
 
	]];
 
	act = function(s)
 
		item_w32_key:enable();
 
		return "Вы замечаете спрятанный за книгами ключ. ";
 
	end;
 
	used = function(s, o)
 
		if (o == item_w32_key) then
 
			w32_mgr.key_inplace = true;
 
			remove(item_w32_key, pl);
 
			put(item_w32_key, s);
 
			return "Вы возвращает ключик на место";
 
		end;
 
	end;
 
	obj = {
 
		item_w32_key:disable();
 
	};
 
};
 
 
warehouse_32_definitions = {
 
	---line E
 
	["01"] = { name="у задней двери", dsc=[[
 
		К югу от вас расположена задняя дверь склада. 
 
	]], e1 = "11", ex3 = "w32_backdoor"};
 
	["02"] = { name="тупик", dsc=[[
 
		
 
	]], e1 = "12", corner = true};
 
	["03"] = { name="тупик", dsc=[[
 
		
 
	]], e1 = "13", corner = true};
 
	["04"] = { name="тупик", dsc=[[
 
		
 
	]], e1 = "14", corner = true};
 
	---line DE
 
	["10"] = { name="тупик", dsc=[[
 
		
 
	]], e2 = "11", corner = true};
 
	["11"] = { name="секция D1", dsc=[[
 
		
 
	]], e1 = "21", e2="12", e3="01", e4="10", sector = "D1"};
 
	["12"] = { name="секция D2", dsc=[[
 
		
 
	]], e1 = "22", e2="13", e3="02", e4="11", sector = "D2"};
 
	["13"] = { name="секция D3", dsc=[[
 
		
 
	]], e1 = "23", e2="14", e3="03", e4="12", sector = "D3"};
 
	["14"] = { name="секция D4", dsc=[[
 
		
 
	]], e1 = "24", e2="15", e3="04", e4="13", sector = "D4"};
 
	["15"] = { name="тупик", dsc=[[
 
		
 
	]], e4 = "14", corner = true};
 
	---line CD
 
	["20"] = { name="тупик", dsc=[[
 
		
 
	]], e2 = "21", corner = true};
 
	["21"] = { name="секция C1", dsc=[[
 
		
 
	]], e1 = "31", e2="22", e3="11", e4="20", sector = "C1"};
 
	["22"] = { name="секция C2", dsc=[[
 
		
 
	]], e1 = "32", e2="23", e3="12", e4="21", sector = "C2"};
 
	["23"] = { name="секция C3", dsc=[[
 
		
 
	]], e1 = "33", e2="24", e3="13", e4="22", sector = "C3"};
 
	["24"] = { name="секция C4", dsc=[[
 
		
 
	]], e1 = "34", e2="25", e3="14", e4="23", sector = "C4"};
 
	["25"] = { name="тупик", dsc=[[
 
		
 
	]], e4 = "24", corner = true};
 
	---line BC
 
	["30"] = { name="тупик", dsc=[[
 
		
 
	]], e2 = "31", corner = true};
 
	["31"] = { name="секция B1", dsc=[[
 
		
 
	]], e1 = "41", e2="32", e3="21", e4="30", sector = "B1"};
 
	["32"] = { name="секция B2", dsc=[[
 
		
 
	]], e1 = "42", e2="33", e3="22", e4="31", sector = "B2"};
 
	["33"] = { name="секция B3", dsc=[[
 
		
 
	]], e1 = "43", e2="34", e3="23", e4="32", sector = "B3"};
 
	["34"] = { name="секция B4", dsc=[[
 
		
 
	]], e1 = "44", e2="35", e3="24", e4="33", sector = "B4"};
 
	["35"] = { name="тупик", dsc=[[
 
		
0 comments (0 inline, 0 general)