Changeset - dd1707453c3e
[Not reviewed]
default
0 3 0
Silverwing - 8 years ago 2015-10-18 18:32:18

Some more slowgress
3 files changed with 113 insertions and 12 deletions:
0 comments (0 inline, 0 general)
items.lua
Show inline comments
 
@@ -123,6 +123,8 @@ item_umbrella = obj {
 
item_lamp = obj {
 
	nam = "lamp";
 
	disp = "Лампа";
 
	dsc = "На столе стоит {керосиновая лампа}. ";
 
	tak = "Вы забираете лампу с собой. ";
 
	inv = function(s)
 
		if (pl.has_light) then
 
			pl.has_light = false;
london.lua
Show inline comments
 
@@ -219,7 +219,7 @@ hotel_street = room {
 
	]];
 
	way = {
 
		vroom("В гостиницу", "hotel_hall");
 
		vroom("В переулок", "hotel_alley");
 
		--vroom("В переулок", "hotel_alley");
 
		--vroom("В пивную лавку", "ginshop");
 
	};
 
};
 
@@ -235,8 +235,8 @@ hotel_hall = room {
 
	};
 
	way = {
 
		vroom("На улицу", "hotel_street");
 
		vroom("К номерам на первом этаже", "hotel_corridor_1");
 
		vroom("на второй этаж", "hotel_corridor_2");
 
		vroom("К номерам на первом этаже", "hotel_corridor_1"):disable();
 
		vroom("На второй этаж", "hotel_corridor_2"):disable();
 
	};
 
};
 
 
@@ -260,13 +260,22 @@ hotel_corridor_2 = room {
 
	]];
 
	way = {
 
		vroom("В холл", "hotel_hall");
 
		vroom("В комнату №7", "hotel_room_7"):disable();
 
		vroom("В комнату №7", "hotel_room_7");
 
	};
 
	enter = function(s)
 
		print("entered corridor");
 
		if (s.room_visited and not s.met_starlight) then
 
			print("condition met");
 
			s.met_starlight = true;
 
			walkin('starlight_first_dlg');
 
		end;
 
	end;
 
	left = function(s)
 
		if (s.room_visited) then
 
			remove("char_starlight_corridor", where("char_starlight_corridor"));
 
			lifeon("char_starlight_corridor");
 
		end;
 
	end;
 
};
 
 
hotel_room_2 = room {
 
@@ -275,6 +284,12 @@ hotel_room_2 = room {
 
	dsc = [[
 
		Вы находитесь в комнате Джозефа Старлайта. На столике у окна стоит зажженная лампа, рядом брошена стопка газет. На кровати в углу валяется шляпа хозяина. Окно распахнуто, впуская внутрь прохладный и влажный воздух, а также шум городской суеты.
 
	]];
 
	obj = {
 
		"char_starlight_room"
 
	};
 
	way = {
 
		vroom("В коридор", "hotel_corridor_1");
 
	};
 
};
 
 
hotel_room_7 = room {
 
@@ -289,9 +304,9 @@ hotel_room_7 = room {
 
		'item_lamp'
 
	};
 
	way = {
 
		vroom("Спуститься вниз", "hotel_hall");
 
		vroom("В коридор", "hotel_corridor_2");
 
	};
 
	exit = function(s)
 
	entered = function(s)
 
		hotel_corridor_2.room_visited = true;
 
	end;
 
};
 
@@ -390,10 +405,16 @@ hotel_concierge_dlg = dlg {
 
	]];
 
	phr = {
 
		{1, "Да, мне нужна комната на неделю. ", function()
 
			hotel_concierge.paid = true;
 
			path("В номер", hotel_hall):enable();
 
			back();
 
			return "Вы оплачиваете проживание и консьерж дает вам ключ от вашего номера.";
 
			if pl:pay(100) then
 
				hotel_concierge.paid = true;
 
				path("К номерам на первом этаже", hotel_hall):enable();
 
				path("На второй этаж", hotel_hall):enable();
 
				back();
 
				return "Вы оплачиваете проживание и консьерж дает вам ключ от вашего номера.";
 
			else
 
				return "Приходите, когда деньги будут! ";
 
			end;
 
			
 
		end;};
 
		{255, always = true, "не сейчас", function()
 
			back();
 
@@ -406,9 +427,79 @@ starlight_first_dlg = dlg {
 
	nam = "starlight_first_dlg";
 
	disp = "Джозеф Старлайт";
 
	entered = [[
 
		Выйдя из своей комнаты, вы замечаете поднимающегося человека 
 
		Выйдя из своей комнаты, вы замечаете поднимающегося по лестнице человека. Это мужчина лет сорокапяти-пятидесяти. Он одет в помятый темносерый костюм, на носу - маленькие очки в простой оправе. В левой руке он держит какую-то газету, а правой спешно ощупывает карманы в поисках чего-то. Заметив вас он улыбается и спрашивает: "Господин Дрейк?"
 
	]];
 
	left = function(s)
 
		path('В комнату №2', hotel_corridor_1):enable();
 
		put(hotel_corridor_2, "char_starlight_corridor");
 
		lifeon("char_starlight_corridor");
 
	end;
 
	phr = {
 
		
 
		{ "Мы встречались?", "Скорее всего нет. Вы случайно не родственник Уильяма Дрейка? Название Вестхейвен Трансоушен вам о чем-то говорит?", code [[ pstart('have_we_met') ]]};
 
		{ "Кто вы?", "Джозеф Старлайт, адвокат. Название Вестхейвен Трансоушен вам о чем-то говорит? ", code [[ pstart('who_are_you') ]]};
 
		{ "Да, я Дэвид Дрейк. ", "Сын Уильяма? Название Вестхейвен Трансоушен вам о чем-то говорит? ", code [[ pstart('i_am_drake') ]]};
 
		{ "Простите, я спешу. ", "Простите. Если хотите поговорить о Вестхейвен Трансоушен, зайдите ко мне в комнату 2 как-нибудь. ", code [[ back(); ]]};
 
		{tag = "have_we_met"};
 
		{ "Я сын Уильяма. Вы знаете что произошло?", "Крайне мало, то было, без сомнения, самое запутанное мое дело. Если хотите поговорить - заходите в комнату 2. ", code [[ back(); ]]};
 
		{ "Кто вы?", "Джозеф Старлайт, адвокат, я занимался исчезновением Дрейка, а позже банкротством его компании. ", code [[ pstart('who_are_you') ]]};
 
		{tag = "who_are_you"};
 
		{ "Вы знаете что произошло?", "Крайне мало, то было, без сомнения, самое запутанное мое дело. Если хотите поговорить - заходите в комнату 2. ", code [[ back(); ]]};
 
		{tag = "i_am_drake"};
 
		{ "Да все верно. Это название компании моего отца. Вы знаете что произошло?", "Крайне мало, то было, без сомнения, самое запутанное мое дело. Если хотите поговорить - заходите в комнату 2. ", code [[ back(); ]]};
 
	};
 
};
 
 
char_starlight_corridor = obj {
 
	nam = "char_starlight_corridor";
 
	dsc = function(s)
 
		if (char_starlight_room.name_known) then
 
			return [[
 
				{Джозеф Старлайт} продолжает ощупывать карманы, словно ищет что-то.
 
			]];
 
		else
 
			return [[
 
				{Человек}, с которым вы только что говорили продолжает ощупывать карманы, словно ищет что-то. 
 
			]];
 
		end;
 
	end;
 
	act = function(s)
 
		remove(s, where(s));
 
		lifeoff(s);
 
		return [[
 
			Раздраженно махнув рукой мужчина быстрым шагом спускается вниз по лестнице. 
 
		]];
 
	end;
 
	life = function(s)
 
		if (rnd(5) > 4) then
 
			remove(s, where(s));
 
			lifeoff(s);
 
			return [[
 
				Раздраженно махнув рукой мужчина быстрым шагом спускается вниз по лестнице. 
 
			]];
 
		end;
 
	end;
 
};
 
 
char_starlight_room = obj {
 
	nam = "char_starlight_room";
 
	name_known = false;
 
	dsc = function(s)
 
		if (s.name_known) then
 
			return [[
 
				{Джозеф Старлайт} сидит за столом и делает какие-то записи в блокноте. 
 
			]];
 
		else
 
			return [[
 
				За столом сидит {человек}, тот самый, кто просил вас зайти, и делает какие-то записи в блокноте. 
 
			]];
 
		end;
 
	end;
 
	act = function(s)
 
		s.name_known = true;
 
		walkin(starlight_dlg);
 
	end;
 
};
 
 
starlight_dlg = dlg {
 
	nam = "starlight_dlg"
 
};
 
\ No newline at end of file
main.lua
Show inline comments
 
@@ -125,6 +125,14 @@ pl = player {
 
	party = {--[["learr", "radcliffe", "phaetlarr", "wright"]]};
 
	companion = nil;
 
	money = 200;
 
	pay = function(s, c)
 
		if (s.money >= c) then
 
			s.money = s.money - c;
 
			return true;
 
		else
 
			return false;
 
		end;
 
	end;
 
};
 
 
intro = room {
0 comments (0 inline, 0 general)